@360crewing/ui 0.1.3

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 (106) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/LICENSE +21 -0
  3. package/README.md +46 -0
  4. package/dist/components/Avatar.d.ts +20 -0
  5. package/dist/components/Avatar.js +17 -0
  6. package/dist/components/Badge.d.ts +19 -0
  7. package/dist/components/Badge.js +10 -0
  8. package/dist/components/Breadcrumbs.d.ts +19 -0
  9. package/dist/components/Breadcrumbs.js +12 -0
  10. package/dist/components/Button.d.ts +38 -0
  11. package/dist/components/Button.js +50 -0
  12. package/dist/components/Card.d.ts +12 -0
  13. package/dist/components/Card.js +6 -0
  14. package/dist/components/Checkbox.d.ts +14 -0
  15. package/dist/components/Checkbox.js +9 -0
  16. package/dist/components/CheckboxField.d.ts +16 -0
  17. package/dist/components/CheckboxField.js +17 -0
  18. package/dist/components/CollapsibleFields.d.ts +9 -0
  19. package/dist/components/CollapsibleFields.js +8 -0
  20. package/dist/components/ContentLoader.d.ts +8 -0
  21. package/dist/components/ContentLoader.js +14 -0
  22. package/dist/components/Delimeter.d.ts +3 -0
  23. package/dist/components/Delimeter.js +6 -0
  24. package/dist/components/DetailItem.d.ts +8 -0
  25. package/dist/components/DetailItem.js +6 -0
  26. package/dist/components/DropdownButton.d.ts +15 -0
  27. package/dist/components/DropdownButton.js +29 -0
  28. package/dist/components/FileUpload.d.ts +32 -0
  29. package/dist/components/FileUpload.js +75 -0
  30. package/dist/components/FormActionButtons.d.ts +18 -0
  31. package/dist/components/FormActionButtons.js +10 -0
  32. package/dist/components/Icon.d.ts +20 -0
  33. package/dist/components/Icon.js +11 -0
  34. package/dist/components/IconButton.d.ts +14 -0
  35. package/dist/components/IconButton.js +9 -0
  36. package/dist/components/InformationPanel.d.ts +14 -0
  37. package/dist/components/InformationPanel.js +6 -0
  38. package/dist/components/LayoutBlock.d.ts +6 -0
  39. package/dist/components/LayoutBlock.js +5 -0
  40. package/dist/components/Page.d.ts +12 -0
  41. package/dist/components/Page.js +6 -0
  42. package/dist/components/Pagination.d.ts +19 -0
  43. package/dist/components/Pagination.js +35 -0
  44. package/dist/components/Popover.d.ts +27 -0
  45. package/dist/components/Popover.js +130 -0
  46. package/dist/components/SearchInput.d.ts +27 -0
  47. package/dist/components/SearchInput.js +44 -0
  48. package/dist/components/ShadowedBlock.d.ts +9 -0
  49. package/dist/components/ShadowedBlock.js +6 -0
  50. package/dist/components/SidebarMenu.d.ts +27 -0
  51. package/dist/components/SidebarMenu.js +16 -0
  52. package/dist/components/SkeletonLoader.d.ts +4 -0
  53. package/dist/components/SkeletonLoader.js +7 -0
  54. package/dist/components/StatusBadge.d.ts +20 -0
  55. package/dist/components/StatusBadge.js +11 -0
  56. package/dist/components/Table.d.ts +39 -0
  57. package/dist/components/Table.js +24 -0
  58. package/dist/components/Tabs.d.ts +34 -0
  59. package/dist/components/Tabs.js +95 -0
  60. package/dist/components/Tag.d.ts +20 -0
  61. package/dist/components/Tag.js +11 -0
  62. package/dist/components/TextField.d.ts +45 -0
  63. package/dist/components/TextField.js +53 -0
  64. package/dist/components/TextareaField.d.ts +18 -0
  65. package/dist/components/TextareaField.js +11 -0
  66. package/dist/components/Toggle.d.ts +10 -0
  67. package/dist/components/Toggle.js +9 -0
  68. package/dist/components/ToggleField.d.ts +16 -0
  69. package/dist/components/ToggleField.js +17 -0
  70. package/dist/components/Tooltip.d.ts +25 -0
  71. package/dist/components/Tooltip.js +128 -0
  72. package/dist/index.d.ts +64 -0
  73. package/dist/index.js +35 -0
  74. package/dist/styles/Avatar.css +47 -0
  75. package/dist/styles/Badge.css +172 -0
  76. package/dist/styles/Breadcrumbs.css +54 -0
  77. package/dist/styles/Button.css +416 -0
  78. package/dist/styles/Card.css +34 -0
  79. package/dist/styles/Checkbox.css +102 -0
  80. package/dist/styles/CheckboxField.css +75 -0
  81. package/dist/styles/CollapsibleFields.css +53 -0
  82. package/dist/styles/Delimeter.css +7 -0
  83. package/dist/styles/DetailItem.css +18 -0
  84. package/dist/styles/DropdownButton.css +82 -0
  85. package/dist/styles/Error.css +14 -0
  86. package/dist/styles/FileUpload.css +113 -0
  87. package/dist/styles/Icon.css +12 -0
  88. package/dist/styles/IconButton.css +68 -0
  89. package/dist/styles/InformationPanel.css +84 -0
  90. package/dist/styles/Page.css +46 -0
  91. package/dist/styles/Pagination.css +150 -0
  92. package/dist/styles/Popover.css +28 -0
  93. package/dist/styles/ShadowedBlock.css +13 -0
  94. package/dist/styles/SidebarMenu.css +151 -0
  95. package/dist/styles/StatusBadge.css +63 -0
  96. package/dist/styles/Table.css +126 -0
  97. package/dist/styles/Tabs.css +193 -0
  98. package/dist/styles/Tag.css +110 -0
  99. package/dist/styles/TextField.css +276 -0
  100. package/dist/styles/Toggle.css +105 -0
  101. package/dist/styles/ToggleField.css +73 -0
  102. package/dist/styles/Tooltip.css +30 -0
  103. package/dist/styles/tokens.css +361 -0
  104. package/dist/styles/typography.css +169 -0
  105. package/dist/styles.css +33 -0
  106. package/package.json +50 -0
