@labpane/ui 0.0.0-stage → 1.0.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.
package/styles.css ADDED
@@ -0,0 +1,235 @@
1
+ @layer theme, base, components, utilities;
2
+ @import "tailwindcss/theme.css" layer(theme) prefix(labui);
3
+ @import "tailwindcss/utilities.css" layer(utilities) prefix(labui) source(none);
4
+ @source "./";
5
+ @custom-variant dark (&:is(.dark *));
6
+
7
+ :where(:root) {
8
+ --labui-font-sans:
9
+ system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI Variable Text",
10
+ "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
11
+ --labui-font-mono:
12
+ ui-monospace, "SFMono-Regular", "SF Mono", "Cascadia Mono", Menlo, Consolas,
13
+ "Liberation Mono", monospace;
14
+ --labui-font-display:
15
+ system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI Variable Display",
16
+ "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
17
+ --labui-radius: 0.75rem;
18
+ --labui-radius-dialog: 1.25rem;
19
+ --labui-control-height: 2.5rem;
20
+ --labui-control-height-sm: 2.25rem;
21
+ --labui-control-px: 0.75rem;
22
+ --labui-row-py: 0.625rem;
23
+ --labui-background: #eeeeee;
24
+ --labui-foreground: #242424;
25
+ --labui-card: #ffffff;
26
+ --labui-card-foreground: #242424;
27
+ --labui-popover: #fcfcfc;
28
+ --labui-popover-foreground: #242424;
29
+ --labui-primary: #05697a;
30
+ --labui-primary-foreground: #ffffff;
31
+ --labui-link: #05697a;
32
+ --labui-secondary: #e6e6e6;
33
+ --labui-secondary-foreground: #626262;
34
+ --labui-muted: #eeeeee;
35
+ --labui-muted-foreground: #626262;
36
+ --labui-accent: #e6e6e6;
37
+ --labui-accent-foreground: #242424;
38
+ --labui-destructive: #b12637;
39
+ --labui-destructive-foreground: #ffffff;
40
+ --labui-destructive-muted: #fff0f1;
41
+ --labui-success: #116d3b;
42
+ --labui-success-foreground: #ffffff;
43
+ --labui-warning: oklch(47.3% 0.137 46.201);
44
+ --labui-warning-foreground: #ffffff;
45
+ --labui-border: #d6d6d6;
46
+ --labui-input: #858585;
47
+ --labui-input-background: #eeeeee;
48
+ --labui-ring: #1d9db4;
49
+ --labui-overlay: color-mix(in srgb, #242424 18%, transparent);
50
+ }
51
+
52
+ :where(.dark) {
53
+ --labui-background: #1c1c1c;
54
+ --labui-foreground: #e8e8e8;
55
+ --labui-card: #242424;
56
+ --labui-card-foreground: #e8e8e8;
57
+ --labui-popover: #2d2d2d;
58
+ --labui-popover-foreground: #f3f3f3;
59
+ --labui-primary: #68bccf;
60
+ --labui-primary-foreground: #1c1c1c;
61
+ --labui-link: #68bccf;
62
+ --labui-secondary: #363636;
63
+ --labui-secondary-foreground: #e8e8e8;
64
+ --labui-muted: #2d2d2d;
65
+ --labui-muted-foreground: #a3a3a3;
66
+ --labui-accent: #363636;
67
+ --labui-accent-foreground: #f3f3f3;
68
+ --labui-destructive: #f0808c;
69
+ --labui-destructive-foreground: #ffffff;
70
+ --labui-destructive-muted: color-mix(in srgb, #f0808c 12%, #242424);
71
+ --labui-success: #3ddc84;
72
+ --labui-success-foreground: #06271a;
73
+ --labui-warning: oklch(87.9% 0.169 91.605);
74
+ --labui-warning-foreground: oklch(27.9% 0.077 45.635);
75
+ --labui-border: #363636;
76
+ --labui-input: #858585;
77
+ --labui-input-background: #242424;
78
+ --labui-ring: #68bccf;
79
+ --labui-overlay: color-mix(in srgb, #000000 50%, transparent);
80
+ }
81
+
82
+ @media (forced-colors: active) {
83
+ :root,
84
+ .dark {
85
+ --labui-background: Canvas !important;
86
+ --labui-card: Canvas !important;
87
+ --labui-border: CanvasText !important;
88
+ --labui-foreground: CanvasText !important;
89
+ }
90
+ }
91
+
92
+ @theme inline {
93
+ --radius-sm: calc(var(--labui-radius) - 4px);
94
+ --radius-md: calc(var(--labui-radius) - 2px);
95
+ --radius-lg: var(--labui-radius);
96
+ --radius-xl: calc(var(--labui-radius) + 4px);
97
+ --color-background: var(--labui-background);
98
+ --color-foreground: var(--labui-foreground);
99
+ --color-card: var(--labui-card);
100
+ --color-card-foreground: var(--labui-card-foreground);
101
+ --color-popover: var(--labui-popover);
102
+ --color-popover-foreground: var(--labui-popover-foreground);
103
+ --color-primary: var(--labui-primary);
104
+ --color-primary-foreground: var(--labui-primary-foreground);
105
+ --color-link: var(--labui-link);
106
+ --color-secondary: var(--labui-secondary);
107
+ --color-secondary-foreground: var(--labui-secondary-foreground);
108
+ --color-muted: var(--labui-muted);
109
+ --color-muted-foreground: var(--labui-muted-foreground);
110
+ --color-accent: var(--labui-accent);
111
+ --color-accent-foreground: var(--labui-accent-foreground);
112
+ --color-destructive: var(--labui-destructive);
113
+ --color-destructive-foreground: var(--labui-destructive-foreground);
114
+ --color-destructive-muted: var(--labui-destructive-muted);
115
+ --color-success: var(--labui-success);
116
+ --color-success-foreground: var(--labui-success-foreground);
117
+ --color-warning: var(--labui-warning);
118
+ --color-warning-foreground: var(--labui-warning-foreground);
119
+ --color-border: var(--labui-border);
120
+ --color-input: var(--labui-input);
121
+ --color-input-background: var(--labui-input-background);
122
+ --color-ring: var(--labui-ring);
123
+ --color-overlay: var(--labui-overlay);
124
+ }
125
+
126
+ @theme {
127
+ --animate-spin: labui-spin 1s linear infinite;
128
+ --animate-pulse: labui-pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
129
+ --animate-pop: labui-pop 160ms ease-out;
130
+ @keyframes labui-spin {
131
+ to {
132
+ transform: rotate(360deg);
133
+ }
134
+ }
135
+ @keyframes labui-pulse {
136
+ 50% {
137
+ opacity: 0.5;
138
+ }
139
+ }
140
+ @keyframes labui-pop {
141
+ from {
142
+ opacity: 0;
143
+ transform: scale(0.92);
144
+ }
145
+ to {
146
+ opacity: 1;
147
+ transform: scale(1);
148
+ }
149
+ }
150
+ }
151
+
152
+ @utility range-overlay {
153
+ position: absolute;
154
+ inset: 0;
155
+ width: 100%;
156
+ height: 100%;
157
+ cursor: ns-resize;
158
+ appearance: none;
159
+ opacity: 0;
160
+ writing-mode: vertical-lr;
161
+ direction: rtl;
162
+ &::-webkit-slider-thumb {
163
+ appearance: none;
164
+ width: 100%;
165
+ height: 0;
166
+ }
167
+ &::-moz-range-thumb {
168
+ width: 100%;
169
+ height: 0;
170
+ border: 0;
171
+ }
172
+ @media (forced-colors: active) {
173
+ appearance: auto;
174
+ opacity: 1;
175
+ &::-webkit-slider-thumb {
176
+ appearance: auto;
177
+ width: auto;
178
+ height: auto;
179
+ }
180
+ &::-moz-range-thumb {
181
+ width: 1rem;
182
+ height: 1rem;
183
+ border: 1px solid ButtonText;
184
+ }
185
+ }
186
+ }
187
+
188
+ @theme inline reference {
189
+ --font-sans: var(--labui-font-sans);
190
+ --font-mono: var(--labui-font-mono);
191
+ --font-display: var(--labui-font-display);
192
+ }
193
+
194
+ @layer base {
195
+ :where([class*="labui:"]) {
196
+ box-sizing: border-box;
197
+ margin: 0;
198
+ padding: 0;
199
+ border: 0 solid var(--labui-border);
200
+ outline-color: color-mix(in oklab, var(--labui-ring) 50%, transparent);
201
+ }
202
+ :where(button, input, select, textarea, a)[class*="labui:"] {
203
+ font: inherit;
204
+ font-feature-settings: inherit;
205
+ letter-spacing: inherit;
206
+ color: inherit;
207
+ border-radius: 0;
208
+ background-color: transparent;
209
+ text-decoration: inherit;
210
+ }
211
+ :where(input, textarea)[class*="labui:"]::placeholder {
212
+ opacity: 1;
213
+ color: color-mix(in srgb, currentcolor 50%, transparent);
214
+ }
215
+ :where(table[class*="labui:"]) {
216
+ border-collapse: collapse;
217
+ text-indent: 0;
218
+ }
219
+ :where(h1, h2, h3, h4, h5, h6)[class*="labui:"] {
220
+ font-size: inherit;
221
+ font-weight: inherit;
222
+ }
223
+ :where(svg[class*="labui:"]) {
224
+ display: block;
225
+ vertical-align: middle;
226
+ }
227
+ @media (prefers-reduced-motion: reduce) {
228
+ :where([class*="labui:"]) {
229
+ animation-duration: 0.01ms !important;
230
+ animation-iteration-count: 1 !important;
231
+ transition-duration: 0.01ms !important;
232
+ scroll-behavior: auto !important;
233
+ }
234
+ }
235
+ }