@@ -0,0 +1,172 @@
1
+ /* Pill badge (Untitled UI pill-color style, plain CSS). */
2
+
3
+ .badge {
4
+ display: inline-flex;
5
+ align-items: center;
6
+ width: max-content;
7
+ max-width: 100%;
8
+ white-space: nowrap;
9
+ border-radius: 9999px;
10
+ font-weight: 500;
11
+ box-sizing: border-box;
12
+ line-height: 1.25;
13
+
14
+ &.badge--sm {
15
+ padding: 0.125rem 0.5rem;
16
+ font-size: 0.75rem;
17
+ }
18
+
19
+ &.badge--md {
20
+ padding: 0.125rem 0.625rem;
21
+ font-size: 0.875rem;
22
+ }
23
+
24
+ &.badge--lg {
25
+ padding: 0.25rem 0.75rem;
26
+ font-size: 0.875rem;
27
+ }
28
+
29
+ &.badge--with-dot {
30
+ &.badge--sm {
31
+ gap: 0.25rem;
32
+ padding: 0.125rem 0.5rem 0.125rem 0.375rem;
33
+ }
34
+
35
+ &.badge--md {
36
+ gap: 0.375rem;
37
+ padding: 0.125rem 0.625rem 0.125rem 0.5rem;
38
+ }
39
+
40
+ &.badge--lg {
41
+ gap: 0.375rem;
42
+ padding: 0.25rem 0.75rem 0.25rem 0.625rem;
43
+ }
44
+ }
45
+
46
+ .badge__dot {
47
+ flex-shrink: 0;
48
+ width: 0.375rem;
49
+ height: 0.375rem;
50
+ border-radius: 50%;
51
+ }
52
+
53
+ &.badge--gray {
54
+ background-color: #fafafa;
55
+ color: #414651;
56
+ box-shadow: inset 0 0 0 1px #e9eaeb;
57
+
58
+ .badge__dot {
59
+ background-color: #717680;
60
+ }
61
+ }
62
+
63
+ &.badge--brand {
64
+ background-color: #ecf3fe;
65
+ color: #293896;
66
+ box-shadow: inset 0 0 0 1px #c7d5f6;
67
+
68
+ .badge__dot {
69
+ background-color: #293896;
70
+ }
71
+ }
72
+
73
+ &.badge--error {
74
+ background-color: #fef2f2;
75
+ color: #b42318;
76
+ box-shadow: inset 0 0 0 1px #fecdca;
77
+
78
+ .badge__dot {
79
+ background-color: #f04438;
80
+ }
81
+ }
82
+
83
+ &.badge--warning {
84
+ background-color: #fffaeb;
85
+ color: #b54708;
86
+ box-shadow: inset 0 0 0 1px #fedf89;
87
+
88
+ .badge__dot {
89
+ background-color: #f79009;
90
+ }
91
+ }
92
+
93
+ &.badge--success {
94
+ background-color: #ecfdf3;
95
+ color: #067647;
96
+ box-shadow: inset 0 0 0 1px #abefc6;
97
+
98
+ .badge__dot {
99
+ background-color: #17b26a;
100
+ }
101
+ }
102
+
103
+ &.badge--slate {
104
+ background-color: #f8fafc;
105
+ color: #1e293b;
106
+ box-shadow: inset 0 0 0 1px #e2e8f0;
107
+
108
+ .badge__dot {
109
+ background-color: #64748b;
110
+ }
111
+ }
112
+
113
+ &.badge--sky {
114
+ background-color: #f0f9ff;
115
+ color: #026aa2;
116
+ box-shadow: inset 0 0 0 1px #bae6fd;
117
+
118
+ .badge__dot {
119
+ background-color: #0ba5ec;
120
+ }
121
+ }
122
+
123
+ &.badge--blue {
124
+ background-color: #eff6ff;
125
+ color: #1849a9;
126
+ box-shadow: inset 0 0 0 1px #bddcff;
127
+
128
+ .badge__dot {
129
+ background-color: #3585f5;
130
+ }
131
+ }
132
+
133
+ &.badge--indigo {
134
+ background-color: #eef2ff;
135
+ color: #372aac;
136
+ box-shadow: inset 0 0 0 1px #c7d7fe;
137
+
138
+ .badge__dot {
139
+ background-color: #4942d8;
140
+ }
141
+ }
142
+
143
+ &.badge--purple {
144
+ background-color: #f4ebff;
145
+ color: #6b21a8;
146
+ box-shadow: inset 0 0 0 1px #dcd0fe;
147
+
148
+ .badge__dot {
149
+ background-color: #7f56d9;
150
+ }
151
+ }
152
+
153
+ &.badge--pink {
154
+ background-color: #fdf2fa;
155
+ color: #9e165f;
156
+ box-shadow: inset 0 0 0 1px #fccee8;
157
+
158
+ .badge__dot {
159
+ background-color: #ee46bc;
160
+ }
161
+ }
162
+
163
+ &.badge--orange {
164
+ background-color: #fff7ed;
165
+ color: #bf3503;
166
+ box-shadow: inset 0 0 0 1px #fcd9bd;
167
+
168
+ .badge__dot {
169
+ background-color: #ef6820;
170
+ }
171
+ }
172
+ }
@@ -0,0 +1,54 @@
1
+ /* =====================================================================
2
+ * DS Breadcrumbs
3
+ * Mirrors Figma `Breadcrumbs`. Last item = text-primary semibold,
4
+ * others = text-secondary regular links, separator = text-secondary.
5
+ * ===================================================================== */
6
+
7
+ .ds-breadcrumbs {
8
+ font-family: var(--font-family-base);
9
+ /* Breadcrumb-specific 12px (Figma); do NOT use shared --font-size-md (13px, used elsewhere) */
10
+ font-size: 12px;
11
+ line-height: 1.3;
12
+ }
13
+
14
+ .ds-breadcrumbs__list {
15
+ display: flex;
16
+ flex-wrap: wrap;
17
+ gap: var(--space-4);
18
+ margin: 0;
19
+ padding: 0;
20
+ list-style: none;
21
+ }
22
+
23
+ .ds-breadcrumbs__item {
24
+ display: inline-flex;
25
+ align-items: center;
26
+ gap: var(--space-4);
27
+ }
28
+
29
+ .ds-breadcrumbs__link {
30
+ display: inline-flex;
31
+ align-items: center;
32
+ background: none;
33
+ border: none;
34
+ padding: 0;
35
+ /* Breadcrumb grey per Figma (#697984), distinct from --text-secondary #90A4AE */
36
+ color: #697984;
37
+ text-decoration: none;
38
+ cursor: pointer;
39
+ font: inherit;
40
+ }
41
+
42
+ .ds-breadcrumbs__link:hover {
43
+ color: var(--text-brand);
44
+ }
45
+
46
+ .ds-breadcrumbs__current {
47
+ color: var(--text-primary);
48
+ font-weight: var(--font-weight-semibold);
49
+ }
50
+
51
+ .ds-breadcrumbs__separator {
52
+ color: #697984;
53
+ user-select: none;
54
+ }
@@ -0,0 +1,416 @@
1
+ .button {
2
+ min-width: 100px;
3
+ height: 20px;
4
+ display: flex;
5
+ justify-content: center;
6
+ align-items: center;
7
+ background-color: transparent;
8
+ border: 1px solid black;
9
+ border-radius: 5px;
10
+ padding: 5px;
11
+
12
+ &.red-button {
13
+ background-color: var(--red-color) !important;
14
+ color: white !important;
15
+ }
16
+ }
17
+
18
+ /* =====================================================================
19
+ * DS Button — canonical design-system Button class set.
20
+ * Activate via `variant`/`size` props on <Button />. The legacy
21
+ * `.default-button` / `.secondary-button` / `.inactive-button` classes
22
+ * stay below for callers still passing `className="..."` directly.
23
+ * Variants: primary | secondary | tertiary | edit | additional | danger | ghost
24
+ * Sizes: sm (28) | md (36) | lg (44)
25
+ * ===================================================================== */
26
+
27
+ .ds-button {
28
+ display: inline-flex;
29
+ align-items: center;
30
+ justify-content: center;
31
+ gap: var(--space-4);
32
+ border: 1px solid transparent;
33
+ border-radius: var(--radius-3xl);
34
+ font-family: var(--font-family-base);
35
+ font-weight: var(--font-weight-semibold);
36
+ font-size: var(--font-size-sm);
37
+ line-height: 1;
38
+ cursor: pointer;
39
+ user-select: none;
40
+ white-space: nowrap;
41
+ text-decoration: none;
42
+ transition:
43
+ background-color var(--duration-fast) var(--easing-standard),
44
+ border-color var(--duration-fast) var(--easing-standard),
45
+ color var(--duration-fast) var(--easing-standard),
46
+ box-shadow var(--duration-fast) var(--easing-standard);
47
+ }
48
+
49
+ .ds-button:focus-visible {
50
+ outline: none;
51
+ box-shadow: var(--shadow-focus-brand);
52
+ }
53
+
54
+ .ds-button[disabled],
55
+ .ds-button.is-disabled {
56
+ cursor: not-allowed;
57
+ opacity: 0.6;
58
+ pointer-events: none;
59
+ }
60
+
61
+ .ds-button.is-loading {
62
+ pointer-events: none;
63
+ position: relative;
64
+ color: transparent !important;
65
+ }
66
+
67
+ /* Sizes */
68
+ .ds-button--sm {
69
+ height: var(--control-height-sm);
70
+ padding: 0 var(--space-8);
71
+ font-size: var(--font-size-sm);
72
+ }
73
+ .ds-button--md {
74
+ height: var(--control-height-md);
75
+ padding: 0 var(--space-12);
76
+ font-size: var(--font-size-sm);
77
+ }
78
+ .ds-button--lg {
79
+ height: var(--control-height-lg);
80
+ padding: 0 var(--space-16);
81
+ font-size: var(--font-size-base);
82
+ }
83
+
84
+ /* On touch primary input, bump small buttons to WCAG 44px minimum. */
85
+ @media (pointer: coarse) {
86
+ .ds-button--sm,
87
+ .ds-button--md {
88
+ min-height: var(--touch-target-min);
89
+ }
90
+ }
91
+
92
+ .ds-button--full-width {
93
+ width: 100%;
94
+ }
95
+
96
+ /* Variant: primary (filled brand) */
97
+ .ds-button--primary {
98
+ background-color: var(--surface-brand);
99
+ color: var(--text-tertiary);
100
+ border-color: var(--surface-brand);
101
+ }
102
+ .ds-button--primary:hover {
103
+ background-color: var(--surface-brand-light);
104
+ border-color: var(--surface-brand-light);
105
+ }
106
+ .ds-button--primary:active {
107
+ background-color: var(--surface-brand-dark);
108
+ border-color: var(--surface-brand-dark);
109
+ }
110
+
111
+ /* Variant: secondary (light brand tint) */
112
+ .ds-button--secondary {
113
+ background-color: var(--surface-brand-minimal);
114
+ color: var(--text-brand);
115
+ border-color: transparent;
116
+ }
117
+ .ds-button--secondary:hover {
118
+ background-color: var(--color-indigo-200);
119
+ }
120
+ .ds-button--secondary:active {
121
+ background-color: var(--color-indigo-300);
122
+ color: var(--color-indigo-800);
123
+ }
124
+
125
+ /* Variant: tertiary (text-only link button) */
126
+ .ds-button--tertiary {
127
+ background-color: transparent;
128
+ color: var(--text-brand);
129
+ border-color: transparent;
130
+ padding-left: var(--space-2);
131
+ padding-right: var(--space-2);
132
+ }
133
+ .ds-button--tertiary:hover {
134
+ color: var(--color-indigo-500);
135
+ text-decoration: underline;
136
+ text-underline-offset: 2px;
137
+ }
138
+ .ds-button--tertiary:active {
139
+ color: var(--color-indigo-800);
140
+ }
141
+
142
+ /* Variant: edit (white with brand border, inline in tables/rows) */
143
+ .ds-button--edit {
144
+ background-color: var(--surface-primary);
145
+ color: var(--text-brand);
146
+ border-color: var(--border-brand);
147
+ }
148
+ .ds-button--edit:hover {
149
+ background-color: var(--surface-brand-minimal);
150
+ }
151
+ .ds-button--edit:active {
152
+ background-color: var(--color-indigo-200);
153
+ }
154
+
155
+ /* Variant: additional (light pill with leading + icon) */
156
+ .ds-button--additional {
157
+ background-color: var(--surface-brand-minimal);
158
+ color: var(--text-brand);
159
+ border-color: transparent;
160
+ padding-left: var(--space-8);
161
+ padding-right: var(--space-12);
162
+ }
163
+ .ds-button--additional:hover {
164
+ border-color: var(--border-brand);
165
+ }
166
+
167
+ /* Variant: danger (destructive) */
168
+ .ds-button--danger {
169
+ background-color: var(--surface-error);
170
+ color: var(--text-tertiary);
171
+ border-color: var(--surface-error);
172
+ }
173
+ .ds-button--danger:hover {
174
+ background-color: var(--color-red-700);
175
+ border-color: var(--color-red-700);
176
+ }
177
+ .ds-button--danger:focus-visible {
178
+ box-shadow: var(--shadow-focus-error);
179
+ }
180
+
181
+ /* Variant: ghost (transparent neutral, icon-button style) */
182
+ .ds-button--ghost {
183
+ background-color: transparent;
184
+ color: var(--text-primary);
185
+ border-color: transparent;
186
+ }
187
+ .ds-button--ghost:hover {
188
+ background-color: var(--surface-secondary-light);
189
+ }
190
+ .ds-button--ghost:active {
191
+ background-color: var(--surface-secondary);
192
+ }
193
+
194
+ /* Icon slots — kept vertically centered, sized to current font size. */
195
+ .ds-button__icon {
196
+ display: inline-flex;
197
+ flex: 0 0 auto;
198
+ width: 1em;
199
+ height: 1em;
200
+ align-items: center;
201
+ justify-content: center;
202
+ }
203
+ .ds-button__icon > svg {
204
+ width: 1em;
205
+ height: 1em;
206
+ fill: currentColor;
207
+ }
208
+
209
+ .ds-button__spinner {
210
+ position: absolute;
211
+ width: 1em;
212
+ height: 1em;
213
+ color: var(--text-tertiary);
214
+ }
215
+ .ds-button--secondary.is-loading .ds-button__spinner,
216
+ .ds-button--tertiary.is-loading .ds-button__spinner,
217
+ .ds-button--edit.is-loading .ds-button__spinner,
218
+ .ds-button--ghost.is-loading .ds-button__spinner,
219
+ .ds-button--additional.is-loading .ds-button__spinner {
220
+ color: var(--text-brand);
221
+ }
222
+
223
+ .no-min-width {
224
+ min-width: auto;
225
+ }
226
+
227
+ .disabled {
228
+ opacity: 0.6;
229
+ cursor: not-allowed;
230
+ pointer-events: none;
231
+ }
232
+
233
+ .default-button,
234
+ .delete-button {
235
+ width: 100%;
236
+ height: 40px;
237
+ background-color: var(--text-brand);
238
+ border-radius: 24px;
239
+ cursor: pointer;
240
+ font-size: 12px;
241
+ font-weight: 600;
242
+ color: white;
243
+ border: none;
244
+
245
+ &:hover {
246
+ opacity: 0.95;
247
+ }
248
+
249
+ @media (max-width: 768px) {
250
+ height: 44px;
251
+ }
252
+ }
253
+
254
+ .inactive-button {
255
+ width: 100%;
256
+ height: 40px;
257
+ background-color: white;
258
+ border-radius: 24px;
259
+ border: 1px solid var(--deactivate-grey-color);
260
+ cursor: pointer;
261
+ font-size: 12px;
262
+ font-weight: 600;
263
+ color: var(--deactivate-grey-color);
264
+
265
+ &:hover {
266
+ opacity: 0.95;
267
+ }
268
+ }
269
+
270
+ .secondary-button {
271
+ display: flex;
272
+ justify-content: center;
273
+ align-items: center;
274
+ width: 100%;
275
+ height: 32px;
276
+ background-color: var(--surface-brand-minimal);
277
+ border-radius: 24px;
278
+ cursor: pointer;
279
+ font-size: 12px;
280
+ font-weight: 600;
281
+ color: var(--text-brand);
282
+ border: none;
283
+ gap: 6px;
284
+
285
+ &:hover {
286
+ opacity: 0.95;
287
+ }
288
+
289
+ svg {
290
+ fill: var(--text-brand);
291
+ }
292
+ }
293
+
294
+ .secondary-button-small {
295
+ display: inline-flex;
296
+ justify-content: center;
297
+ align-items: center;
298
+ height: 24px;
299
+ background-color: var(--text-brand-light);
300
+ border-radius: 24px;
301
+ cursor: pointer;
302
+ font-size: 12px;
303
+ line-height: 12px;
304
+ font-weight: 600;
305
+ color: var(--text-brand);
306
+ border: none;
307
+ gap: 6px;
308
+ padding: 6px 12px;
309
+ width: fit-content;
310
+
311
+ &:hover {
312
+ opacity: 0.95;
313
+ }
314
+
315
+ svg {
316
+ fill: var(--text-brand);
317
+ }
318
+ }
319
+
320
+ .bordered-button {
321
+ display: flex;
322
+ justify-content: center;
323
+ align-items: center;
324
+ width: 100%;
325
+ height: 40px;
326
+ background-color: white;
327
+ border-radius: 24px;
328
+ cursor: pointer;
329
+ font-size: 12px;
330
+ font-weight: 600;
331
+ color: var(--text-brand);
332
+ border: 1px solid var(--text-brand);
333
+ }
334
+
335
+ .add-new {
336
+ display: flex;
337
+ gap: 6px;
338
+ background-color: var(--surface-brand-minimal);
339
+ border-radius: 20px;
340
+ height: 30px;
341
+ padding: 6px 12px;
342
+ border: none;
343
+ color: var(--text-brand);
344
+ font-size: 12px;
345
+ font-weight: 600;
346
+ line-height: 12px;
347
+
348
+ &:hover {
349
+ border: 1px solid var(--text-brand);
350
+ cursor: pointer;
351
+ }
352
+
353
+ svg {
354
+ width: 12px;
355
+ height: 12px;
356
+ fill: var(--text-brand);
357
+ }
358
+ }
359
+
360
+ .download-button {
361
+ justify-content: space-between;
362
+ height: 28px;
363
+ line-height: 28px;
364
+ background-color: var(--technical-gray-color);
365
+ border-radius: 4px;
366
+ padding: 8px 10px;
367
+ border: none;
368
+ cursor: pointer;
369
+ font-size: 12px;
370
+
371
+ svg {
372
+ * {
373
+ color: var(--text-brand);
374
+ }
375
+ }
376
+ }
377
+
378
+ .only-text {
379
+ background-color: transparent;
380
+ border: none;
381
+ color: var(--text-brand);
382
+ font-size: 12px;
383
+ font-weight: 600;
384
+ cursor: pointer;
385
+ padding: 0;
386
+ margin: 0;
387
+ text-decoration: underline;
388
+ text-underline-offset: 2px;
389
+ }
390
+
391
+ .delete-button {
392
+ background-color: var(--delete-btn-color);
393
+
394
+ svg {
395
+ fill: white;
396
+ }
397
+ }
398
+
399
+ .print-button {
400
+ display: flex;
401
+ gap: 0;
402
+ background-color: #1865B110;
403
+ border-radius: 20px;
404
+ height: 24px;
405
+ padding: 6px 12px;
406
+ color: var(--text-brand);
407
+ font-size: 12px;
408
+ font-weight: 600;
409
+ line-height: 12px;
410
+ border: 1px solid transparent;
411
+ cursor: pointer;
412
+
413
+ &:hover {
414
+ border: 1px solid var(--text-brand);
415
+ }
416
+ }
@@ -0,0 +1,34 @@
1
+ .crewing-card {
2
+ background-color: white;
3
+ border: 1px solid var(--stroke-color);
4
+ border-radius: 8px;
5
+ display: flex;
6
+ flex-direction: column;
7
+ overflow: hidden;
8
+ }
9
+
10
+ .crewing-card--pad-none .crewing-card__body { padding: 0; }
11
+ .crewing-card--pad-sm .crewing-card__body { padding: 8px; }
12
+ .crewing-card--pad-md .crewing-card__body { padding: 16px; }
13
+ .crewing-card--pad-lg .crewing-card__body { padding: 24px; }
14
+
15
+ .crewing-card__header {
16
+ display: flex;
17
+ align-items: center;
18
+ justify-content: space-between;
19
+ gap: 12px;
20
+ padding: 12px 16px;
21
+ border-bottom: 1px solid var(--stroke-color);
22
+ }
23
+
24
+ .crewing-card__title {
25
+ font-size: 14px;
26
+ font-weight: 600;
27
+ color: var(--text-primary, var(--default-black-color));
28
+ }
29
+
30
+ .crewing-card__actions {
31
+ display: flex;
32
+ gap: 8px;
33
+ align-items: center;
34
+ }