@owodesign/owoui 0.1.5 → 0.1.6

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/dist/style.css CHANGED
@@ -1,1556 +1,94 @@
1
- /*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */
2
- @layer properties;
3
- @layer theme, base, components, utilities;
4
- @layer theme {
5
- :root, :host {
6
- --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
7
- "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
8
- --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
9
- "Courier New", monospace;
10
- --color-white: #fff;
11
- --spacing: 0.25rem;
12
- --container-xs: 20rem;
13
- --container-sm: 24rem;
14
- --container-md: 28rem;
15
- --container-lg: 32rem;
16
- --container-2xl: 42rem;
17
- --text-xs: 0.75rem;
18
- --text-xs--line-height: calc(1 / 0.75);
19
- --text-sm: 0.875rem;
20
- --text-sm--line-height: calc(1.25 / 0.875);
21
- --text-base: 1rem;
22
- --text-base--line-height: calc(1.5 / 1);
23
- --text-lg: 1.125rem;
24
- --text-lg--line-height: calc(1.75 / 1.125);
25
- --text-xl: 1.25rem;
26
- --text-xl--line-height: calc(1.75 / 1.25);
27
- --text-2xl: 1.5rem;
28
- --text-2xl--line-height: calc(2 / 1.5);
29
- --text-3xl: 1.875rem;
30
- --text-3xl--line-height: calc(2.25 / 1.875);
31
- --text-4xl: 2.25rem;
32
- --text-4xl--line-height: calc(2.5 / 2.25);
33
- --font-weight-medium: 500;
34
- --font-weight-semibold: 600;
35
- --font-weight-bold: 700;
36
- --font-weight-extrabold: 800;
37
- --tracking-tighter: -0.05em;
38
- --tracking-tight: -0.025em;
39
- --tracking-wider: 0.05em;
40
- --tracking-widest: 0.1em;
41
- --leading-tight: 1.25;
42
- --leading-snug: 1.375;
43
- --leading-relaxed: 1.625;
44
- --radius-md: 0.375rem;
45
- --radius-lg: 0.5rem;
46
- --radius-xl: 0.75rem;
47
- --animate-spin: spin 1s linear infinite;
48
- --blur-sm: 8px;
49
- --default-transition-duration: 150ms;
50
- --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
51
- --default-font-family: var(--font-sans);
52
- --default-mono-font-family: var(--font-mono);
53
- --owo-ref-color-neutral-900: #1a1a1a;
54
- --owo-ref-color-neutral-800: #2d2d2d;
55
- --owo-ref-color-neutral-700: #4a4a4a;
56
- --owo-ref-color-neutral-600: #71717a;
57
- --owo-ref-color-neutral-500: #a1a1aa;
58
- --owo-ref-color-neutral-400: #d4d4d8;
59
- --owo-ref-color-neutral-300: #e4e4e7;
60
- --owo-ref-color-neutral-200: #f0f0f2;
61
- --owo-ref-color-neutral-100: #f8f8f9;
62
- --owo-ref-color-brand-primary: #1a1a1a;
63
- --owo-ref-color-brand-primary-hover: #000000;
64
- --owo-ref-color-surface-canvas: #ffffff;
65
- --owo-ref-color-surface-base: #ffffff;
66
- --owo-ref-color-surface-subtle: #fafaf9;
67
- --owo-ref-color-surface-raised: #ffffff;
68
- --owo-ref-color-surface-inset: #f5f5f4;
69
- --owo-ref-color-surface-border: #e5e7eb;
70
- --owo-ref-color-surface-ring: #d6d3d1;
71
- --owo-ref-color-overlay-strong: rgba(15, 23, 42, 0.18);
72
- --owo-ref-color-highlight-soft: rgba(255, 255, 255, 0.56);
73
- --owo-ref-color-highlight-sheen: rgba(255, 255, 255, 0.34);
74
- --owo-ref-color-text-on-brand: #ffffff;
75
- --owo-ref-color-code-block-bg: #f4f4f5;
76
- --owo-ref-shadow-raised: 0 10px 20px rgba(15, 23, 42, 0.08);
77
- --owo-ref-shadow-popover: 0 18px 40px rgba(15, 23, 42, 0.10);
78
- --owo-ref-color-status-success-bg: rgba(16, 185, 129, 0.10);
79
- --owo-ref-color-status-success-border: rgba(16, 185, 129, 0.20);
80
- --owo-ref-color-status-success-text: #047857;
81
- --owo-ref-color-status-warning-bg: rgba(245, 158, 11, 0.10);
82
- --owo-ref-color-status-warning-border: rgba(245, 158, 11, 0.20);
83
- --owo-ref-color-status-warning-text: #b45309;
84
- --owo-ref-color-status-danger-bg: rgba(239, 68, 68, 0.10);
85
- --owo-ref-color-status-danger-border: rgba(239, 68, 68, 0.20);
86
- --owo-ref-color-status-danger-text: #b91c1c;
87
- --owo-ref-color-status-info-bg: rgba(14, 165, 233, 0.10);
88
- --owo-ref-color-status-info-border: rgba(14, 165, 233, 0.20);
89
- --owo-ref-color-status-info-text: #0369a1;
90
- --owo-ref-font-sans: var(--font-inter), var(--font-noto-sans-sc), system-ui, -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", Roboto, sans-serif;
91
- --owo-ref-font-heading: var(--font-source-serif-pro), var(--font-noto-serif-sc), "Source Serif 4", Georgia, "Times New Roman", serif;
92
- --owo-ref-font-mono: "JetBrains Mono", "Fira Code", ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;
93
- --owo-ref-radius-xs: 0.375rem;
94
- --owo-ref-radius-sm: 0.5rem;
95
- --owo-ref-radius-md: 0.75rem;
96
- --owo-ref-radius-lg: 1rem;
97
- --owo-ref-radius-xl: 1.5rem;
98
- --owo-ref-radius-2xl: 2rem;
99
- --owo-ref-radius-full: 9999px;
100
- --owo-ref-motion-ease-standard: cubic-bezier(0.2, 0, 0, 1);
101
- --owo-ref-motion-ease-decelerate: cubic-bezier(0, 0, 0, 1);
102
- --owo-ref-motion-ease-accelerate: cubic-bezier(0.4, 0, 1, 1);
103
- }
104
- }
105
- @layer base {
106
- *, ::after, ::before, ::backdrop, ::file-selector-button {
107
- box-sizing: border-box;
108
- margin: 0;
109
- padding: 0;
110
- border: 0 solid;
111
- }
112
- html, :host {
113
- line-height: 1.5;
114
- -webkit-text-size-adjust: 100%;
115
- tab-size: 4;
116
- font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
117
- font-feature-settings: var(--default-font-feature-settings, normal);
118
- font-variation-settings: var(--default-font-variation-settings, normal);
119
- -webkit-tap-highlight-color: transparent;
120
- }
121
- hr {
122
- height: 0;
123
- color: inherit;
124
- border-top-width: 1px;
125
- }
126
- abbr:where([title]) {
127
- -webkit-text-decoration: underline dotted;
128
- text-decoration: underline dotted;
129
- }
130
- h1, h2, h3, h4, h5, h6 {
131
- font-size: inherit;
132
- font-weight: inherit;
133
- }
134
- a {
135
- color: inherit;
136
- -webkit-text-decoration: inherit;
137
- text-decoration: inherit;
138
- }
139
- b, strong {
140
- font-weight: bolder;
141
- }
142
- code, kbd, samp, pre {
143
- font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
144
- font-feature-settings: var(--default-mono-font-feature-settings, normal);
145
- font-variation-settings: var(--default-mono-font-variation-settings, normal);
146
- font-size: 1em;
147
- }
148
- small {
149
- font-size: 80%;
150
- }
151
- sub, sup {
152
- font-size: 75%;
153
- line-height: 0;
154
- position: relative;
155
- vertical-align: baseline;
156
- }
157
- sub {
158
- bottom: -0.25em;
159
- }
160
- sup {
161
- top: -0.5em;
162
- }
163
- table {
164
- text-indent: 0;
165
- border-color: inherit;
166
- border-collapse: collapse;
167
- }
168
- :-moz-focusring {
169
- outline: auto;
170
- }
171
- progress {
172
- vertical-align: baseline;
173
- }
174
- summary {
175
- display: list-item;
176
- }
177
- ol, ul, menu {
178
- list-style: none;
179
- }
180
- img, svg, video, canvas, audio, iframe, embed, object {
181
- display: block;
182
- vertical-align: middle;
183
- }
184
- img, video {
185
- max-width: 100%;
186
- height: auto;
187
- }
188
- button, input, select, optgroup, textarea, ::file-selector-button {
189
- font: inherit;
190
- font-feature-settings: inherit;
191
- font-variation-settings: inherit;
192
- letter-spacing: inherit;
193
- color: inherit;
194
- border-radius: 0;
195
- background-color: transparent;
196
- opacity: 1;
197
- }
198
- :where(select:is([multiple], [size])) optgroup {
199
- font-weight: bolder;
200
- }
201
- :where(select:is([multiple], [size])) optgroup option {
202
- padding-inline-start: 20px;
203
- }
204
- ::file-selector-button {
205
- margin-inline-end: 4px;
206
- }
207
- ::placeholder {
208
- opacity: 1;
209
- }
210
- @supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {
211
- ::placeholder {
212
- color: currentcolor;
213
- @supports (color: color-mix(in lab, red, red)) {
214
- color: color-mix(in oklab, currentcolor 50%, transparent);
215
- }
216
- }
217
- }
218
- textarea {
219
- resize: vertical;
220
- }
221
- ::-webkit-search-decoration {
222
- -webkit-appearance: none;
223
- }
224
- ::-webkit-date-and-time-value {
225
- min-height: 1lh;
226
- text-align: inherit;
227
- }
228
- ::-webkit-datetime-edit {
229
- display: inline-flex;
230
- }
231
- ::-webkit-datetime-edit-fields-wrapper {
232
- padding: 0;
233
- }
234
- ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
235
- padding-block: 0;
236
- }
237
- ::-webkit-calendar-picker-indicator {
238
- line-height: 1;
239
- }
240
- :-moz-ui-invalid {
241
- box-shadow: none;
242
- }
243
- button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
244
- appearance: button;
245
- }
246
- ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
247
- height: auto;
248
- }
249
- [hidden]:where(:not([hidden="until-found"])) {
250
- display: none !important;
251
- }
252
- }
253
- @layer utilities {
254
- .pointer-events-auto {
255
- pointer-events: auto;
256
- }
257
- .pointer-events-none {
258
- pointer-events: none;
259
- }
260
- .invisible {
261
- visibility: hidden;
262
- }
263
- .visible {
264
- visibility: visible;
265
- }
266
- .sr-only {
267
- position: absolute;
268
- width: 1px;
269
- height: 1px;
270
- padding: 0;
271
- margin: -1px;
272
- overflow: hidden;
273
- clip-path: inset(50%);
274
- white-space: nowrap;
275
- border-width: 0;
276
- }
277
- .absolute {
278
- position: absolute;
279
- }
280
- .fixed {
281
- position: fixed;
282
- }
283
- .relative {
284
- position: relative;
285
- }
286
- .static {
287
- position: static;
288
- }
289
- .inset-0 {
290
- inset: calc(var(--spacing) * 0);
291
- }
292
- .inset-y-0 {
293
- inset-block: calc(var(--spacing) * 0);
294
- }
295
- .start {
296
- inset-inline-start: var(--spacing);
297
- }
298
- .end {
299
- inset-inline-end: var(--spacing);
300
- }
301
- .top-0 {
302
- top: calc(var(--spacing) * 0);
303
- }
304
- .top-1\/2 {
305
- top: calc(1 / 2 * 100%);
306
- }
307
- .top-16 {
308
- top: calc(var(--spacing) * 16);
309
- }
310
- .top-full {
311
- top: 100%;
312
- }
313
- .right-0 {
314
- right: calc(var(--spacing) * 0);
315
- }
316
- .right-4 {
317
- right: calc(var(--spacing) * 4);
318
- }
319
- .bottom-4 {
320
- bottom: calc(var(--spacing) * 4);
321
- }
322
- .left-0 {
323
- left: calc(var(--spacing) * 0);
324
- }
325
- .left-2\.5 {
326
- left: calc(var(--spacing) * 2.5);
327
- }
328
- .left-4 {
329
- left: calc(var(--spacing) * 4);
330
- }
331
- .z-10 {
332
- z-index: 10;
333
- }
334
- .z-40 {
335
- z-index: 40;
336
- }
337
- .z-50 {
338
- z-index: 50;
339
- }
340
- .z-\[calc\(var\(--owo-cmp-z-modal\)\+1\)\] {
341
- z-index: calc(var(--owo-cmp-z-modal) + 1);
342
- }
343
- .z-\[var\(--owo-cmp-z-dropdown\)\] {
344
- z-index: var(--owo-cmp-z-dropdown);
345
- }
346
- .z-\[var\(--owo-cmp-z-modal\)\] {
347
- z-index: var(--owo-cmp-z-modal);
348
- }
349
- .z-\[var\(--owo-cmp-z-toast\)\] {
350
- z-index: var(--owo-cmp-z-toast);
351
- }
352
- .container {
353
- width: 100%;
354
- @media (width >= 40rem) {
355
- max-width: 40rem;
356
- }
357
- @media (width >= 48rem) {
358
- max-width: 48rem;
359
- }
360
- @media (width >= 64rem) {
361
- max-width: 64rem;
362
- }
363
- @media (width >= 80rem) {
364
- max-width: 80rem;
365
- }
366
- @media (width >= 96rem) {
367
- max-width: 96rem;
368
- }
369
- }
370
- .mx-auto {
371
- margin-inline: auto;
372
- }
373
- .-mt-0\.5 {
374
- margin-top: calc(var(--spacing) * -0.5);
375
- }
376
- .mt-0\.5 {
377
- margin-top: calc(var(--spacing) * 0.5);
378
- }
379
- .mt-1 {
380
- margin-top: calc(var(--spacing) * 1);
381
- }
382
- .mt-2 {
383
- margin-top: calc(var(--spacing) * 2);
384
- }
385
- .mt-3 {
386
- margin-top: calc(var(--spacing) * 3);
387
- }
388
- .mt-auto {
389
- margin-top: auto;
390
- }
391
- .-mr-1 {
392
- margin-right: calc(var(--spacing) * -1);
393
- }
394
- .-mb-px {
395
- margin-bottom: -1px;
396
- }
397
- .mb-1 {
398
- margin-bottom: calc(var(--spacing) * 1);
399
- }
400
- .mb-2 {
401
- margin-bottom: calc(var(--spacing) * 2);
402
- }
403
- .mb-3 {
404
- margin-bottom: calc(var(--spacing) * 3);
405
- }
406
- .mb-4 {
407
- margin-bottom: calc(var(--spacing) * 4);
408
- }
409
- .ml-2 {
410
- margin-left: calc(var(--spacing) * 2);
411
- }
412
- .ml-64 {
413
- margin-left: calc(var(--spacing) * 64);
414
- }
415
- .ml-auto {
416
- margin-left: auto;
417
- }
418
- .line-clamp-2 {
419
- overflow: hidden;
420
- display: -webkit-box;
421
- -webkit-box-orient: vertical;
422
- -webkit-line-clamp: 2;
423
- }
424
- .block {
425
- display: block;
426
- }
427
- .contents {
428
- display: contents;
429
- }
430
- .flex {
431
- display: flex;
432
- }
433
- .grid {
434
- display: grid;
435
- }
436
- .hidden {
437
- display: none;
438
- }
439
- .inline-block {
440
- display: inline-block;
441
- }
442
- .inline-flex {
443
- display: inline-flex;
444
- }
445
- .table {
446
- display: table;
447
- }
448
- .h-2 {
449
- height: calc(var(--spacing) * 2);
450
- }
451
- .h-3 {
452
- height: calc(var(--spacing) * 3);
453
- }
454
- .h-3\.5 {
455
- height: calc(var(--spacing) * 3.5);
456
- }
457
- .h-4 {
458
- height: calc(var(--spacing) * 4);
459
- }
460
- .h-4\.5 {
461
- height: calc(var(--spacing) * 4.5);
462
- }
463
- .h-5 {
464
- height: calc(var(--spacing) * 5);
465
- }
466
- .h-6 {
467
- height: calc(var(--spacing) * 6);
468
- }
469
- .h-7 {
470
- height: calc(var(--spacing) * 7);
471
- }
472
- .h-8 {
473
- height: calc(var(--spacing) * 8);
474
- }
475
- .h-10 {
476
- height: calc(var(--spacing) * 10);
477
- }
478
- .h-14 {
479
- height: calc(var(--spacing) * 14);
480
- }
481
- .h-16 {
482
- height: calc(var(--spacing) * 16);
483
- }
484
- .h-24 {
485
- height: calc(var(--spacing) * 24);
486
- }
487
- .h-28 {
488
- height: calc(var(--spacing) * 28);
489
- }
490
- .h-48 {
491
- height: calc(var(--spacing) * 48);
492
- }
493
- .h-\[20rem\] {
494
- height: 20rem;
495
- }
496
- .h-\[26rem\] {
497
- height: 26rem;
498
- }
499
- .h-\[500px\] {
500
- height: 500px;
501
- }
502
- .h-full {
503
- height: 100%;
504
- }
505
- .max-h-52 {
506
- max-height: calc(var(--spacing) * 52);
507
- }
508
- .max-h-60 {
509
- max-height: calc(var(--spacing) * 60);
510
- }
511
- .min-h-7 {
512
- min-height: calc(var(--spacing) * 7);
513
- }
514
- .min-h-8 {
515
- min-height: calc(var(--spacing) * 8);
516
- }
517
- .min-h-9 {
518
- min-height: calc(var(--spacing) * 9);
519
- }
520
- .min-h-52 {
521
- min-height: calc(var(--spacing) * 52);
522
- }
523
- .min-h-64 {
524
- min-height: calc(var(--spacing) * 64);
525
- }
526
- .min-h-dvh {
527
- min-height: 100dvh;
528
- }
529
- .min-h-screen {
530
- min-height: 100vh;
531
- }
532
- .w-2 {
533
- width: calc(var(--spacing) * 2);
534
- }
535
- .w-2\/5 {
536
- width: calc(2 / 5 * 100%);
537
- }
538
- .w-3\.5 {
539
- width: calc(var(--spacing) * 3.5);
540
- }
541
- .w-3\/4 {
542
- width: calc(3 / 4 * 100%);
543
- }
544
- .w-3\/5 {
545
- width: calc(3 / 5 * 100%);
546
- }
547
- .w-4 {
548
- width: calc(var(--spacing) * 4);
549
- }
550
- .w-4\.5 {
551
- width: calc(var(--spacing) * 4.5);
552
- }
553
- .w-5\/6 {
554
- width: calc(5 / 6 * 100%);
555
- }
556
- .w-6 {
557
- width: calc(var(--spacing) * 6);
558
- }
559
- .w-7 {
560
- width: calc(var(--spacing) * 7);
561
- }
562
- .w-8 {
563
- width: calc(var(--spacing) * 8);
564
- }
565
- .w-9 {
566
- width: calc(var(--spacing) * 9);
567
- }
568
- .w-10 {
569
- width: calc(var(--spacing) * 10);
570
- }
571
- .w-11 {
572
- width: calc(var(--spacing) * 11);
573
- }
574
- .w-14 {
575
- width: calc(var(--spacing) * 14);
576
- }
577
- .w-16 {
578
- width: calc(var(--spacing) * 16);
579
- }
580
- .w-20 {
581
- width: calc(var(--spacing) * 20);
582
- }
583
- .w-24 {
584
- width: calc(var(--spacing) * 24);
585
- }
586
- .w-32 {
587
- width: calc(var(--spacing) * 32);
588
- }
589
- .w-36 {
590
- width: calc(var(--spacing) * 36);
591
- }
592
- .w-44 {
593
- width: calc(var(--spacing) * 44);
594
- }
595
- .w-48 {
596
- width: calc(var(--spacing) * 48);
597
- }
598
- .w-64 {
599
- width: calc(var(--spacing) * 64);
600
- }
601
- .w-80 {
602
- width: calc(var(--spacing) * 80);
603
- }
604
- .w-full {
605
- width: 100%;
606
- }
607
- .max-w-2xl {
608
- max-width: var(--container-2xl);
609
- }
610
- .max-w-\[26rem\] {
611
- max-width: 26rem;
612
- }
613
- .max-w-\[32rem\] {
614
- max-width: 32rem;
615
- }
616
- .max-w-\[200px\] {
617
- max-width: 200px;
618
- }
619
- .max-w-\[1400px\] {
620
- max-width: 1400px;
621
- }
622
- .max-w-full {
623
- max-width: 100%;
624
- }
625
- .max-w-lg {
626
- max-width: var(--container-lg);
627
- }
628
- .max-w-md {
629
- max-width: var(--container-md);
630
- }
631
- .max-w-sm {
632
- max-width: var(--container-sm);
633
- }
634
- .max-w-xs {
635
- max-width: var(--container-xs);
636
- }
637
- .min-w-0 {
638
- min-width: calc(var(--spacing) * 0);
639
- }
640
- .min-w-\[3ch\] {
641
- min-width: 3ch;
642
- }
643
- .flex-1 {
644
- flex: 1;
645
- }
646
- .shrink-0 {
647
- flex-shrink: 0;
648
- }
649
- .border-collapse {
650
- border-collapse: collapse;
651
- }
652
- .-translate-x-full {
653
- --tw-translate-x: -100%;
654
- translate: var(--tw-translate-x) var(--tw-translate-y);
655
- }
656
- .translate-x-0 {
657
- --tw-translate-x: calc(var(--spacing) * 0);
658
- translate: var(--tw-translate-x) var(--tw-translate-y);
659
- }
660
- .translate-x-0\.5 {
661
- --tw-translate-x: calc(var(--spacing) * 0.5);
662
- translate: var(--tw-translate-x) var(--tw-translate-y);
663
- }
664
- .translate-x-4 {
665
- --tw-translate-x: calc(var(--spacing) * 4);
666
- translate: var(--tw-translate-x) var(--tw-translate-y);
667
- }
668
- .translate-x-5 {
669
- --tw-translate-x: calc(var(--spacing) * 5);
670
- translate: var(--tw-translate-x) var(--tw-translate-y);
671
- }
672
- .translate-x-full {
673
- --tw-translate-x: 100%;
674
- translate: var(--tw-translate-x) var(--tw-translate-y);
675
- }
676
- .-translate-y-1\/2 {
677
- --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
678
- translate: var(--tw-translate-x) var(--tw-translate-y);
679
- }
680
- .rotate-180 {
681
- rotate: 180deg;
682
- }
683
- .transform {
684
- transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
685
- }
686
- .animate-\[dialog-in_0\.2s_var\(--owo-cmp-motion-ease-standard\)\] {
687
- animation: dialog-in 0.2s var(--owo-cmp-motion-ease-standard);
688
- }
689
- .animate-\[toast-in_0\.25s_var\(--owo-cmp-motion-ease-standard\)\] {
690
- animation: toast-in 0.25s var(--owo-cmp-motion-ease-standard);
691
- }
692
- .animate-\[tooltip-in_0\.15s_var\(--owo-cmp-motion-ease-standard\)\] {
693
- animation: tooltip-in 0.15s var(--owo-cmp-motion-ease-standard);
694
- }
695
- .animate-spin {
696
- animation: var(--animate-spin);
697
- }
698
- .cursor-default {
699
- cursor: default;
700
- }
701
- .cursor-not-allowed {
702
- cursor: not-allowed;
703
- }
704
- .cursor-pointer {
705
- cursor: pointer;
706
- }
707
- .cursor-wait {
708
- cursor: wait;
709
- }
710
- .resize {
711
- resize: both;
712
- }
713
- .grid-cols-1 {
714
- grid-template-columns: repeat(1, minmax(0, 1fr));
715
- }
716
- .grid-cols-2 {
717
- grid-template-columns: repeat(2, minmax(0, 1fr));
718
- }
719
- .grid-cols-\[auto_minmax\(0\,1fr\)\] {
720
- grid-template-columns: auto minmax(0,1fr);
721
- }
722
- .flex-col {
723
- flex-direction: column;
724
- }
725
- .flex-col-reverse {
726
- flex-direction: column-reverse;
727
- }
728
- .flex-wrap {
729
- flex-wrap: wrap;
730
- }
731
- .items-baseline {
732
- align-items: baseline;
733
- }
734
- .items-center {
735
- align-items: center;
736
- }
737
- .items-end {
738
- align-items: flex-end;
739
- }
740
- .items-start {
741
- align-items: flex-start;
742
- }
743
- .justify-between {
744
- justify-content: space-between;
745
- }
746
- .justify-center {
747
- justify-content: center;
748
- }
749
- .justify-end {
750
- justify-content: flex-end;
751
- }
752
- .justify-start {
753
- justify-content: flex-start;
754
- }
755
- .gap-1 {
756
- gap: calc(var(--spacing) * 1);
757
- }
758
- .gap-2 {
759
- gap: calc(var(--spacing) * 2);
760
- }
761
- .gap-2\.5 {
762
- gap: calc(var(--spacing) * 2.5);
763
- }
764
- .gap-3 {
765
- gap: calc(var(--spacing) * 3);
766
- }
767
- .gap-4 {
768
- gap: calc(var(--spacing) * 4);
769
- }
770
- .gap-5 {
771
- gap: calc(var(--spacing) * 5);
772
- }
773
- .gap-6 {
774
- gap: calc(var(--spacing) * 6);
775
- }
776
- .gap-8 {
777
- gap: calc(var(--spacing) * 8);
778
- }
779
- .space-y-1 {
780
- :where(& > :not(:last-child)) {
781
- --tw-space-y-reverse: 0;
782
- margin-block-start: calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));
783
- margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)));
784
- }
785
- }
786
- .space-y-2 {
787
- :where(& > :not(:last-child)) {
788
- --tw-space-y-reverse: 0;
789
- margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
790
- margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));
791
- }
792
- }
793
- .space-y-3 {
794
- :where(& > :not(:last-child)) {
795
- --tw-space-y-reverse: 0;
796
- margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
797
- margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
798
- }
799
- }
800
- .space-y-4 {
801
- :where(& > :not(:last-child)) {
802
- --tw-space-y-reverse: 0;
803
- margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
804
- margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
805
- }
806
- }
807
- .space-y-5 {
808
- :where(& > :not(:last-child)) {
809
- --tw-space-y-reverse: 0;
810
- margin-block-start: calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));
811
- margin-block-end: calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)));
812
- }
813
- }
814
- .space-y-6 {
815
- :where(& > :not(:last-child)) {
816
- --tw-space-y-reverse: 0;
817
- margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));
818
- margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
819
- }
820
- }
821
- .space-y-8 {
822
- :where(& > :not(:last-child)) {
823
- --tw-space-y-reverse: 0;
824
- margin-block-start: calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));
825
- margin-block-end: calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)));
826
- }
827
- }
828
- .space-y-12 {
829
- :where(& > :not(:last-child)) {
830
- --tw-space-y-reverse: 0;
831
- margin-block-start: calc(calc(var(--spacing) * 12) * var(--tw-space-y-reverse));
832
- margin-block-end: calc(calc(var(--spacing) * 12) * calc(1 - var(--tw-space-y-reverse)));
833
- }
834
- }
835
- .divide-y {
836
- :where(& > :not(:last-child)) {
837
- --tw-divide-y-reverse: 0;
838
- border-bottom-style: var(--tw-border-style);
839
- border-top-style: var(--tw-border-style);
840
- border-top-width: calc(1px * var(--tw-divide-y-reverse));
841
- border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
842
- }
843
- }
844
- .divide-\[var\(--owo-cmp-surface-border\)\] {
845
- :where(& > :not(:last-child)) {
846
- border-color: var(--owo-cmp-surface-border);
847
- }
848
- }
849
- .truncate {
850
- overflow: hidden;
851
- text-overflow: ellipsis;
852
- white-space: nowrap;
853
- }
854
- .overflow-auto {
855
- overflow: auto;
856
- }
857
- .overflow-hidden {
858
- overflow: hidden;
859
- }
860
- .overflow-x-auto {
861
- overflow-x: auto;
862
- }
863
- .overflow-y-auto {
864
- overflow-y: auto;
865
- }
866
- .rounded {
867
- border-radius: 0.25rem;
868
- }
869
- .rounded-\[var\(--owo-cmp-control-radius-full\)\] {
870
- border-radius: var(--owo-cmp-control-radius-full);
871
- }
872
- .rounded-\[var\(--owo-cmp-control-radius-lg\)\] {
873
- border-radius: var(--owo-cmp-control-radius-lg);
874
- }
875
- .rounded-\[var\(--owo-cmp-control-radius-md\)\] {
876
- border-radius: var(--owo-cmp-control-radius-md);
877
- }
878
- .rounded-\[var\(--owo-cmp-control-radius-sm\)\] {
879
- border-radius: var(--owo-cmp-control-radius-sm);
880
- }
881
- .rounded-\[var\(--owo-cmp-control-radius-xl\)\] {
882
- border-radius: var(--owo-cmp-control-radius-xl);
883
- }
884
- .rounded-full {
885
- border-radius: calc(infinity * 1px);
886
- }
887
- .rounded-lg {
888
- border-radius: var(--radius-lg);
889
- }
890
- .rounded-md {
891
- border-radius: var(--radius-md);
892
- }
893
- .rounded-xl {
894
- border-radius: var(--radius-xl);
895
- }
896
- .rounded-t {
897
- border-top-left-radius: 0.25rem;
898
- border-top-right-radius: 0.25rem;
899
- }
900
- .rounded-t-\[var\(--owo-cmp-control-radius-md\)\] {
901
- border-top-left-radius: var(--owo-cmp-control-radius-md);
902
- border-top-right-radius: var(--owo-cmp-control-radius-md);
903
- }
904
- .border {
905
- border-style: var(--tw-border-style);
906
- border-width: 1px;
907
- }
908
- .border-2 {
909
- border-style: var(--tw-border-style);
910
- border-width: 2px;
911
- }
912
- .border-t {
913
- border-top-style: var(--tw-border-style);
914
- border-top-width: 1px;
915
- }
916
- .border-r {
917
- border-right-style: var(--tw-border-style);
918
- border-right-width: 1px;
919
- }
920
- .border-b {
921
- border-bottom-style: var(--tw-border-style);
922
- border-bottom-width: 1px;
923
- }
924
- .border-b-2 {
925
- border-bottom-style: var(--tw-border-style);
926
- border-bottom-width: 2px;
927
- }
928
- .border-l {
929
- border-left-style: var(--tw-border-style);
930
- border-left-width: 1px;
931
- }
932
- .border-\[var\(--drawer-border\)\] {
933
- border-color: var(--drawer-border);
934
- }
935
- .border-\[var\(--owo-cmp-surface-border\)\] {
936
- border-color: var(--owo-cmp-surface-border);
937
- }
938
- .border-\[var\(--owo-cmp-surface-border-muted\)\] {
939
- border-color: var(--owo-cmp-surface-border-muted);
940
- }
941
- .border-\[var\(--owo-cmp-text-primary\)\] {
942
- border-color: var(--owo-cmp-text-primary);
943
- }
944
- .border-\[var\(--owo-ref-color-surface-border\)\] {
945
- border-color: var(--owo-ref-color-surface-border);
946
- }
947
- .border-\[var\(--panel-section-border\,var\(--owo-ref-color-surface-border\)\)\] {
948
- border-color: var(--panel-section-border,var(--owo-ref-color-surface-border));
949
- }
950
- .border-transparent {
951
- border-color: transparent;
952
- }
953
- .bg-\[var\(--owo-cmp-canvas-bg\)\] {
954
- background-color: var(--owo-cmp-canvas-bg);
955
- }
956
- .bg-\[var\(--owo-cmp-overlay-bg\)\] {
957
- background-color: var(--owo-cmp-overlay-bg);
958
- }
959
- .bg-\[var\(--owo-cmp-surface-bg\)\] {
960
- background-color: var(--owo-cmp-surface-bg);
961
- }
962
- .bg-\[var\(--owo-cmp-surface-bg-inset\)\] {
963
- background-color: var(--owo-cmp-surface-bg-inset);
964
- }
965
- .bg-\[var\(--owo-cmp-surface-bg-subtle\)\] {
966
- background-color: var(--owo-cmp-surface-bg-subtle);
967
- }
968
- .bg-\[var\(--owo-ref-color-code-block-bg\)\] {
969
- background-color: var(--owo-ref-color-code-block-bg);
970
- }
971
- .bg-\[var\(--owo-ref-color-surface-base\)\] {
972
- background-color: var(--owo-ref-color-surface-base);
973
- }
974
- .bg-\[var\(--owo-ref-color-surface-canvas\)\] {
975
- background-color: var(--owo-ref-color-surface-canvas);
976
- }
977
- .bg-\[var\(--owo-ref-color-surface-subtle\)\] {
978
- background-color: var(--owo-ref-color-surface-subtle);
979
- }
980
- .bg-white {
981
- background-color: var(--color-white);
982
- }
983
- .object-cover {
984
- object-fit: cover;
985
- }
986
- .p-0\.5 {
987
- padding: calc(var(--spacing) * 0.5);
988
- }
989
- .p-3 {
990
- padding: calc(var(--spacing) * 3);
991
- }
992
- .p-4 {
993
- padding: calc(var(--spacing) * 4);
994
- }
995
- .p-5 {
996
- padding: calc(var(--spacing) * 5);
997
- }
998
- .p-6 {
999
- padding: calc(var(--spacing) * 6);
1000
- }
1001
- .p-8 {
1002
- padding: calc(var(--spacing) * 8);
1003
- }
1004
- .p-10 {
1005
- padding: calc(var(--spacing) * 10);
1006
- }
1007
- .p-12 {
1008
- padding: calc(var(--spacing) * 12);
1009
- }
1010
- .px-1 {
1011
- padding-inline: calc(var(--spacing) * 1);
1012
- }
1013
- .px-2 {
1014
- padding-inline: calc(var(--spacing) * 2);
1015
- }
1016
- .px-2\.5 {
1017
- padding-inline: calc(var(--spacing) * 2.5);
1018
- }
1019
- .px-3 {
1020
- padding-inline: calc(var(--spacing) * 3);
1021
- }
1022
- .px-4 {
1023
- padding-inline: calc(var(--spacing) * 4);
1024
- }
1025
- .px-5 {
1026
- padding-inline: calc(var(--spacing) * 5);
1027
- }
1028
- .px-6 {
1029
- padding-inline: calc(var(--spacing) * 6);
1030
- }
1031
- .px-8 {
1032
- padding-inline: calc(var(--spacing) * 8);
1033
- }
1034
- .py-0\.5 {
1035
- padding-block: calc(var(--spacing) * 0.5);
1036
- }
1037
- .py-1 {
1038
- padding-block: calc(var(--spacing) * 1);
1039
- }
1040
- .py-1\.5 {
1041
- padding-block: calc(var(--spacing) * 1.5);
1042
- }
1043
- .py-2 {
1044
- padding-block: calc(var(--spacing) * 2);
1045
- }
1046
- .py-3 {
1047
- padding-block: calc(var(--spacing) * 3);
1048
- }
1049
- .py-4 {
1050
- padding-block: calc(var(--spacing) * 4);
1051
- }
1052
- .py-5 {
1053
- padding-block: calc(var(--spacing) * 5);
1054
- }
1055
- .py-6 {
1056
- padding-block: calc(var(--spacing) * 6);
1057
- }
1058
- .py-8 {
1059
- padding-block: calc(var(--spacing) * 8);
1060
- }
1061
- .py-12 {
1062
- padding-block: calc(var(--spacing) * 12);
1063
- }
1064
- .py-20 {
1065
- padding-block: calc(var(--spacing) * 20);
1066
- }
1067
- .pt-1 {
1068
- padding-top: calc(var(--spacing) * 1);
1069
- }
1070
- .pt-2 {
1071
- padding-top: calc(var(--spacing) * 2);
1072
- }
1073
- .pt-3 {
1074
- padding-top: calc(var(--spacing) * 3);
1075
- }
1076
- .pt-4 {
1077
- padding-top: calc(var(--spacing) * 4);
1078
- }
1079
- .pt-5 {
1080
- padding-top: calc(var(--spacing) * 5);
1081
- }
1082
- .pt-6 {
1083
- padding-top: calc(var(--spacing) * 6);
1084
- }
1085
- .pt-16 {
1086
- padding-top: calc(var(--spacing) * 16);
1087
- }
1088
- .pt-20 {
1089
- padding-top: calc(var(--spacing) * 20);
1090
- }
1091
- .pb-1 {
1092
- padding-bottom: calc(var(--spacing) * 1);
1093
- }
1094
- .pb-2 {
1095
- padding-bottom: calc(var(--spacing) * 2);
1096
- }
1097
- .pb-3 {
1098
- padding-bottom: calc(var(--spacing) * 3);
1099
- }
1100
- .pb-4 {
1101
- padding-bottom: calc(var(--spacing) * 4);
1102
- }
1103
- .pb-5 {
1104
- padding-bottom: calc(var(--spacing) * 5);
1105
- }
1106
- .pb-6 {
1107
- padding-bottom: calc(var(--spacing) * 6);
1108
- }
1109
- .pb-10 {
1110
- padding-bottom: calc(var(--spacing) * 10);
1111
- }
1112
- .pb-28 {
1113
- padding-bottom: calc(var(--spacing) * 28);
1114
- }
1115
- .pb-36 {
1116
- padding-bottom: calc(var(--spacing) * 36);
1117
- }
1118
- .pb-44 {
1119
- padding-bottom: calc(var(--spacing) * 44);
1120
- }
1121
- .pb-48 {
1122
- padding-bottom: calc(var(--spacing) * 48);
1123
- }
1124
- .pl-8 {
1125
- padding-left: calc(var(--spacing) * 8);
1126
- }
1127
- .text-center {
1128
- text-align: center;
1129
- }
1130
- .text-left {
1131
- text-align: left;
1132
- }
1133
- .font-\[family-name\:var\(--font-headline\)\] {
1134
- font-family: var(--font-headline);
1135
- }
1136
- .font-mono {
1137
- font-family: var(--font-mono);
1138
- }
1139
- .text-2xl {
1140
- font-size: var(--text-2xl);
1141
- line-height: var(--tw-leading, var(--text-2xl--line-height));
1142
- }
1143
- .text-3xl {
1144
- font-size: var(--text-3xl);
1145
- line-height: var(--tw-leading, var(--text-3xl--line-height));
1146
- }
1147
- .text-4xl {
1148
- font-size: var(--text-4xl);
1149
- line-height: var(--tw-leading, var(--text-4xl--line-height));
1150
- }
1151
- .text-base {
1152
- font-size: var(--text-base);
1153
- line-height: var(--tw-leading, var(--text-base--line-height));
1154
- }
1155
- .text-lg {
1156
- font-size: var(--text-lg);
1157
- line-height: var(--tw-leading, var(--text-lg--line-height));
1158
- }
1159
- .text-sm {
1160
- font-size: var(--text-sm);
1161
- line-height: var(--tw-leading, var(--text-sm--line-height));
1162
- }
1163
- .text-xl {
1164
- font-size: var(--text-xl);
1165
- line-height: var(--tw-leading, var(--text-xl--line-height));
1166
- }
1167
- .text-xs {
1168
- font-size: var(--text-xs);
1169
- line-height: var(--tw-leading, var(--text-xs--line-height));
1170
- }
1171
- .text-\[10px\] {
1172
- font-size: 10px;
1173
- }
1174
- .text-\[11px\] {
1175
- font-size: 11px;
1176
- }
1177
- .leading-relaxed {
1178
- --tw-leading: var(--leading-relaxed);
1179
- line-height: var(--leading-relaxed);
1180
- }
1181
- .leading-snug {
1182
- --tw-leading: var(--leading-snug);
1183
- line-height: var(--leading-snug);
1184
- }
1185
- .leading-tight {
1186
- --tw-leading: var(--leading-tight);
1187
- line-height: var(--leading-tight);
1188
- }
1189
- .font-bold {
1190
- --tw-font-weight: var(--font-weight-bold);
1191
- font-weight: var(--font-weight-bold);
1192
- }
1193
- .font-extrabold {
1194
- --tw-font-weight: var(--font-weight-extrabold);
1195
- font-weight: var(--font-weight-extrabold);
1196
- }
1197
- .font-medium {
1198
- --tw-font-weight: var(--font-weight-medium);
1199
- font-weight: var(--font-weight-medium);
1200
- }
1201
- .font-semibold {
1202
- --tw-font-weight: var(--font-weight-semibold);
1203
- font-weight: var(--font-weight-semibold);
1204
- }
1205
- .tracking-\[0\.2em\] {
1206
- --tw-tracking: 0.2em;
1207
- letter-spacing: 0.2em;
1208
- }
1209
- .tracking-tight {
1210
- --tw-tracking: var(--tracking-tight);
1211
- letter-spacing: var(--tracking-tight);
1212
- }
1213
- .tracking-tighter {
1214
- --tw-tracking: var(--tracking-tighter);
1215
- letter-spacing: var(--tracking-tighter);
1216
- }
1217
- .tracking-wider {
1218
- --tw-tracking: var(--tracking-wider);
1219
- letter-spacing: var(--tracking-wider);
1220
- }
1221
- .tracking-widest {
1222
- --tw-tracking: var(--tracking-widest);
1223
- letter-spacing: var(--tracking-widest);
1224
- }
1225
- .whitespace-pre-wrap {
1226
- white-space: pre-wrap;
1227
- }
1228
- .text-\[var\(--badge-text\)\] {
1229
- color: var(--badge-text);
1230
- }
1231
- .text-\[var\(--owo-cmp-accent-bg\)\] {
1232
- color: var(--owo-cmp-accent-bg);
1233
- }
1234
- .text-\[var\(--owo-cmp-text-muted\)\] {
1235
- color: var(--owo-cmp-text-muted);
1236
- }
1237
- .text-\[var\(--owo-cmp-text-primary\)\] {
1238
- color: var(--owo-cmp-text-primary);
1239
- }
1240
- .text-\[var\(--owo-cmp-text-secondary\)\] {
1241
- color: var(--owo-cmp-text-secondary);
1242
- }
1243
- .text-\[var\(--owo-ref-color-neutral-500\)\] {
1244
- color: var(--owo-ref-color-neutral-500);
1245
- }
1246
- .text-\[var\(--owo-ref-color-neutral-600\)\] {
1247
- color: var(--owo-ref-color-neutral-600);
1248
- }
1249
- .text-\[var\(--owo-ref-color-neutral-700\)\] {
1250
- color: var(--owo-ref-color-neutral-700);
1251
- }
1252
- .text-\[var\(--owo-ref-color-neutral-800\)\] {
1253
- color: var(--owo-ref-color-neutral-800);
1254
- }
1255
- .text-current {
1256
- color: currentcolor;
1257
- }
1258
- .uppercase {
1259
- text-transform: uppercase;
1260
- }
1261
- .italic {
1262
- font-style: italic;
1263
- }
1264
- .opacity-50 {
1265
- opacity: 50%;
1266
- }
1267
- .opacity-60 {
1268
- opacity: 60%;
1269
- }
1270
- .opacity-80 {
1271
- opacity: 80%;
1272
- }
1273
- .shadow {
1274
- --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
1275
- box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1276
- }
1277
- .shadow-lg {
1278
- --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
1279
- box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1280
- }
1281
- .shadow-sm {
1282
- --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
1283
- box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1284
- }
1285
- .shadow-xl {
1286
- --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
1287
- box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1288
- }
1289
- .ring {
1290
- --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
1291
- box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1292
- }
1293
- .ring-1 {
1294
- --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
1295
- box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1296
- }
1297
- .outline {
1298
- outline-style: var(--tw-outline-style);
1299
- outline-width: 1px;
1300
- }
1301
- .blur {
1302
- --tw-blur: blur(8px);
1303
- filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
1304
- }
1305
- .backdrop-blur-sm {
1306
- --tw-backdrop-blur: blur(var(--blur-sm));
1307
- -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
1308
- backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
1309
- }
1310
- .transition-all {
1311
- transition-property: all;
1312
- transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
1313
- transition-duration: var(--tw-duration, var(--default-transition-duration));
1314
- }
1315
- .transition-colors {
1316
- transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
1317
- transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
1318
- transition-duration: var(--tw-duration, var(--default-transition-duration));
1319
- }
1320
- .transition-opacity {
1321
- transition-property: opacity;
1322
- transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
1323
- transition-duration: var(--tw-duration, var(--default-transition-duration));
1324
- }
1325
- .transition-transform {
1326
- transition-property: transform, translate, scale, rotate;
1327
- transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
1328
- transition-duration: var(--tw-duration, var(--default-transition-duration));
1329
- }
1330
- .duration-200 {
1331
- --tw-duration: 200ms;
1332
- transition-duration: 200ms;
1333
- }
1334
- .duration-\[var\(--owo-cmp-motion-duration-default\)\] {
1335
- --tw-duration: var(--owo-cmp-motion-duration-default);
1336
- transition-duration: var(--owo-cmp-motion-duration-default);
1337
- }
1338
- .ease-\[var\(--owo-cmp-motion-ease-standard\)\] {
1339
- --tw-ease: var(--owo-cmp-motion-ease-standard);
1340
- transition-timing-function: var(--owo-cmp-motion-ease-standard);
1341
- }
1342
- .select-none {
1343
- -webkit-user-select: none;
1344
- user-select: none;
1345
- }
1346
- .placeholder\:text-\[var\(--field-placeholder\)\] {
1347
- &::placeholder {
1348
- color: var(--field-placeholder);
1349
- }
1350
- }
1351
- .hover\:bg-\[var\(--owo-cmp-surface-bg-inset\)\] {
1352
- &:hover {
1353
- @media (hover: hover) {
1354
- background-color: var(--owo-cmp-surface-bg-inset);
1355
- }
1356
- }
1357
- }
1358
- .hover\:bg-\[var\(--owo-cmp-surface-bg-subtle\)\] {
1359
- &:hover {
1360
- @media (hover: hover) {
1361
- background-color: var(--owo-cmp-surface-bg-subtle);
1362
- }
1363
- }
1364
- }
1365
- .hover\:bg-\[var\(--owo-cmp-surface-container-highest\)\] {
1366
- &:hover {
1367
- @media (hover: hover) {
1368
- background-color: var(--owo-cmp-surface-container-highest);
1369
- }
1370
- }
1371
- }
1372
- .hover\:text-\[var\(--owo-cmp-text-primary\)\] {
1373
- &:hover {
1374
- @media (hover: hover) {
1375
- color: var(--owo-cmp-text-primary);
1376
- }
1377
- }
1378
- }
1379
- .hover\:opacity-80 {
1380
- &:hover {
1381
- @media (hover: hover) {
1382
- opacity: 80%;
1383
- }
1384
- }
1385
- }
1386
- .hover\:opacity-100 {
1387
- &:hover {
1388
- @media (hover: hover) {
1389
- opacity: 100%;
1390
- }
1391
- }
1392
- }
1393
- .focus\:not-sr-only {
1394
- &:focus {
1395
- position: static;
1396
- width: auto;
1397
- height: auto;
1398
- padding: 0;
1399
- margin: 0;
1400
- overflow: visible;
1401
- clip-path: none;
1402
- white-space: normal;
1403
- }
1404
- }
1405
- .focus\:absolute {
1406
- &:focus {
1407
- position: absolute;
1408
- }
1409
- }
1410
- .focus\:z-50 {
1411
- &:focus {
1412
- z-index: 50;
1413
- }
1414
- }
1415
- .focus\:rounded {
1416
- &:focus {
1417
- border-radius: 0.25rem;
1418
- }
1419
- }
1420
- .focus\:bg-\[var\(--owo-cmp-surface-bg\)\] {
1421
- &:focus {
1422
- background-color: var(--owo-cmp-surface-bg);
1423
- }
1424
- }
1425
- .focus\:px-4 {
1426
- &:focus {
1427
- padding-inline: calc(var(--spacing) * 4);
1428
- }
1429
- }
1430
- .focus\:py-2 {
1431
- &:focus {
1432
- padding-block: calc(var(--spacing) * 2);
1433
- }
1434
- }
1435
- .focus\:text-sm {
1436
- &:focus {
1437
- font-size: var(--text-sm);
1438
- line-height: var(--tw-leading, var(--text-sm--line-height));
1439
- }
1440
- }
1441
- .focus\:shadow {
1442
- &:focus {
1443
- --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
1444
- box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1445
- }
1446
- }
1447
- .focus\:ring-1 {
1448
- &:focus {
1449
- --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
1450
- box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1451
- }
1452
- }
1453
- .focus\:outline-none {
1454
- &:focus {
1455
- --tw-outline-style: none;
1456
- outline-style: none;
1457
- }
1458
- }
1459
- .focus-visible\:ring-1 {
1460
- &:focus-visible {
1461
- --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
1462
- box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1463
- }
1464
- }
1465
- .focus-visible\:ring-2 {
1466
- &:focus-visible {
1467
- --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
1468
- box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1469
- }
1470
- }
1471
- .focus-visible\:ring-offset-2 {
1472
- &:focus-visible {
1473
- --tw-ring-offset-width: 2px;
1474
- --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
1475
- }
1476
- }
1477
- .focus-visible\:ring-inset {
1478
- &:focus-visible {
1479
- --tw-ring-inset: inset;
1480
- }
1481
- }
1482
- .disabled\:cursor-not-allowed {
1483
- &:disabled {
1484
- cursor: not-allowed;
1485
- }
1486
- }
1487
- .disabled\:opacity-50 {
1488
- &:disabled {
1489
- opacity: 50%;
1490
- }
1491
- }
1492
- .disabled\:opacity-\[var\(--button-disabled-opacity\)\] {
1493
- &:disabled {
1494
- opacity: var(--button-disabled-opacity);
1495
- }
1496
- }
1497
- .sm\:block {
1498
- @media (width >= 40rem) {
1499
- display: block;
1500
- }
1501
- }
1502
- .sm\:grid-cols-3 {
1503
- @media (width >= 40rem) {
1504
- grid-template-columns: repeat(3, minmax(0, 1fr));
1505
- }
1506
- }
1507
- .md\:flex {
1508
- @media (width >= 48rem) {
1509
- display: flex;
1510
- }
1511
- }
1512
- .md\:flex-row {
1513
- @media (width >= 48rem) {
1514
- flex-direction: row;
1515
- }
1516
- }
1517
- .md\:items-center {
1518
- @media (width >= 48rem) {
1519
- align-items: center;
1520
- }
1521
- }
1522
- .md\:justify-between {
1523
- @media (width >= 48rem) {
1524
- justify-content: space-between;
1525
- }
1526
- }
1527
- .lg\:grid-cols-3 {
1528
- @media (width >= 64rem) {
1529
- grid-template-columns: repeat(3, minmax(0, 1fr));
1530
- }
1531
- }
1532
- .lg\:grid-cols-4 {
1533
- @media (width >= 64rem) {
1534
- grid-template-columns: repeat(4, minmax(0, 1fr));
1535
- }
1536
- }
1537
- .xl\:col-span-2 {
1538
- @media (width >= 80rem) {
1539
- grid-column: span 2 / span 2;
1540
- }
1541
- }
1542
- .xl\:grid-cols-3 {
1543
- @media (width >= 80rem) {
1544
- grid-template-columns: repeat(3, minmax(0, 1fr));
1545
- }
1546
- }
1547
- .xl\:grid-cols-4 {
1548
- @media (width >= 80rem) {
1549
- grid-template-columns: repeat(4, minmax(0, 1fr));
1550
- }
1551
- }
1552
- }
1
+ /* ================================================================== */
2
+ /* tokens.css — Standard CSS Variables (ref -> sys -> cmp) */
3
+ /* */
4
+ /* This file has TWO responsibilities: */
5
+ /* 1. :root: Raw/ref CSS variables as foundational primitives */
6
+ /* 2. :root: Shared ref -> sys -> cmp mapping chains */
7
+ /* */
8
+ /* Theme-specific values live in theme-light.css / theme-dark.css. */
9
+ /* Do NOT add theme-specific colors here. */
10
+ /* ================================================================== */
1553
11
  :root {
12
+ /* Neutral scale — initial values (light); overridden per-theme */
13
+ --owo-ref-color-neutral-900: #1a1a1a;
14
+ --owo-ref-color-neutral-800: #2d2d2d;
15
+ --owo-ref-color-neutral-700: #4a4a4a;
16
+ --owo-ref-color-neutral-600: #71717a;
17
+ --owo-ref-color-neutral-500: #a1a1aa;
18
+ --owo-ref-color-neutral-400: #d4d4d8;
19
+ --owo-ref-color-neutral-300: #e4e4e7;
20
+ --owo-ref-color-neutral-200: #f0f0f2;
21
+ --owo-ref-color-neutral-100: #f8f8f9;
22
+
23
+ /* Brand — initial values (light); overridden per-theme */
24
+ --owo-ref-color-brand-primary: #1a1a1a;
25
+ --owo-ref-color-brand-primary-hover: #000000;
26
+ --owo-ref-color-brand-accent: #4a4a4a;
27
+
28
+ /* Surface — initial values (light); overridden per-theme */
29
+ --owo-ref-color-surface-canvas: #ffffff;
30
+ --owo-ref-color-surface-base: #ffffff;
31
+ --owo-ref-color-surface-subtle: #fafaf9;
32
+ --owo-ref-color-surface-raised: #ffffff;
33
+ --owo-ref-color-surface-inset: #f5f5f4;
34
+ --owo-ref-color-surface-border: #e5e7eb;
35
+ --owo-ref-color-surface-ring: #d6d3d1;
36
+ --owo-ref-color-surface-overlay: rgba(0, 0, 0, 0.4);
37
+ --owo-ref-color-overlay-soft: rgba(244, 238, 230, 0.56);
38
+ --owo-ref-color-overlay-strong: rgba(15, 23, 42, 0.18);
39
+ --owo-ref-color-highlight-soft: rgba(255, 255, 255, 0.56);
40
+ --owo-ref-color-highlight-sheen: rgba(255, 255, 255, 0.34);
41
+ --owo-ref-color-text-on-brand: #ffffff;
42
+ --owo-ref-color-code-block-bg: #f4f4f5;
43
+ --owo-ref-color-code-block-border: #e4e4e7;
44
+ --owo-ref-color-code-block-divider: #ececed;
45
+ --owo-ref-color-code-inline-bg: #f4f4f5;
46
+ --owo-ref-shadow-raised: 0 10px 20px rgba(15, 23, 42, 0.08);
47
+ --owo-ref-shadow-popover: 0 18px 40px rgba(15, 23, 42, 0.10);
48
+
49
+ /* Status — initial values (light); overridden per-theme */
50
+ --owo-ref-color-status-success-bg: rgba(16, 185, 129, 0.10);
51
+ --owo-ref-color-status-success-border: rgba(16, 185, 129, 0.20);
52
+ --owo-ref-color-status-success-text: #047857;
53
+ --owo-ref-color-status-warning-bg: rgba(245, 158, 11, 0.10);
54
+ --owo-ref-color-status-warning-border: rgba(245, 158, 11, 0.20);
55
+ --owo-ref-color-status-warning-text: #b45309;
56
+ --owo-ref-color-status-danger-bg: rgba(239, 68, 68, 0.10);
57
+ --owo-ref-color-status-danger-border: rgba(239, 68, 68, 0.20);
58
+ --owo-ref-color-status-danger-text: #b91c1c;
59
+ --owo-ref-color-status-info-bg: rgba(14, 165, 233, 0.10);
60
+ --owo-ref-color-status-info-border: rgba(14, 165, 233, 0.20);
61
+ --owo-ref-color-status-info-text: #0369a1;
62
+
63
+ /* Typography — shared across all themes */
64
+ --owo-ref-font-sans: system-ui, -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", Roboto, sans-serif;
65
+ --owo-ref-font-heading: "Source Serif 4", Georgia, "Times New Roman", serif;
66
+ --owo-ref-font-mono: "JetBrains Mono", "Fira Code", ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;
67
+
68
+ /* Radius — shared across all themes */
69
+ --owo-ref-radius-0: 0px;
70
+ --owo-ref-radius-xs: 0.375rem;
71
+ --owo-ref-radius-sm: 0.5rem;
72
+ --owo-ref-radius-md: 0.75rem;
73
+ --owo-ref-radius-lg: 1rem;
74
+ --owo-ref-radius-xl: 1.5rem;
75
+ --owo-ref-radius-2xl: 2rem;
76
+ --owo-ref-radius-full: 9999px;
77
+
78
+ /* Motion — shared across all themes */
79
+ --owo-ref-motion-ease-standard: cubic-bezier(0.2, 0, 0, 1);
80
+ --owo-ref-motion-ease-decelerate: cubic-bezier(0, 0, 0, 1);
81
+ --owo-ref-motion-ease-accelerate: cubic-bezier(0.4, 0, 1, 1);
82
+ --owo-ref-motion-ease-exit: cubic-bezier(0.4, 0, 1, 1);
83
+
84
+ /* ================================================================ */
85
+ /* Shared mapping chains: ref -> sys -> cmp */
86
+ /* Theme files set --owo-sys-theme-*, presets set */
87
+ /* --owo-sys-preset-* and this layer exposes the final */
88
+ /* --owo-cmp-* component contracts. */
89
+ /* ================================================================ */
90
+
91
+ /* Preset defaults — theme -> preset (overridden by preset-*.css) */
1554
92
  --owo-sys-preset-surface-bg: var(--owo-sys-theme-surface-base);
1555
93
  --owo-sys-preset-surface-bg-subtle: var(--owo-sys-theme-surface-subtle);
1556
94
  --owo-sys-preset-surface-bg-raised: var(--owo-sys-theme-surface-raised);
@@ -1572,7 +110,14 @@
1572
110
  --owo-sys-preset-control-radius-xl: var(--owo-ref-radius-xl);
1573
111
  --owo-sys-preset-control-radius-2xl: var(--owo-ref-radius-2xl);
1574
112
  --owo-sys-preset-control-radius-full: var(--owo-ref-radius-full);
113
+ --owo-sys-preset-control-height-xs: 1.75rem;
114
+ --owo-sys-preset-control-height-sm: 2rem;
115
+ --owo-sys-preset-control-height-md: 2.25rem;
116
+ --owo-sys-preset-control-height-lg: 2.5rem;
117
+ --owo-sys-preset-control-height-xl: 3rem;
1575
118
  --owo-sys-preset-control-border-width: 1px;
119
+
120
+ /* Final component contract layer — preset/theme -> cmp */
1576
121
  --owo-cmp-surface-bg: var(--owo-sys-preset-surface-bg);
1577
122
  --owo-cmp-surface-bg-subtle: var(--owo-sys-preset-surface-bg-subtle);
1578
123
  --owo-cmp-surface-bg-raised: var(--owo-sys-preset-surface-bg-raised);
@@ -1583,20 +128,25 @@
1583
128
  --owo-cmp-surface-shadow: var(--owo-sys-preset-surface-shadow);
1584
129
  --owo-cmp-surface-shadow-strong: var(--owo-sys-preset-surface-shadow-strong);
1585
130
  --owo-cmp-surface-blur: var(--owo-sys-preset-surface-blur);
131
+
1586
132
  --owo-cmp-canvas-bg: var(--owo-sys-preset-canvas-bg);
1587
133
  --owo-cmp-canvas-bg-subtle: var(--owo-sys-preset-canvas-bg-subtle);
134
+
1588
135
  --owo-cmp-surface-container: var(--owo-sys-preset-surface-container);
1589
136
  --owo-cmp-surface-container-high: var(--owo-sys-preset-surface-container-high);
1590
137
  --owo-cmp-surface-container-highest: var(--owo-sys-preset-surface-container-highest);
138
+
1591
139
  --owo-cmp-text-primary: var(--owo-sys-theme-text-primary);
1592
140
  --owo-cmp-text-secondary: var(--owo-sys-theme-text-secondary);
1593
141
  --owo-cmp-text-muted: var(--owo-sys-theme-text-muted);
1594
142
  --owo-cmp-text-on-accent: var(--owo-sys-theme-text-on-accent);
143
+
1595
144
  --owo-cmp-accent-bg: var(--owo-sys-theme-accent-bg);
1596
145
  --owo-cmp-accent-bg-hover: var(--owo-sys-theme-accent-bg-hover);
1597
146
  --owo-cmp-accent-bg-muted: var(--owo-sys-theme-accent-bg-muted);
1598
147
  --owo-cmp-accent-text: var(--owo-sys-theme-text-on-accent);
1599
148
  --owo-cmp-accent-border: var(--owo-sys-theme-accent-border);
149
+
1600
150
  --owo-cmp-success-bg: var(--owo-sys-theme-success-bg);
1601
151
  --owo-cmp-success-border: var(--owo-sys-theme-success-border);
1602
152
  --owo-cmp-success-text: var(--owo-sys-theme-success-text);
@@ -1610,16 +160,25 @@
1610
160
  --owo-cmp-info-bg: var(--owo-sys-theme-info-bg);
1611
161
  --owo-cmp-info-border: var(--owo-sys-theme-info-border);
1612
162
  --owo-cmp-info-text: var(--owo-sys-theme-info-text);
163
+
1613
164
  --owo-cmp-control-radius-sm: var(--owo-sys-preset-control-radius-sm);
1614
165
  --owo-cmp-control-radius-md: var(--owo-sys-preset-control-radius-md);
1615
166
  --owo-cmp-control-radius-lg: var(--owo-sys-preset-control-radius-lg);
1616
167
  --owo-cmp-control-radius-xl: var(--owo-sys-preset-control-radius-xl);
1617
168
  --owo-cmp-control-radius-2xl: var(--owo-sys-preset-control-radius-2xl);
1618
169
  --owo-cmp-control-radius-full: var(--owo-sys-preset-control-radius-full);
170
+ --owo-cmp-control-height-xs: var(--owo-sys-preset-control-height-xs);
171
+ --owo-cmp-control-height-sm: var(--owo-sys-preset-control-height-sm);
172
+ --owo-cmp-control-height-md: var(--owo-sys-preset-control-height-md);
173
+ --owo-cmp-control-height-lg: var(--owo-sys-preset-control-height-lg);
174
+ --owo-cmp-control-height-xl: var(--owo-sys-preset-control-height-xl);
1619
175
  --owo-cmp-control-border-width: var(--owo-sys-preset-control-border-width);
1620
176
  --owo-cmp-control-focus-ring: var(--owo-sys-theme-control-focus-ring);
1621
177
  --owo-cmp-control-focus-ring-offset: var(--owo-sys-theme-control-focus-ring-offset);
178
+
1622
179
  --owo-cmp-font-heading: var(--owo-ref-font-heading);
180
+
181
+ /* Motion & density */
1623
182
  --owo-cmp-motion-duration-fast: 0.15s;
1624
183
  --owo-cmp-motion-duration-default: 0.2s;
1625
184
  --owo-cmp-motion-ease-standard: var(--owo-ref-motion-ease-standard);
@@ -1628,10 +187,14 @@
1628
187
  --owo-cmp-density-compact: 0.875;
1629
188
  --owo-cmp-density-default: 1;
1630
189
  --owo-cmp-density-comfortable: 1.125;
190
+
191
+ /* Overlay & layering */
1631
192
  --owo-cmp-overlay-bg: var(--owo-sys-theme-overlay-bg);
1632
193
  --owo-cmp-z-dropdown: 1000;
1633
194
  --owo-cmp-z-modal: 1100;
1634
195
  --owo-cmp-z-toast: 1200;
196
+
197
+ /* Feedback pattern — documented public contract (shared by Toast, StatusNotice) */
1635
198
  --owo-feedback-neutral-bg: var(--owo-cmp-surface-bg-raised);
1636
199
  --owo-feedback-neutral-border: var(--owo-cmp-surface-border);
1637
200
  --owo-feedback-neutral-text: var(--owo-cmp-text-primary);
@@ -1653,7 +216,8 @@
1653
216
  --owo-feedback-danger-text: var(--owo-cmp-danger-text);
1654
217
  --owo-feedback-danger-icon: var(--owo-cmp-danger-text);
1655
218
  }
1656
- :root {
219
+ :root[data-preset="default"],
220
+ .owoui-preset-default {
1657
221
  --owo-sys-preset-surface-bg: var(--owo-sys-theme-surface-base);
1658
222
  --owo-sys-preset-surface-bg-subtle: var(--owo-sys-theme-surface-subtle);
1659
223
  --owo-sys-preset-surface-bg-raised: var(--owo-sys-theme-surface-raised);
@@ -1675,88 +239,23 @@
1675
239
  --owo-sys-preset-control-radius-xl: var(--owo-ref-radius-xl);
1676
240
  --owo-sys-preset-control-radius-2xl: var(--owo-ref-radius-2xl);
1677
241
  --owo-sys-preset-control-radius-full: var(--owo-ref-radius-full);
242
+ --owo-sys-preset-control-height-xs: 1.75rem;
243
+ --owo-sys-preset-control-height-sm: 2rem;
244
+ --owo-sys-preset-control-height-md: 2.25rem;
245
+ --owo-sys-preset-control-height-lg: 2.5rem;
246
+ --owo-sys-preset-control-height-xl: 3rem;
1678
247
  --owo-sys-preset-control-border-width: 1px;
1679
- --owo-cmp-surface-bg: var(--owo-sys-preset-surface-bg);
1680
- --owo-cmp-surface-bg-subtle: var(--owo-sys-preset-surface-bg-subtle);
1681
- --owo-cmp-surface-bg-raised: var(--owo-sys-preset-surface-bg-raised);
1682
- --owo-cmp-surface-bg-inset: var(--owo-sys-preset-surface-bg-inset);
1683
- --owo-cmp-surface-border: var(--owo-sys-preset-surface-border);
1684
- --owo-cmp-surface-border-muted: var(--owo-sys-preset-surface-border-muted);
1685
- --owo-cmp-surface-border-strong: var(--owo-sys-preset-surface-border-strong);
1686
- --owo-cmp-surface-shadow: var(--owo-sys-preset-surface-shadow);
1687
- --owo-cmp-surface-shadow-strong: var(--owo-sys-preset-surface-shadow-strong);
1688
- --owo-cmp-surface-blur: var(--owo-sys-preset-surface-blur);
1689
- --owo-cmp-canvas-bg: var(--owo-sys-preset-canvas-bg);
1690
- --owo-cmp-canvas-bg-subtle: var(--owo-sys-preset-canvas-bg-subtle);
1691
- --owo-cmp-surface-container: var(--owo-sys-preset-surface-container);
1692
- --owo-cmp-surface-container-high: var(--owo-sys-preset-surface-container-high);
1693
- --owo-cmp-surface-container-highest: var(--owo-sys-preset-surface-container-highest);
1694
- --owo-cmp-text-primary: var(--owo-sys-theme-text-primary);
1695
- --owo-cmp-text-secondary: var(--owo-sys-theme-text-secondary);
1696
- --owo-cmp-text-muted: var(--owo-sys-theme-text-muted);
1697
- --owo-cmp-text-on-accent: var(--owo-sys-theme-text-on-accent);
1698
- --owo-cmp-accent-bg: var(--owo-sys-theme-accent-bg);
1699
- --owo-cmp-accent-bg-hover: var(--owo-sys-theme-accent-bg-hover);
1700
- --owo-cmp-accent-bg-muted: var(--owo-sys-theme-accent-bg-muted);
1701
- --owo-cmp-accent-text: var(--owo-sys-theme-text-on-accent);
1702
- --owo-cmp-accent-border: var(--owo-sys-theme-accent-border);
1703
- --owo-cmp-success-bg: var(--owo-sys-theme-success-bg);
1704
- --owo-cmp-success-border: var(--owo-sys-theme-success-border);
1705
- --owo-cmp-success-text: var(--owo-sys-theme-success-text);
1706
- --owo-cmp-warning-bg: var(--owo-sys-theme-warning-bg);
1707
- --owo-cmp-warning-border: var(--owo-sys-theme-warning-border);
1708
- --owo-cmp-warning-text: var(--owo-sys-theme-warning-text);
1709
- --owo-cmp-danger-bg: var(--owo-sys-theme-danger-bg);
1710
- --owo-cmp-danger-bg-emphasis: var(--owo-sys-theme-danger-bg-emphasis);
1711
- --owo-cmp-danger-border: var(--owo-sys-theme-danger-border);
1712
- --owo-cmp-danger-text: var(--owo-sys-theme-danger-text);
1713
- --owo-cmp-info-bg: var(--owo-sys-theme-info-bg);
1714
- --owo-cmp-info-border: var(--owo-sys-theme-info-border);
1715
- --owo-cmp-info-text: var(--owo-sys-theme-info-text);
1716
- --owo-cmp-control-radius-sm: var(--owo-sys-preset-control-radius-sm);
1717
- --owo-cmp-control-radius-md: var(--owo-sys-preset-control-radius-md);
1718
- --owo-cmp-control-radius-lg: var(--owo-sys-preset-control-radius-lg);
1719
- --owo-cmp-control-radius-xl: var(--owo-sys-preset-control-radius-xl);
1720
- --owo-cmp-control-radius-2xl: var(--owo-sys-preset-control-radius-2xl);
1721
- --owo-cmp-control-radius-full: var(--owo-sys-preset-control-radius-full);
1722
- --owo-cmp-control-border-width: var(--owo-sys-preset-control-border-width);
1723
- --owo-cmp-control-focus-ring: var(--owo-sys-theme-control-focus-ring);
1724
- --owo-cmp-control-focus-ring-offset: var(--owo-sys-theme-control-focus-ring-offset);
1725
- --owo-cmp-font-heading: var(--owo-ref-font-heading);
1726
- --owo-cmp-motion-duration-fast: 0.15s;
1727
- --owo-cmp-motion-duration-default: 0.2s;
1728
- --owo-cmp-motion-ease-standard: var(--owo-ref-motion-ease-standard);
1729
- --owo-cmp-motion-ease-decelerate: var(--owo-ref-motion-ease-decelerate);
1730
- --owo-cmp-motion-ease-accelerate: var(--owo-ref-motion-ease-accelerate);
1731
- --owo-cmp-density-compact: 0.875;
1732
- --owo-cmp-density-default: 1;
1733
- --owo-cmp-density-comfortable: 1.125;
1734
- --owo-cmp-overlay-bg: var(--owo-sys-theme-overlay-bg);
1735
- --owo-cmp-z-dropdown: 1000;
1736
- --owo-cmp-z-modal: 1100;
1737
- --owo-cmp-z-toast: 1200;
1738
- --owo-feedback-neutral-bg: var(--owo-cmp-surface-bg-raised);
1739
- --owo-feedback-neutral-border: var(--owo-cmp-surface-border);
1740
- --owo-feedback-neutral-text: var(--owo-cmp-text-primary);
1741
- --owo-feedback-neutral-icon: var(--owo-cmp-text-secondary);
1742
- --owo-feedback-info-bg: var(--owo-cmp-info-bg);
1743
- --owo-feedback-info-border: var(--owo-cmp-info-border);
1744
- --owo-feedback-info-text: var(--owo-cmp-info-text);
1745
- --owo-feedback-info-icon: var(--owo-cmp-info-text);
1746
- --owo-feedback-success-bg: var(--owo-cmp-success-bg);
1747
- --owo-feedback-success-border: var(--owo-cmp-success-border);
1748
- --owo-feedback-success-text: var(--owo-cmp-success-text);
1749
- --owo-feedback-success-icon: var(--owo-cmp-success-text);
1750
- --owo-feedback-warning-bg: var(--owo-cmp-warning-bg);
1751
- --owo-feedback-warning-border: var(--owo-cmp-warning-border);
1752
- --owo-feedback-warning-text: var(--owo-cmp-warning-text);
1753
- --owo-feedback-warning-icon: var(--owo-cmp-warning-text);
1754
- --owo-feedback-danger-bg: var(--owo-cmp-danger-bg);
1755
- --owo-feedback-danger-border: var(--owo-cmp-danger-border);
1756
- --owo-feedback-danger-text: var(--owo-cmp-danger-text);
1757
- --owo-feedback-danger-icon: var(--owo-cmp-danger-text);
1758
248
  }
1759
- :root, :root[data-theme="light"], .owoui-theme-light {
249
+ /* ================================================================== */
250
+ /* Light theme — all --owo-ref-* primitives + --owo-sys-theme-* maps */
251
+ /* */
252
+ /* :root (bare) is included so light acts as the default when no */
253
+ /* explicit data-theme is set. */
254
+ /* ================================================================== */
255
+ :root,
256
+ :root[data-theme="light"],
257
+ .owoui-theme-light {
258
+ /* Neutral scale */
1760
259
  --owo-ref-color-neutral-900: #1a1a1a;
1761
260
  --owo-ref-color-neutral-800: #2d2d2d;
1762
261
  --owo-ref-color-neutral-700: #4a4a4a;
@@ -1766,9 +265,13 @@
1766
265
  --owo-ref-color-neutral-300: #e4e4e7;
1767
266
  --owo-ref-color-neutral-200: #f0f0f2;
1768
267
  --owo-ref-color-neutral-100: #f8f8f9;
268
+
269
+ /* Brand */
1769
270
  --owo-ref-color-brand-primary: #1a1a1a;
1770
271
  --owo-ref-color-brand-primary-hover: #000000;
1771
272
  --owo-ref-color-brand-accent: #4a4a4a;
273
+
274
+ /* Surfaces */
1772
275
  --owo-ref-color-surface-canvas: #ffffff;
1773
276
  --owo-ref-color-surface-base: #ffffff;
1774
277
  --owo-ref-color-surface-subtle: #fafaf9;
@@ -1777,15 +280,23 @@
1777
280
  --owo-ref-color-surface-border: #e5e7eb;
1778
281
  --owo-ref-color-surface-ring: #d6d3d1;
1779
282
  --owo-ref-color-surface-overlay: rgba(0, 0, 0, 0.4);
283
+
284
+ /* Overlays & highlights */
1780
285
  --owo-ref-color-overlay-soft: rgba(244, 238, 230, 0.56);
1781
286
  --owo-ref-color-overlay-strong: rgba(15, 23, 42, 0.18);
1782
287
  --owo-ref-color-highlight-soft: rgba(255, 255, 255, 0.56);
1783
288
  --owo-ref-color-highlight-sheen: rgba(255, 255, 255, 0.34);
289
+
290
+ /* Text on brand */
1784
291
  --owo-ref-color-text-on-brand: #ffffff;
292
+
293
+ /* Code blocks */
1785
294
  --owo-ref-color-code-block-bg: #f4f4f5;
1786
295
  --owo-ref-color-code-block-border: #e4e4e7;
1787
296
  --owo-ref-color-code-block-divider: #ececed;
1788
297
  --owo-ref-color-code-inline-bg: #f4f4f5;
298
+
299
+ /* Status */
1789
300
  --owo-ref-color-status-success-bg: rgba(16, 185, 129, 0.10);
1790
301
  --owo-ref-color-status-success-border: rgba(16, 185, 129, 0.20);
1791
302
  --owo-ref-color-status-success-text: #047857;
@@ -1798,6 +309,8 @@
1798
309
  --owo-ref-color-status-info-bg: rgba(14, 165, 233, 0.10);
1799
310
  --owo-ref-color-status-info-border: rgba(14, 165, 233, 0.20);
1800
311
  --owo-ref-color-status-info-text: #0369a1;
312
+
313
+ /* ---- Theme semantic mappings (--owo-ref-* -> --owo-sys-theme-*) ---- */
1801
314
  --owo-sys-theme-surface-canvas: var(--owo-ref-color-surface-canvas);
1802
315
  --owo-sys-theme-surface-base: var(--owo-ref-color-surface-base);
1803
316
  --owo-sys-theme-surface-subtle: var(--owo-ref-color-surface-subtle);
@@ -1816,14 +329,8 @@
1816
329
  --owo-sys-theme-text-on-accent: var(--owo-ref-color-text-on-brand);
1817
330
  --owo-sys-theme-accent-bg: var(--owo-ref-color-brand-primary);
1818
331
  --owo-sys-theme-accent-bg-hover: var(--owo-ref-color-brand-primary-hover);
1819
- --owo-sys-theme-accent-bg-muted: color-mix(in srgb, #1a1a1a 10%, #ffffff);
1820
- @supports (color: color-mix(in lab, red, red)) {
1821
- --owo-sys-theme-accent-bg-muted: color-mix(in srgb, var(--owo-ref-color-brand-primary) 10%, var(--owo-ref-color-surface-base));
1822
- }
1823
- --owo-sys-theme-accent-border: color-mix(in srgb, #1a1a1a 40%, transparent);
1824
- @supports (color: color-mix(in lab, red, red)) {
1825
- --owo-sys-theme-accent-border: color-mix(in srgb, var(--owo-ref-color-brand-primary) 40%, transparent);
1826
- }
332
+ --owo-sys-theme-accent-bg-muted: color-mix(in srgb, var(--owo-ref-color-brand-primary) 10%, var(--owo-ref-color-surface-base));
333
+ --owo-sys-theme-accent-border: color-mix(in srgb, var(--owo-ref-color-brand-primary) 40%, transparent);
1827
334
  --owo-sys-theme-success-bg: var(--owo-ref-color-status-success-bg);
1828
335
  --owo-sys-theme-success-border: var(--owo-ref-color-status-success-border);
1829
336
  --owo-sys-theme-success-text: var(--owo-ref-color-status-success-text);
@@ -1841,1148 +348,8 @@
1841
348
  --owo-sys-theme-control-focus-ring-offset: var(--owo-ref-color-surface-base);
1842
349
  --owo-sys-theme-overlay-bg: var(--owo-ref-color-overlay-strong);
1843
350
  }
1844
- :root {
1845
- --owo-sys-preset-surface-bg: var(--owo-sys-theme-surface-base);
1846
- --owo-sys-preset-surface-bg-subtle: var(--owo-sys-theme-surface-subtle);
1847
- --owo-sys-preset-surface-bg-raised: var(--owo-sys-theme-surface-raised);
1848
- --owo-sys-preset-surface-bg-inset: var(--owo-sys-theme-surface-inset);
1849
- --owo-sys-preset-surface-border: var(--owo-sys-theme-surface-border);
1850
- --owo-sys-preset-surface-border-muted: var(--owo-sys-theme-surface-border-muted);
1851
- --owo-sys-preset-surface-border-strong: var(--owo-sys-theme-surface-border-strong);
1852
- --owo-sys-preset-surface-shadow: var(--owo-ref-shadow-raised);
1853
- --owo-sys-preset-surface-shadow-strong: var(--owo-ref-shadow-popover);
1854
- --owo-sys-preset-surface-blur: 0px;
1855
- --owo-sys-preset-canvas-bg: var(--owo-sys-theme-surface-canvas);
1856
- --owo-sys-preset-canvas-bg-subtle: var(--owo-sys-theme-canvas-bg-subtle);
1857
- --owo-sys-preset-surface-container: var(--owo-sys-theme-surface-container);
1858
- --owo-sys-preset-surface-container-high: var(--owo-sys-theme-surface-container-high);
1859
- --owo-sys-preset-surface-container-highest: var(--owo-sys-theme-surface-container-highest);
1860
- --owo-sys-preset-control-radius-sm: var(--owo-ref-radius-sm);
1861
- --owo-sys-preset-control-radius-md: var(--owo-ref-radius-md);
1862
- --owo-sys-preset-control-radius-lg: var(--owo-ref-radius-lg);
1863
- --owo-sys-preset-control-radius-xl: var(--owo-ref-radius-xl);
1864
- --owo-sys-preset-control-radius-2xl: var(--owo-ref-radius-2xl);
1865
- --owo-sys-preset-control-radius-full: var(--owo-ref-radius-full);
1866
- --owo-sys-preset-control-border-width: 1px;
1867
- --owo-cmp-surface-bg: var(--owo-sys-preset-surface-bg);
1868
- --owo-cmp-surface-bg-subtle: var(--owo-sys-preset-surface-bg-subtle);
1869
- --owo-cmp-surface-bg-raised: var(--owo-sys-preset-surface-bg-raised);
1870
- --owo-cmp-surface-bg-inset: var(--owo-sys-preset-surface-bg-inset);
1871
- --owo-cmp-surface-border: var(--owo-sys-preset-surface-border);
1872
- --owo-cmp-surface-border-muted: var(--owo-sys-preset-surface-border-muted);
1873
- --owo-cmp-surface-border-strong: var(--owo-sys-preset-surface-border-strong);
1874
- --owo-cmp-surface-shadow: var(--owo-sys-preset-surface-shadow);
1875
- --owo-cmp-surface-shadow-strong: var(--owo-sys-preset-surface-shadow-strong);
1876
- --owo-cmp-surface-blur: var(--owo-sys-preset-surface-blur);
1877
- --owo-cmp-canvas-bg: var(--owo-sys-preset-canvas-bg);
1878
- --owo-cmp-canvas-bg-subtle: var(--owo-sys-preset-canvas-bg-subtle);
1879
- --owo-cmp-surface-container: var(--owo-sys-preset-surface-container);
1880
- --owo-cmp-surface-container-high: var(--owo-sys-preset-surface-container-high);
1881
- --owo-cmp-surface-container-highest: var(--owo-sys-preset-surface-container-highest);
1882
- --owo-cmp-text-primary: var(--owo-sys-theme-text-primary);
1883
- --owo-cmp-text-secondary: var(--owo-sys-theme-text-secondary);
1884
- --owo-cmp-text-muted: var(--owo-sys-theme-text-muted);
1885
- --owo-cmp-text-on-accent: var(--owo-sys-theme-text-on-accent);
1886
- --owo-cmp-accent-bg: var(--owo-sys-theme-accent-bg);
1887
- --owo-cmp-accent-bg-hover: var(--owo-sys-theme-accent-bg-hover);
1888
- --owo-cmp-accent-bg-muted: var(--owo-sys-theme-accent-bg-muted);
1889
- --owo-cmp-accent-text: var(--owo-sys-theme-text-on-accent);
1890
- --owo-cmp-accent-border: var(--owo-sys-theme-accent-border);
1891
- --owo-cmp-success-bg: var(--owo-sys-theme-success-bg);
1892
- --owo-cmp-success-border: var(--owo-sys-theme-success-border);
1893
- --owo-cmp-success-text: var(--owo-sys-theme-success-text);
1894
- --owo-cmp-warning-bg: var(--owo-sys-theme-warning-bg);
1895
- --owo-cmp-warning-border: var(--owo-sys-theme-warning-border);
1896
- --owo-cmp-warning-text: var(--owo-sys-theme-warning-text);
1897
- --owo-cmp-danger-bg: var(--owo-sys-theme-danger-bg);
1898
- --owo-cmp-danger-bg-emphasis: var(--owo-sys-theme-danger-bg-emphasis);
1899
- --owo-cmp-danger-border: var(--owo-sys-theme-danger-border);
1900
- --owo-cmp-danger-text: var(--owo-sys-theme-danger-text);
1901
- --owo-cmp-info-bg: var(--owo-sys-theme-info-bg);
1902
- --owo-cmp-info-border: var(--owo-sys-theme-info-border);
1903
- --owo-cmp-info-text: var(--owo-sys-theme-info-text);
1904
- --owo-cmp-control-radius-sm: var(--owo-sys-preset-control-radius-sm);
1905
- --owo-cmp-control-radius-md: var(--owo-sys-preset-control-radius-md);
1906
- --owo-cmp-control-radius-lg: var(--owo-sys-preset-control-radius-lg);
1907
- --owo-cmp-control-radius-xl: var(--owo-sys-preset-control-radius-xl);
1908
- --owo-cmp-control-radius-2xl: var(--owo-sys-preset-control-radius-2xl);
1909
- --owo-cmp-control-radius-full: var(--owo-sys-preset-control-radius-full);
1910
- --owo-cmp-control-border-width: var(--owo-sys-preset-control-border-width);
1911
- --owo-cmp-control-focus-ring: var(--owo-sys-theme-control-focus-ring);
1912
- --owo-cmp-control-focus-ring-offset: var(--owo-sys-theme-control-focus-ring-offset);
1913
- --owo-cmp-font-heading: var(--owo-ref-font-heading);
1914
- --owo-cmp-motion-duration-fast: 0.15s;
1915
- --owo-cmp-motion-duration-default: 0.2s;
1916
- --owo-cmp-motion-ease-standard: var(--owo-ref-motion-ease-standard);
1917
- --owo-cmp-motion-ease-decelerate: var(--owo-ref-motion-ease-decelerate);
1918
- --owo-cmp-motion-ease-accelerate: var(--owo-ref-motion-ease-accelerate);
1919
- --owo-cmp-density-compact: 0.875;
1920
- --owo-cmp-density-default: 1;
1921
- --owo-cmp-density-comfortable: 1.125;
1922
- --owo-cmp-overlay-bg: var(--owo-sys-theme-overlay-bg);
1923
- --owo-cmp-z-dropdown: 1000;
1924
- --owo-cmp-z-modal: 1100;
1925
- --owo-cmp-z-toast: 1200;
1926
- --owo-feedback-neutral-bg: var(--owo-cmp-surface-bg-raised);
1927
- --owo-feedback-neutral-border: var(--owo-cmp-surface-border);
1928
- --owo-feedback-neutral-text: var(--owo-cmp-text-primary);
1929
- --owo-feedback-neutral-icon: var(--owo-cmp-text-secondary);
1930
- --owo-feedback-info-bg: var(--owo-cmp-info-bg);
1931
- --owo-feedback-info-border: var(--owo-cmp-info-border);
1932
- --owo-feedback-info-text: var(--owo-cmp-info-text);
1933
- --owo-feedback-info-icon: var(--owo-cmp-info-text);
1934
- --owo-feedback-success-bg: var(--owo-cmp-success-bg);
1935
- --owo-feedback-success-border: var(--owo-cmp-success-border);
1936
- --owo-feedback-success-text: var(--owo-cmp-success-text);
1937
- --owo-feedback-success-icon: var(--owo-cmp-success-text);
1938
- --owo-feedback-warning-bg: var(--owo-cmp-warning-bg);
1939
- --owo-feedback-warning-border: var(--owo-cmp-warning-border);
1940
- --owo-feedback-warning-text: var(--owo-cmp-warning-text);
1941
- --owo-feedback-warning-icon: var(--owo-cmp-warning-text);
1942
- --owo-feedback-danger-bg: var(--owo-cmp-danger-bg);
1943
- --owo-feedback-danger-border: var(--owo-cmp-danger-border);
1944
- --owo-feedback-danger-text: var(--owo-cmp-danger-text);
1945
- --owo-feedback-danger-icon: var(--owo-cmp-danger-text);
1946
- }
1947
- :root[data-preset="default"], .owoui-preset-default {
1948
- --owo-sys-preset-surface-bg: var(--owo-sys-theme-surface-base);
1949
- --owo-sys-preset-surface-bg-subtle: var(--owo-sys-theme-surface-subtle);
1950
- --owo-sys-preset-surface-bg-raised: var(--owo-sys-theme-surface-raised);
1951
- --owo-sys-preset-surface-bg-inset: var(--owo-sys-theme-surface-inset);
1952
- --owo-sys-preset-surface-border: var(--owo-sys-theme-surface-border);
1953
- --owo-sys-preset-surface-border-muted: var(--owo-sys-theme-surface-border-muted);
1954
- --owo-sys-preset-surface-border-strong: var(--owo-sys-theme-surface-border-strong);
1955
- --owo-sys-preset-surface-shadow: var(--owo-ref-shadow-raised);
1956
- --owo-sys-preset-surface-shadow-strong: var(--owo-ref-shadow-popover);
1957
- --owo-sys-preset-surface-blur: 0px;
1958
- --owo-sys-preset-canvas-bg: var(--owo-sys-theme-surface-canvas);
1959
- --owo-sys-preset-canvas-bg-subtle: var(--owo-sys-theme-canvas-bg-subtle);
1960
- --owo-sys-preset-surface-container: var(--owo-sys-theme-surface-container);
1961
- --owo-sys-preset-surface-container-high: var(--owo-sys-theme-surface-container-high);
1962
- --owo-sys-preset-surface-container-highest: var(--owo-sys-theme-surface-container-highest);
1963
- --owo-sys-preset-control-radius-sm: var(--owo-ref-radius-sm);
1964
- --owo-sys-preset-control-radius-md: var(--owo-ref-radius-md);
1965
- --owo-sys-preset-control-radius-lg: var(--owo-ref-radius-lg);
1966
- --owo-sys-preset-control-radius-xl: var(--owo-ref-radius-xl);
1967
- --owo-sys-preset-control-radius-2xl: var(--owo-ref-radius-2xl);
1968
- --owo-sys-preset-control-radius-full: var(--owo-ref-radius-full);
1969
- --owo-sys-preset-control-border-width: 1px;
1970
- }
1971
- .owo-avatar {
1972
- --avatar-bg: var(--owo-cmp-surface-bg-inset);
1973
- --avatar-text: var(--owo-cmp-text-secondary);
1974
- --avatar-border: transparent;
1975
- background: var(--avatar-bg);
1976
- color: var(--avatar-text);
1977
- border: 1px solid var(--avatar-border);
1978
- }
1979
- .owo-avatar[data-tone="subtle"] {
1980
- --avatar-bg: var(--owo-cmp-surface-bg-subtle);
1981
- --avatar-text: var(--owo-cmp-text-muted);
1982
- }
1983
- .owo-badge {
1984
- --badge-bg: var(--owo-cmp-surface-bg-inset);
1985
- --badge-text: var(--owo-cmp-text-secondary);
1986
- --badge-border: transparent;
1987
- background: var(--badge-bg);
1988
- border-color: var(--badge-border);
1989
- }
1990
- .owo-badge[data-variant="outline"] {
1991
- --badge-bg: transparent;
1992
- --badge-border: var(--owo-cmp-surface-border);
1993
- }
1994
- .owo-badge[data-tone="info"] {
1995
- --badge-bg: var(--owo-cmp-info-bg);
1996
- --badge-text: var(--owo-cmp-info-text);
1997
- --badge-border: var(--owo-cmp-info-border);
1998
- }
1999
- .owo-badge[data-tone="info"][data-variant="outline"] {
2000
- --badge-bg: transparent;
2001
- }
2002
- .owo-badge[data-tone="success"] {
2003
- --badge-bg: var(--owo-cmp-success-bg);
2004
- --badge-text: var(--owo-cmp-success-text);
2005
- --badge-border: var(--owo-cmp-success-border);
2006
- }
2007
- .owo-badge[data-tone="success"][data-variant="outline"] {
2008
- --badge-bg: transparent;
2009
- }
2010
- .owo-badge[data-tone="warning"] {
2011
- --badge-bg: var(--owo-cmp-warning-bg);
2012
- --badge-text: var(--owo-cmp-warning-text);
2013
- --badge-border: var(--owo-cmp-warning-border);
2014
- }
2015
- .owo-badge[data-tone="warning"][data-variant="outline"] {
2016
- --badge-bg: transparent;
2017
- }
2018
- .owo-badge[data-tone="danger"] {
2019
- --badge-bg: var(--owo-cmp-danger-bg);
2020
- --badge-text: var(--owo-cmp-danger-text);
2021
- --badge-border: var(--owo-cmp-danger-border);
2022
- }
2023
- .owo-badge[data-tone="danger"][data-variant="outline"] {
2024
- --badge-bg: transparent;
2025
- }
2026
- .owo-button {
2027
- --button-bg: var(--owo-cmp-surface-bg);
2028
- --button-bg-hover: var(--owo-cmp-surface-bg-inset);
2029
- --button-bg-active: var(--owo-cmp-surface-bg-subtle);
2030
- --button-text: var(--owo-cmp-text-primary);
2031
- --button-border: var(--owo-cmp-surface-border);
2032
- --button-ring: var(--owo-cmp-control-focus-ring);
2033
- --button-disabled-opacity: 0.5;
2034
- background: var(--button-bg);
2035
- color: var(--button-text);
2036
- border-color: var(--button-border);
2037
- }
2038
- .owo-button:hover {
2039
- background: var(--button-bg-hover);
2040
- }
2041
- .owo-button:active {
2042
- background: var(--button-bg-active);
2043
- }
2044
- .owo-button:focus-visible {
2045
- --tw-ring-color: var(--button-ring);
2046
- }
2047
- .owo-button[data-variant="primary"] {
2048
- --button-bg: var(--owo-cmp-accent-bg);
2049
- --button-bg-hover: var(--owo-cmp-accent-bg-hover);
2050
- --button-bg-active: var(--owo-cmp-accent-bg-hover);
2051
- @supports (color: color-mix(in lab, red, red)) {
2052
- --button-bg-active: color-mix(in srgb, var(--owo-cmp-accent-bg-hover) 88%, black);
2053
- }
2054
- --button-text: var(--owo-cmp-accent-text);
2055
- --button-border: transparent;
2056
- }
2057
- .owo-button[data-variant="ghost"] {
2058
- --button-bg: transparent;
2059
- --button-bg-hover: var(--owo-cmp-surface-bg-inset);
2060
- --button-bg-active: var(--owo-cmp-surface-bg-subtle);
2061
- --button-text: var(--owo-cmp-text-secondary);
2062
- --button-border: transparent;
2063
- }
2064
- .owo-button[data-variant="danger"] {
2065
- --button-bg: var(--owo-cmp-danger-bg);
2066
- --button-bg-hover: var(--owo-cmp-danger-bg);
2067
- @supports (color: color-mix(in lab, red, red)) {
2068
- --button-bg-hover: color-mix(in srgb, var(--owo-cmp-danger-bg) 92%, var(--owo-cmp-danger-border));
2069
- }
2070
- --button-bg-active: var(--owo-cmp-danger-bg);
2071
- @supports (color: color-mix(in lab, red, red)) {
2072
- --button-bg-active: color-mix(in srgb, var(--owo-cmp-danger-bg) 84%, var(--owo-cmp-danger-border));
2073
- }
2074
- --button-text: var(--owo-cmp-danger-text);
2075
- --button-border: var(--owo-cmp-danger-border);
2076
- --button-ring: var(--owo-cmp-danger-border);
2077
- }
2078
- .owo-collapsible__trigger {
2079
- cursor: pointer;
2080
- }
2081
- .owo-collapsible__content {
2082
- height: auto;
2083
- overflow: hidden;
2084
- transition: height 180ms ease;
2085
- }
2086
- .owo-collapsible__content-inner {
2087
- min-height: 0;
2088
- }
2089
- .owo-dialog-backdrop {
2090
- animation: dialog-backdrop-in 0.2s var(--owo-cmp-motion-ease-standard);
2091
- }
2092
- .owo-dialog {
2093
- background: var(--owo-cmp-surface-bg-raised);
2094
- border: 1px solid var(--owo-cmp-surface-border);
2095
- color: var(--owo-cmp-text-primary);
2096
- }
2097
- .owo-dialog__header {
2098
- color: var(--owo-cmp-text-primary);
2099
- }
2100
- .owo-dialog__body {
2101
- color: var(--owo-cmp-text-secondary);
2102
- }
2103
- @keyframes dialog-in {
2104
- from {
2105
- opacity: 0;
2106
- transform: scale(0.95) translateY(4px);
2107
- }
2108
- to {
2109
- opacity: 1;
2110
- transform: scale(1) translateY(0);
2111
- }
2112
- }
2113
- @keyframes dialog-backdrop-in {
2114
- from {
2115
- opacity: 0;
2116
- }
2117
- to {
2118
- opacity: 1;
2119
- }
2120
- }
2121
- .owo-dropdown-menu__content {
2122
- min-width: 12rem;
2123
- overflow-y: auto;
2124
- border: 1px solid var(--owo-cmp-surface-border);
2125
- border-radius: var(--owo-cmp-control-radius-lg);
2126
- background: var(--owo-cmp-surface-bg-raised);
2127
- box-shadow: var(--_owo-dropdown-menu-shadow, var(--owo-cmp-surface-shadow-strong));
2128
- padding: 0.375rem;
2129
- color: var(--owo-cmp-text-primary);
2130
- outline: none;
2131
- z-index: var(--owo-cmp-z-dropdown);
2132
- animation: owo-dropdown-menu-in var(--owo-cmp-motion-duration-fast) var(--owo-cmp-motion-ease-standard);
2133
- }
2134
- .owo-dropdown-menu__content[data-side="top"] {
2135
- transform-origin: bottom center;
2136
- }
2137
- .owo-dropdown-menu__content[data-side="bottom"] {
2138
- transform-origin: top center;
2139
- }
2140
- .owo-dropdown-menu__content[data-side="left"] {
2141
- transform-origin: center right;
2142
- }
2143
- .owo-dropdown-menu__content[data-side="right"] {
2144
- transform-origin: center left;
2145
- }
2146
- .owo-dropdown-menu__group + .owo-dropdown-menu__group {
2147
- margin-top: 0.375rem;
2148
- padding-top: 0.375rem;
2149
- border-top: 1px solid var(--owo-cmp-surface-border);
2150
- @supports (color: color-mix(in lab, red, red)) {
2151
- border-top: 1px solid color-mix(in srgb, var(--owo-cmp-surface-border) 80%, transparent);
2152
- }
2153
- }
2154
- .owo-dropdown-menu__label {
2155
- padding: 0.35rem 0.625rem 0.25rem;
2156
- font-size: 0.675rem;
2157
- font-weight: 700;
2158
- letter-spacing: 0.12em;
2159
- text-transform: uppercase;
2160
- color: var(--owo-cmp-text-muted);
2161
- }
2162
- .owo-dropdown-menu__separator {
2163
- margin: 0.375rem 0.25rem;
2164
- border-top: 1px solid var(--owo-cmp-surface-border);
2165
- @supports (color: color-mix(in lab, red, red)) {
2166
- border-top: 1px solid color-mix(in srgb, var(--owo-cmp-surface-border) 82%, transparent);
2167
- }
2168
- }
2169
- .owo-dropdown-menu__item {
2170
- display: flex;
2171
- width: 100%;
2172
- align-items: center;
2173
- gap: 0.75rem;
2174
- border: 0;
2175
- border-radius: calc(var(--owo-cmp-control-radius-md) - 0.125rem);
2176
- background: transparent;
2177
- padding: 0.625rem 0.75rem;
2178
- text-align: left;
2179
- color: inherit;
2180
- cursor: default;
2181
- transition: background-color var(--owo-cmp-motion-duration-fast) var(--owo-cmp-motion-ease-standard), color var(--owo-cmp-motion-duration-fast) var(--owo-cmp-motion-ease-standard);
2182
- }
2183
- .owo-dropdown-menu__item:hover, .owo-dropdown-menu__item[data-highlighted] {
2184
- background: var(--owo-cmp-surface-bg-inset);
2185
- }
2186
- .owo-dropdown-menu__item[data-selected] {
2187
- background: var(--owo-cmp-accent-bg);
2188
- @supports (color: color-mix(in lab, red, red)) {
2189
- background: color-mix(in srgb, var(--owo-cmp-accent-bg) 10%, var(--owo-cmp-surface-bg-raised));
2190
- }
2191
- }
2192
- .owo-dropdown-menu__item[data-selected] .owo-dropdown-menu__item-main {
2193
- color: var(--owo-cmp-text-primary);
2194
- font-weight: 600;
2195
- }
2196
- .owo-dropdown-menu__item[data-disabled] {
2197
- opacity: 0.5;
2198
- cursor: not-allowed;
2199
- }
2200
- .owo-dropdown-menu__item[data-destructive] {
2201
- color: var(--owo-cmp-danger-text);
2202
- }
2203
- .owo-dropdown-menu__item--inset {
2204
- padding-left: 1rem;
2205
- }
2206
- .owo-dropdown-menu__item-main {
2207
- min-width: 0;
2208
- flex: 1 1 auto;
2209
- overflow: hidden;
2210
- text-overflow: ellipsis;
2211
- white-space: nowrap;
2212
- }
2213
- .owo-dropdown-menu__shortcut, .owo-dropdown-menu__indicator, .owo-dropdown-menu__submenu-indicator {
2214
- flex: 0 0 auto;
2215
- color: var(--owo-cmp-text-muted);
2216
- font-size: 0.75rem;
2217
- }
2218
- .owo-dropdown-menu__indicator {
2219
- min-width: 1rem;
2220
- text-align: center;
2221
- color: var(--owo-cmp-accent-bg);
2222
- font-weight: 700;
2223
- }
2224
- .owo-dropdown-menu__sub-trigger[data-state="open"] {
2225
- background: var(--owo-cmp-surface-bg-inset);
2226
- }
2227
- @keyframes owo-dropdown-menu-in {
2228
- from {
2229
- opacity: 0;
2230
- transform: scale(0.98);
2231
- }
2232
- to {
2233
- opacity: 1;
2234
- transform: scale(1);
2235
- }
2236
- }
2237
- .owo-drawer {
2238
- --drawer-surface: var(--owo-cmp-surface-bg-raised);
2239
- --drawer-border: var(--owo-cmp-surface-border);
2240
- --drawer-shadow: var(--owo-cmp-surface-shadow-strong);
2241
- will-change: transform;
2242
- background: var(--drawer-surface);
2243
- border-color: var(--drawer-border);
2244
- box-shadow: var(--drawer-shadow);
2245
- }
2246
- .owo-drawer-backdrop {
2247
- --drawer-backdrop: var(--owo-cmp-overlay-bg);
2248
- border: 0;
2249
- background: var(--drawer-backdrop);
2250
- }
2251
- .owo-field {
2252
- --field-label: var(--owo-cmp-text-secondary);
2253
- --field-help: var(--owo-cmp-text-muted);
2254
- }
2255
- .owo-field__label {
2256
- color: var(--field-label);
2257
- }
2258
- .owo-field__help {
2259
- color: var(--field-help);
2260
- }
2261
- .owo-icon-button {
2262
- --icon-button-bg: transparent;
2263
- --icon-button-bg-hover: var(--owo-cmp-surface-bg-inset);
2264
- --icon-button-bg-active: var(--owo-cmp-surface-bg-subtle);
2265
- --icon-button-text: var(--owo-cmp-text-muted);
2266
- --icon-button-ring: var(--owo-cmp-control-focus-ring);
2267
- background: var(--icon-button-bg);
2268
- color: var(--icon-button-text);
2269
- }
2270
- .owo-icon-button:hover {
2271
- background: var(--icon-button-bg-hover);
2272
- color: var(--owo-cmp-text-primary);
2273
- }
2274
- .owo-icon-button:active {
2275
- background: var(--icon-button-bg-active);
2276
- }
2277
- .owo-icon-button:focus-visible {
2278
- --tw-ring-color: var(--icon-button-ring);
2279
- }
2280
- .owo-icon-button[data-variant="subtle"] {
2281
- --icon-button-bg: var(--owo-cmp-surface-bg-inset);
2282
- --icon-button-bg-hover: var(--owo-cmp-surface-bg-subtle);
2283
- --icon-button-bg-active: var(--owo-cmp-surface-bg-raised);
2284
- --icon-button-text: var(--owo-cmp-text-primary);
2285
- }
2286
- .owo-input {
2287
- --field-bg: var(--owo-cmp-surface-bg);
2288
- --field-border: var(--owo-cmp-surface-border);
2289
- --field-text: var(--owo-cmp-text-primary);
2290
- --field-placeholder: var(--owo-cmp-text-muted);
2291
- --field-ring: var(--owo-cmp-control-focus-ring);
2292
- background: var(--field-bg);
2293
- border: 1px solid var(--field-border);
2294
- color: var(--field-text);
2295
- --tw-ring-color: var(--field-ring);
2296
- }
2297
- .owo-input[data-tone="warning"] {
2298
- --field-border: var(--owo-cmp-warning-border);
2299
- --field-ring: var(--owo-cmp-warning-border);
2300
- }
2301
- .owo-panel {
2302
- --panel-bg: var(--owo-cmp-surface-bg);
2303
- --panel-border: var(--owo-cmp-surface-border);
2304
- --panel-section-border: var(--owo-cmp-surface-border);
2305
- --panel-shadow: none;
2306
- background: var(--panel-bg);
2307
- border-color: var(--panel-border);
2308
- box-shadow: var(--panel-shadow);
2309
- }
2310
- .owo-panel-header, .owo-panel-footer {
2311
- border-color: var(--panel-section-border);
2312
- }
2313
- .owo-panel[data-variant="subtle"] {
2314
- --panel-bg: var(--owo-cmp-surface-bg-subtle);
2315
- }
2316
- .owo-panel[data-variant="raised"] {
2317
- --panel-bg: var(--owo-cmp-surface-bg-raised);
2318
- --panel-shadow: var(--owo-cmp-surface-shadow);
2319
- }
2320
- .owo-segmented-control {
2321
- --segmented-bg: var(--owo-cmp-surface-bg-inset);
2322
- --segmented-border: var(--owo-cmp-surface-border);
2323
- --segmented-item-text: var(--owo-cmp-text-muted);
2324
- --segmented-item-hover-text: var(--owo-cmp-text-secondary);
2325
- --segmented-item-active-bg: var(--owo-cmp-surface-bg-raised);
2326
- --segmented-item-active-text: var(--owo-cmp-text-primary);
2327
- --segmented-ring: var(--owo-cmp-control-focus-ring);
2328
- background: var(--segmented-bg);
2329
- --tw-ring-color: var(--segmented-border);
2330
- }
2331
- .owo-segmented-control__item {
2332
- color: var(--segmented-item-text);
2333
- }
2334
- .owo-segmented-control__item:hover {
2335
- color: var(--segmented-item-hover-text);
2336
- }
2337
- .owo-segmented-control__item[data-active="true"] {
2338
- background: var(--segmented-item-active-bg);
2339
- color: var(--segmented-item-active-text);
2340
- }
2341
- .owo-segmented-control__item:focus-visible {
2342
- --tw-ring-color: var(--segmented-ring);
2343
- }
2344
- .owo-select__trigger {
2345
- --select-bg: var(--owo-cmp-surface-bg);
2346
- --select-border: var(--owo-cmp-surface-border);
2347
- --select-text: var(--owo-cmp-text-primary);
2348
- --select-ring: var(--owo-cmp-control-focus-ring);
2349
- background: var(--select-bg);
2350
- border: 0.5px solid var(--select-border);
2351
- color: var(--select-text);
2352
- --tw-ring-color: var(--select-ring);
2353
- }
2354
- .owo-select__trigger:hover:not(:disabled) {
2355
- --select-border: var(--owo-cmp-surface-border-strong);
2356
- }
2357
- .owo-select__trigger[data-open] {
2358
- --select-border: var(--owo-cmp-surface-border-strong);
2359
- }
2360
- .owo-select__trigger[data-tone="warning"] {
2361
- --select-border: var(--owo-cmp-warning-border);
2362
- --select-ring: var(--owo-cmp-warning-border);
2363
- }
2364
- .owo-select__trigger:disabled {
2365
- cursor: not-allowed;
2366
- opacity: 0.5;
2367
- }
2368
- .owo-select__placeholder {
2369
- color: var(--owo-cmp-text-muted);
2370
- }
2371
- .owo-select__chevron {
2372
- color: var(--owo-cmp-text-muted);
2373
- }
2374
- .owo-select__dropdown {
2375
- --select-dropdown-shadow: var(--owo-cmp-surface-shadow-strong);
2376
- background: var(--owo-cmp-surface-bg-raised);
2377
- --tw-ring-color: var(--owo-cmp-surface-border);
2378
- box-shadow: var(--select-dropdown-shadow);
2379
- }
2380
- .owo-select__option[data-focused] {
2381
- background: var(--owo-cmp-surface-bg-inset);
2382
- }
2383
- .owo-select__option[data-selected] {
2384
- color: var(--owo-cmp-accent-bg);
2385
- font-weight: 500;
2386
- }
2387
- .owo-skeleton {
2388
- --_owo-skeleton-scan-duration: 3.6s;
2389
- --skeleton-bg: linear-gradient(
2390
- 180deg,
2391
- var(--owo-cmp-surface-bg-inset) 0%,
2392
- var(--owo-cmp-surface-bg-inset) 100%
2393
- );
2394
- @supports (color: color-mix(in lab, red, red)) {
2395
- --skeleton-bg: linear-gradient(
2396
- 180deg,
2397
- color-mix(in srgb, var(--owo-cmp-surface-bg-inset) 94%, white) 0%,
2398
- color-mix(in srgb, var(--owo-cmp-surface-bg-inset) 100%, var(--owo-cmp-surface-border)) 100%
2399
- );
2400
- }
2401
- --skeleton-bg-emphasis: linear-gradient(
2402
- 180deg,
2403
- var(--owo-cmp-surface-bg-subtle) 0%,
2404
- var(--owo-cmp-surface-bg-inset) 100%
2405
- );
2406
- @supports (color: color-mix(in lab, red, red)) {
2407
- --skeleton-bg-emphasis: linear-gradient(
2408
- 180deg,
2409
- color-mix(in srgb, var(--owo-cmp-surface-bg-subtle) 78%, var(--owo-ref-color-highlight-soft)) 0%,
2410
- color-mix(in srgb, var(--owo-cmp-surface-bg-inset) 86%, var(--owo-cmp-surface-border)) 100%
2411
- );
2412
- }
2413
- --skeleton-sheen: linear-gradient(
2414
- 100deg,
2415
- transparent 0%,
2416
- color-mix(in srgb, rgba(255, 255, 255, 0.34) 10%, transparent) 28%,
2417
- color-mix(in srgb, rgba(255, 255, 255, 0.34) 35%, transparent) 40%,
2418
- var(--owo-ref-color-highlight-sheen) 50%,
2419
- color-mix(in srgb, rgba(255, 255, 255, 0.34) 35%, transparent) 60%,
2420
- color-mix(in srgb, rgba(255, 255, 255, 0.34) 10%, transparent) 72%,
2421
- transparent 100%
2422
- );
2423
- @supports (color: color-mix(in lab, red, red)) {
2424
- --skeleton-sheen: linear-gradient(
2425
- 100deg,
2426
- transparent 0%,
2427
- color-mix(in srgb, var(--owo-ref-color-highlight-sheen) 10%, transparent) 28%,
2428
- color-mix(in srgb, var(--owo-ref-color-highlight-sheen) 35%, transparent) 40%,
2429
- var(--owo-ref-color-highlight-sheen) 50%,
2430
- color-mix(in srgb, var(--owo-ref-color-highlight-sheen) 35%, transparent) 60%,
2431
- color-mix(in srgb, var(--owo-ref-color-highlight-sheen) 10%, transparent) 72%,
2432
- transparent 100%
2433
- );
2434
- }
2435
- --skeleton-top-highlight: var(--owo-ref-color-highlight-soft);
2436
- position: relative;
2437
- overflow: hidden;
2438
- background: var(--skeleton-bg);
2439
- box-shadow: inset 0 1px 0 var(--skeleton-top-highlight);
2440
- transform: translateZ(0);
2441
- }
2442
- .owo-skeleton[data-tone='emphasis'] {
2443
- background: var(--skeleton-bg-emphasis);
2444
- }
2445
- .owo-skeleton::before {
2446
- content: "";
2447
- position: absolute;
2448
- inset: 0;
2449
- background: inherit;
2450
- opacity: 0.84;
2451
- }
2452
- .owo-skeleton::after {
2453
- content: "";
2454
- position: absolute;
2455
- inset: -35%;
2456
- background: var(--skeleton-sheen);
2457
- transform: translateX(-140%) skewX(-14deg);
2458
- opacity: 0;
2459
- will-change: transform, opacity;
2460
- }
2461
- .owo-skeleton[data-animation='pulse']::after {
2462
- display: none;
2463
- }
2464
- .owo-skeleton[data-animation='pulse']::before {
2465
- animation: owo-skeleton-breathe 2.6s var(--owo-cmp-motion-ease-standard) infinite;
2466
- }
2467
- .owo-skeleton[data-animation='scan']::before {
2468
- opacity: 1;
2469
- filter: none;
2470
- }
2471
- .owo-skeleton[data-animation='scan']::after {
2472
- opacity: 1;
2473
- animation: owo-skeleton-scan var(--_owo-skeleton-scan-duration) cubic-bezier(0.3, 0, 0.2, 1) infinite;
2474
- }
2475
- @keyframes owo-skeleton-breathe {
2476
- 0%, 100% {
2477
- opacity: 0.8;
2478
- filter: saturate(0.96) brightness(0.98);
2479
- }
2480
- 50% {
2481
- opacity: 1;
2482
- filter: saturate(1.04) brightness(1.04);
2483
- }
2484
- }
2485
- @keyframes owo-skeleton-scan {
2486
- 0% {
2487
- transform: translateX(-140%) skewX(-14deg);
2488
- opacity: 0;
2489
- }
2490
- 18% {
2491
- opacity: 0.82;
2492
- }
2493
- 52% {
2494
- transform: translateX(6%) skewX(-14deg);
2495
- opacity: 1;
2496
- }
2497
- 82% {
2498
- opacity: 0.82;
2499
- }
2500
- 100% {
2501
- transform: translateX(140%) skewX(-14deg);
2502
- opacity: 0;
2503
- }
2504
- }
2505
- @media (prefers-reduced-motion: reduce) {
2506
- .owo-skeleton::before {
2507
- animation: none;
2508
- opacity: 0.94;
2509
- filter: none;
2510
- }
2511
- .owo-skeleton::after {
2512
- animation: none;
2513
- opacity: 0;
2514
- }
2515
- }
2516
- .owo-status-notice {
2517
- --status-notice-bg: var(--owo-feedback-neutral-bg);
2518
- --status-notice-border: var(--owo-feedback-neutral-border);
2519
- --status-notice-text: var(--owo-feedback-neutral-text);
2520
- --status-notice-icon: var(--owo-feedback-neutral-icon);
2521
- background: var(--status-notice-bg);
2522
- border-color: var(--status-notice-border);
2523
- color: var(--status-notice-text);
2524
- }
2525
- .owo-status-notice__icon {
2526
- color: var(--status-notice-icon);
2527
- }
2528
- .owo-status-notice__title {
2529
- color: var(--owo-cmp-text-primary);
2530
- }
2531
- .owo-status-notice[data-layout="vertical"] .owo-status-notice__title {
2532
- color: var(--status-notice-text);
2533
- }
2534
- .owo-status-notice[data-tone="info"] {
2535
- --status-notice-bg: var(--owo-feedback-info-bg);
2536
- --status-notice-border: var(--owo-feedback-info-border);
2537
- --status-notice-text: var(--owo-feedback-info-text);
2538
- --status-notice-icon: var(--owo-feedback-info-icon);
2539
- }
2540
- .owo-status-notice[data-tone="success"] {
2541
- --status-notice-bg: var(--owo-feedback-success-bg);
2542
- --status-notice-border: var(--owo-feedback-success-border);
2543
- --status-notice-text: var(--owo-feedback-success-text);
2544
- --status-notice-icon: var(--owo-feedback-success-icon);
2545
- }
2546
- .owo-status-notice[data-tone="warning"] {
2547
- --status-notice-bg: var(--owo-feedback-warning-bg);
2548
- --status-notice-border: var(--owo-feedback-warning-border);
2549
- --status-notice-text: var(--owo-feedback-warning-text);
2550
- --status-notice-icon: var(--owo-feedback-warning-icon);
2551
- }
2552
- .owo-status-notice[data-tone="danger"] {
2553
- --status-notice-bg: var(--owo-feedback-danger-bg);
2554
- --status-notice-border: var(--owo-feedback-danger-border);
2555
- --status-notice-text: var(--owo-feedback-danger-text);
2556
- --status-notice-icon: var(--owo-feedback-danger-icon);
2557
- }
2558
- .owo-switch {
2559
- background: var(--owo-cmp-surface-border-strong);
2560
- --tw-ring-color: var(--owo-cmp-control-focus-ring);
2561
- --tw-ring-offset-color: var(--owo-cmp-surface-bg);
2562
- }
2563
- .owo-switch[aria-checked="true"] {
2564
- background: var(--owo-cmp-accent-bg);
2565
- }
2566
- .owo-switch:hover:not(:disabled) {
2567
- background: var(--owo-cmp-surface-border-strong);
2568
- @supports (color: color-mix(in lab, red, red)) {
2569
- background: color-mix(in srgb, var(--owo-cmp-surface-border-strong) 82%, var(--owo-cmp-text-muted));
2570
- }
2571
- }
2572
- .owo-switch[aria-checked="true"]:hover:not(:disabled) {
2573
- background: var(--owo-cmp-accent-bg-hover);
2574
- }
2575
- .owo-tabs__list {
2576
- --tabs-border: var(--owo-cmp-surface-border);
2577
- border-color: var(--tabs-border);
2578
- }
2579
- .owo-tabs__trigger {
2580
- --tabs-text: var(--owo-cmp-text-muted);
2581
- --tabs-hover-text: var(--owo-cmp-text-secondary);
2582
- --tabs-active-text: var(--owo-cmp-text-primary);
2583
- --tabs-active-border: var(--owo-cmp-accent-border);
2584
- --tabs-active-bg: var(--owo-cmp-accent-bg-muted);
2585
- @supports (color: color-mix(in lab, red, red)) {
2586
- --tabs-active-bg: color-mix(in srgb, var(--owo-cmp-accent-bg-muted) 35%, transparent);
2587
- }
2588
- --tabs-ring: var(--owo-cmp-control-focus-ring);
2589
- border-bottom-color: transparent;
2590
- color: var(--tabs-text);
2591
- }
2592
- .owo-tabs__trigger:hover {
2593
- color: var(--tabs-hover-text);
2594
- }
2595
- .owo-tabs__trigger[data-state="active"] {
2596
- background: var(--tabs-active-bg);
2597
- border-bottom-color: var(--tabs-active-border);
2598
- color: var(--tabs-active-text);
2599
- }
2600
- .owo-tabs__trigger:focus-visible {
2601
- --tw-ring-color: var(--tabs-ring);
2602
- }
2603
- .owo-tabs__content {
2604
- color: var(--owo-cmp-text-primary);
2605
- }
2606
- .owo-textarea {
2607
- min-height: calc(1.5em * 3 + 1rem);
2608
- line-height: 1.5;
2609
- }
2610
- .owo-textarea[data-auto-resize="true"] {
2611
- overflow-y: hidden;
2612
- }
2613
- .owo-toast {
2614
- --toast-bg: var(--owo-feedback-neutral-bg);
2615
- --toast-border: var(--owo-feedback-neutral-border);
2616
- --toast-text: var(--owo-feedback-neutral-text);
2617
- --toast-icon: var(--owo-feedback-neutral-icon);
2618
- background: var(--toast-bg);
2619
- border-color: var(--toast-border);
2620
- color: var(--toast-text);
2621
- --toast-shadow: var(--owo-cmp-surface-shadow-strong);
2622
- box-shadow: var(--toast-shadow);
2623
- }
2624
- .owo-toast__icon {
2625
- color: var(--toast-icon);
2626
- }
2627
- .owo-toast__title {
2628
- color: inherit;
2629
- }
2630
- .owo-toast[data-tone="success"] {
2631
- --toast-bg: var(--owo-feedback-success-bg);
2632
- --toast-border: var(--owo-feedback-success-border);
2633
- --toast-text: var(--owo-feedback-success-text);
2634
- --toast-icon: var(--owo-feedback-success-icon);
2635
- }
2636
- .owo-toast[data-tone="warning"] {
2637
- --toast-bg: var(--owo-feedback-warning-bg);
2638
- --toast-border: var(--owo-feedback-warning-border);
2639
- --toast-text: var(--owo-feedback-warning-text);
2640
- --toast-icon: var(--owo-feedback-warning-icon);
2641
- }
2642
- .owo-toast[data-tone="danger"] {
2643
- --toast-bg: var(--owo-feedback-danger-bg);
2644
- --toast-border: var(--owo-feedback-danger-border);
2645
- --toast-text: var(--owo-feedback-danger-text);
2646
- --toast-icon: var(--owo-feedback-danger-icon);
2647
- }
2648
- .owo-toast[data-tone="info"] {
2649
- --toast-bg: var(--owo-feedback-info-bg);
2650
- --toast-border: var(--owo-feedback-info-border);
2651
- --toast-text: var(--owo-feedback-info-text);
2652
- --toast-icon: var(--owo-feedback-info-icon);
2653
- }
2654
- @keyframes toast-in {
2655
- from {
2656
- opacity: 0;
2657
- transform: translateY(8px) scale(0.96);
2658
- }
2659
- to {
2660
- opacity: 1;
2661
- transform: translateY(0) scale(1);
2662
- }
2663
- }
2664
- .owo-tooltip {
2665
- --tooltip-bg: var(--owo-cmp-surface-bg-raised);
2666
- --tooltip-border: var(--owo-cmp-surface-border);
2667
- --tooltip-text: var(--owo-cmp-text-primary);
2668
- --tooltip-shadow: var(--owo-cmp-surface-shadow-strong);
2669
- --tooltip-arrow-color: var(--tooltip-bg);
2670
- background: var(--tooltip-bg);
2671
- color: var(--tooltip-text);
2672
- border: 1px solid var(--tooltip-border);
2673
- box-shadow: 0 0 0 1px var(--tooltip-border), var(--tooltip-shadow);
2674
- @supports (color: color-mix(in lab, red, red)) {
2675
- box-shadow: 0 0 0 1px color-mix(in srgb, var(--tooltip-border) 55%, transparent), var(--tooltip-shadow);
2676
- }
2677
- backdrop-filter: blur(10px);
2678
- }
2679
- .owo-tooltip__arrow {
2680
- color: var(--tooltip-arrow-color);
2681
- filter: drop-shadow(0 1px 0 var(--tooltip-border)) drop-shadow(0 0 0.5px var(--tooltip-border));
2682
- @supports (color: color-mix(in lab, red, red)) {
2683
- filter: drop-shadow(0 1px 0 var(--tooltip-border)) drop-shadow(0 0 0.5px color-mix(in srgb, var(--tooltip-border) 55%, transparent));
2684
- }
2685
- }
2686
- @keyframes tooltip-in {
2687
- from {
2688
- opacity: 0;
2689
- transform: scale(0.96);
2690
- }
2691
- to {
2692
- opacity: 1;
2693
- transform: scale(1);
2694
- }
2695
- }
2696
- @property --tw-translate-x {
2697
- syntax: "*";
2698
- inherits: false;
2699
- initial-value: 0;
2700
- }
2701
- @property --tw-translate-y {
2702
- syntax: "*";
2703
- inherits: false;
2704
- initial-value: 0;
2705
- }
2706
- @property --tw-translate-z {
2707
- syntax: "*";
2708
- inherits: false;
2709
- initial-value: 0;
2710
- }
2711
- @property --tw-rotate-x {
2712
- syntax: "*";
2713
- inherits: false;
2714
- }
2715
- @property --tw-rotate-y {
2716
- syntax: "*";
2717
- inherits: false;
2718
- }
2719
- @property --tw-rotate-z {
2720
- syntax: "*";
2721
- inherits: false;
2722
- }
2723
- @property --tw-skew-x {
2724
- syntax: "*";
2725
- inherits: false;
2726
- }
2727
- @property --tw-skew-y {
2728
- syntax: "*";
2729
- inherits: false;
2730
- }
2731
- @property --tw-space-y-reverse {
2732
- syntax: "*";
2733
- inherits: false;
2734
- initial-value: 0;
2735
- }
2736
- @property --tw-divide-y-reverse {
2737
- syntax: "*";
2738
- inherits: false;
2739
- initial-value: 0;
2740
- }
2741
- @property --tw-border-style {
2742
- syntax: "*";
2743
- inherits: false;
2744
- initial-value: solid;
2745
- }
2746
- @property --tw-leading {
2747
- syntax: "*";
2748
- inherits: false;
2749
- }
2750
- @property --tw-font-weight {
2751
- syntax: "*";
2752
- inherits: false;
2753
- }
2754
- @property --tw-tracking {
2755
- syntax: "*";
2756
- inherits: false;
2757
- }
2758
- @property --tw-shadow {
2759
- syntax: "*";
2760
- inherits: false;
2761
- initial-value: 0 0 #0000;
2762
- }
2763
- @property --tw-shadow-color {
2764
- syntax: "*";
2765
- inherits: false;
2766
- }
2767
- @property --tw-shadow-alpha {
2768
- syntax: "<percentage>";
2769
- inherits: false;
2770
- initial-value: 100%;
2771
- }
2772
- @property --tw-inset-shadow {
2773
- syntax: "*";
2774
- inherits: false;
2775
- initial-value: 0 0 #0000;
2776
- }
2777
- @property --tw-inset-shadow-color {
2778
- syntax: "*";
2779
- inherits: false;
2780
- }
2781
- @property --tw-inset-shadow-alpha {
2782
- syntax: "<percentage>";
2783
- inherits: false;
2784
- initial-value: 100%;
2785
- }
2786
- @property --tw-ring-color {
2787
- syntax: "*";
2788
- inherits: false;
2789
- }
2790
- @property --tw-ring-shadow {
2791
- syntax: "*";
2792
- inherits: false;
2793
- initial-value: 0 0 #0000;
2794
- }
2795
- @property --tw-inset-ring-color {
2796
- syntax: "*";
2797
- inherits: false;
2798
- }
2799
- @property --tw-inset-ring-shadow {
2800
- syntax: "*";
2801
- inherits: false;
2802
- initial-value: 0 0 #0000;
2803
- }
2804
- @property --tw-ring-inset {
2805
- syntax: "*";
2806
- inherits: false;
2807
- }
2808
- @property --tw-ring-offset-width {
2809
- syntax: "<length>";
2810
- inherits: false;
2811
- initial-value: 0px;
2812
- }
2813
- @property --tw-ring-offset-color {
2814
- syntax: "*";
2815
- inherits: false;
2816
- initial-value: #fff;
2817
- }
2818
- @property --tw-ring-offset-shadow {
2819
- syntax: "*";
2820
- inherits: false;
2821
- initial-value: 0 0 #0000;
2822
- }
2823
- @property --tw-outline-style {
2824
- syntax: "*";
2825
- inherits: false;
2826
- initial-value: solid;
2827
- }
2828
- @property --tw-blur {
2829
- syntax: "*";
2830
- inherits: false;
2831
- }
2832
- @property --tw-brightness {
2833
- syntax: "*";
2834
- inherits: false;
2835
- }
2836
- @property --tw-contrast {
2837
- syntax: "*";
2838
- inherits: false;
2839
- }
2840
- @property --tw-grayscale {
2841
- syntax: "*";
2842
- inherits: false;
2843
- }
2844
- @property --tw-hue-rotate {
2845
- syntax: "*";
2846
- inherits: false;
2847
- }
2848
- @property --tw-invert {
2849
- syntax: "*";
2850
- inherits: false;
2851
- }
2852
- @property --tw-opacity {
2853
- syntax: "*";
2854
- inherits: false;
2855
- }
2856
- @property --tw-saturate {
2857
- syntax: "*";
2858
- inherits: false;
2859
- }
2860
- @property --tw-sepia {
2861
- syntax: "*";
2862
- inherits: false;
2863
- }
2864
- @property --tw-drop-shadow {
2865
- syntax: "*";
2866
- inherits: false;
2867
- }
2868
- @property --tw-drop-shadow-color {
2869
- syntax: "*";
2870
- inherits: false;
2871
- }
2872
- @property --tw-drop-shadow-alpha {
2873
- syntax: "<percentage>";
2874
- inherits: false;
2875
- initial-value: 100%;
2876
- }
2877
- @property --tw-drop-shadow-size {
2878
- syntax: "*";
2879
- inherits: false;
2880
- }
2881
- @property --tw-backdrop-blur {
2882
- syntax: "*";
2883
- inherits: false;
2884
- }
2885
- @property --tw-backdrop-brightness {
2886
- syntax: "*";
2887
- inherits: false;
2888
- }
2889
- @property --tw-backdrop-contrast {
2890
- syntax: "*";
2891
- inherits: false;
2892
- }
2893
- @property --tw-backdrop-grayscale {
2894
- syntax: "*";
2895
- inherits: false;
2896
- }
2897
- @property --tw-backdrop-hue-rotate {
2898
- syntax: "*";
2899
- inherits: false;
2900
- }
2901
- @property --tw-backdrop-invert {
2902
- syntax: "*";
2903
- inherits: false;
2904
- }
2905
- @property --tw-backdrop-opacity {
2906
- syntax: "*";
2907
- inherits: false;
2908
- }
2909
- @property --tw-backdrop-saturate {
2910
- syntax: "*";
2911
- inherits: false;
2912
- }
2913
- @property --tw-backdrop-sepia {
2914
- syntax: "*";
2915
- inherits: false;
2916
- }
2917
- @property --tw-duration {
2918
- syntax: "*";
2919
- inherits: false;
2920
- }
2921
- @property --tw-ease {
2922
- syntax: "*";
2923
- inherits: false;
2924
- }
2925
- @keyframes spin {
2926
- to {
2927
- transform: rotate(360deg);
2928
- }
2929
- }
2930
- @layer properties {
2931
- @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
2932
- *, ::before, ::after, ::backdrop {
2933
- --tw-translate-x: 0;
2934
- --tw-translate-y: 0;
2935
- --tw-translate-z: 0;
2936
- --tw-rotate-x: initial;
2937
- --tw-rotate-y: initial;
2938
- --tw-rotate-z: initial;
2939
- --tw-skew-x: initial;
2940
- --tw-skew-y: initial;
2941
- --tw-space-y-reverse: 0;
2942
- --tw-divide-y-reverse: 0;
2943
- --tw-border-style: solid;
2944
- --tw-leading: initial;
2945
- --tw-font-weight: initial;
2946
- --tw-tracking: initial;
2947
- --tw-shadow: 0 0 #0000;
2948
- --tw-shadow-color: initial;
2949
- --tw-shadow-alpha: 100%;
2950
- --tw-inset-shadow: 0 0 #0000;
2951
- --tw-inset-shadow-color: initial;
2952
- --tw-inset-shadow-alpha: 100%;
2953
- --tw-ring-color: initial;
2954
- --tw-ring-shadow: 0 0 #0000;
2955
- --tw-inset-ring-color: initial;
2956
- --tw-inset-ring-shadow: 0 0 #0000;
2957
- --tw-ring-inset: initial;
2958
- --tw-ring-offset-width: 0px;
2959
- --tw-ring-offset-color: #fff;
2960
- --tw-ring-offset-shadow: 0 0 #0000;
2961
- --tw-outline-style: solid;
2962
- --tw-blur: initial;
2963
- --tw-brightness: initial;
2964
- --tw-contrast: initial;
2965
- --tw-grayscale: initial;
2966
- --tw-hue-rotate: initial;
2967
- --tw-invert: initial;
2968
- --tw-opacity: initial;
2969
- --tw-saturate: initial;
2970
- --tw-sepia: initial;
2971
- --tw-drop-shadow: initial;
2972
- --tw-drop-shadow-color: initial;
2973
- --tw-drop-shadow-alpha: 100%;
2974
- --tw-drop-shadow-size: initial;
2975
- --tw-backdrop-blur: initial;
2976
- --tw-backdrop-brightness: initial;
2977
- --tw-backdrop-contrast: initial;
2978
- --tw-backdrop-grayscale: initial;
2979
- --tw-backdrop-hue-rotate: initial;
2980
- --tw-backdrop-invert: initial;
2981
- --tw-backdrop-opacity: initial;
2982
- --tw-backdrop-saturate: initial;
2983
- --tw-backdrop-sepia: initial;
2984
- --tw-duration: initial;
2985
- --tw-ease: initial;
2986
- }
2987
- }
351
+
352
+ @layer owoui.components {
353
+ .root{--avatar-bg: var(--owo-cmp-surface-bg-inset);--avatar-text: var(--owo-cmp-text-secondary);--avatar-border: transparent;display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;overflow:hidden;border-radius:var(--owo-cmp-control-radius-full);font-weight:500;user-select:none;background:var(--avatar-bg);color:var(--avatar-text);border:1px solid var(--avatar-border)}.root[data-size=xs]{height:1.5rem;width:1.5rem;font-size:10px}.root[data-size=sm]{height:2rem;width:2rem;font-size:.75rem;line-height:1rem}.root[data-size=md]{height:2.5rem;width:2.5rem;font-size:.875rem;line-height:1.25rem}.root[data-size=lg]{height:3.5rem;width:3.5rem;font-size:1.125rem;line-height:1.75rem}.root>img{height:100%;width:100%;object-fit:cover}.root[data-tone=subtle]{--avatar-bg: var(--owo-cmp-surface-bg-subtle);--avatar-text: var(--owo-cmp-text-muted)}.root{--badge-bg: var(--owo-cmp-surface-bg-inset);--badge-text: var(--owo-cmp-text-secondary);--badge-border: transparent;display:inline-flex;align-items:center;border-radius:var(--owo-cmp-control-radius-full);border:1px solid var(--badge-border);color:var(--badge-text);background:var(--badge-bg)}.root[data-size=xs]{padding:.25rem .625rem;font-size:11px}.root[data-size=sm]{padding:.25rem .75rem;font-size:.75rem;line-height:1rem;font-weight:500}.root[data-variant=outline]{--badge-bg: transparent;--badge-border: var(--owo-cmp-surface-border)}.root[data-tone=info]{--badge-bg: var(--owo-cmp-info-bg);--badge-text: var(--owo-cmp-info-text);--badge-border: var(--owo-cmp-info-border)}.root[data-tone=info][data-variant=outline]{--badge-bg: transparent}.root[data-tone=success]{--badge-bg: var(--owo-cmp-success-bg);--badge-text: var(--owo-cmp-success-text);--badge-border: var(--owo-cmp-success-border)}.root[data-tone=success][data-variant=outline]{--badge-bg: transparent}.root[data-tone=warning]{--badge-bg: var(--owo-cmp-warning-bg);--badge-text: var(--owo-cmp-warning-text);--badge-border: var(--owo-cmp-warning-border)}.root[data-tone=warning][data-variant=outline]{--badge-bg: transparent}.root[data-tone=danger]{--badge-bg: var(--owo-cmp-danger-bg);--badge-text: var(--owo-cmp-danger-text);--badge-border: var(--owo-cmp-danger-border)}.root[data-tone=danger][data-variant=outline]{--badge-bg: transparent}.root{display:inline-flex}.root[data-animate=spin]{animation:owo-spin 1s linear infinite}@keyframes owo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.root[data-animate=spin]{animation:none}}.root{--button-bg: var(--owo-cmp-surface-bg);--button-bg-hover: var(--owo-cmp-surface-bg-inset);--button-bg-active: var(--owo-cmp-surface-bg-subtle);--button-text: var(--owo-cmp-text-primary);--button-border: var(--owo-cmp-surface-border);--button-ring: var(--owo-cmp-control-focus-ring);--button-disabled-opacity: .5;display:inline-flex;align-items:center;justify-content:center;padding:0;gap:.5rem;border-radius:var(--owo-cmp-control-radius-md);border:1px solid var(--button-border);font-weight:500;transition-property:color,background-color,border-color;transition-duration:.15s;appearance:none;background:var(--button-bg);color:var(--button-text)}.root[data-size=xs]{min-height:var(--owo-cmp-control-height-xs);padding-inline:.625rem;font-size:.6875rem;line-height:.875rem}.root[data-size=sm]{min-height:var(--owo-cmp-control-height-sm);padding-inline:.75rem;font-size:.75rem;line-height:1rem}.root[data-size=md]{min-height:var(--owo-cmp-control-height-md);padding-inline:1rem;font-size:.875rem;line-height:1.25rem}.root[data-size=lg]{min-height:var(--owo-cmp-control-height-lg);padding-inline:1.125rem;font-size:.9375rem;line-height:1.375rem}.root[data-size=xl]{min-height:var(--owo-cmp-control-height-xl);padding-inline:1.25rem;font-size:1rem;line-height:1.5rem}.root:focus-visible{box-shadow:inset 0 0 0 2px var(--button-ring);outline:none}.root:hover{background:var(--button-bg-hover)}.root:active{background:var(--button-bg-active)}.root:disabled{cursor:not-allowed;opacity:var(--button-disabled-opacity)}.root[data-loading=true]{pointer-events:none;cursor:wait}.icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:0}.icon :global(svg){display:block}.label{display:inline-flex;align-items:center}.root[data-variant=primary]{--button-bg: var(--owo-cmp-accent-bg);--button-bg-hover: var(--owo-cmp-accent-bg-hover);--button-bg-active: color-mix(in srgb, var(--owo-cmp-accent-bg-hover) 88%, black);--button-text: var(--owo-cmp-accent-text);--button-border: transparent}.root[data-variant=ghost]{--button-bg: transparent;--button-bg-hover: var(--owo-cmp-surface-bg-inset);--button-bg-active: var(--owo-cmp-surface-bg-subtle);--button-text: var(--owo-cmp-text-secondary);--button-border: transparent}.root[data-variant=danger]{--button-bg: var(--owo-cmp-danger-bg);--button-bg-hover: color-mix(in srgb, var(--owo-cmp-danger-bg) 92%, var(--owo-cmp-danger-border));--button-bg-active: color-mix(in srgb, var(--owo-cmp-danger-bg) 84%, var(--owo-cmp-danger-border));--button-text: var(--owo-cmp-danger-text);--button-border: var(--owo-cmp-danger-border);--button-ring: var(--owo-cmp-danger-border)}:where(.root [data-part=trigger]){border:0;padding:0;appearance:none;background:var(--collapsible-trigger-bg, transparent);color:inherit;font:inherit;cursor:pointer;transition:background-color .18s ease,color .18s ease}:where(.root [data-part=trigger]:hover){background:var(--collapsible-trigger-bg-hover, var(--collapsible-trigger-bg, transparent))}:where(.root [data-part=trigger][data-state=open]){background:var(--collapsible-trigger-bg-open, var(--collapsible-trigger-bg-hover, var(--collapsible-trigger-bg, transparent)))}:where(.root [data-part=content]){height:auto;overflow:hidden;transition:height .18s ease;background:var(--collapsible-content-bg, transparent)}.triggerInner{display:flex;width:100%;align-items:center;gap:var(--collapsible-trigger-gap, .75rem)}.triggerIcon,.triggerIndicator{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;line-height:0;color:inherit}.triggerLabel{min-width:0;flex:1 1 auto;text-align:inherit}.contentInner{min-height:0}.overlay{position:fixed;inset:0;z-index:var(--owo-cmp-z-modal);display:flex;align-items:center;justify-content:center}.overlay [data-part=backdrop]{position:absolute;inset:0;padding:0;border:0;background:var(--owo-cmp-overlay-bg);animation:dialog-backdrop-in .2s var(--owo-cmp-motion-ease-standard)}.panel{position:relative;z-index:10;width:100%;border-radius:var(--owo-cmp-control-radius-xl);background:var(--owo-cmp-surface-bg-raised);border:1px solid var(--owo-cmp-surface-border);color:var(--owo-cmp-text-primary);box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;animation:dialog-in .2s var(--owo-cmp-motion-ease-standard)}.panel[data-size=sm]{max-width:26rem}.panel[data-size=md]{max-width:32rem}.overlay [data-part=header]{padding:1.25rem 1.25rem .25rem;font-size:1rem;line-height:1.5;font-weight:600;color:var(--owo-cmp-text-primary)}.overlay [data-part=body]{padding:.75rem 1.25rem;font-size:.875rem;line-height:1.25rem;color:var(--owo-cmp-text-secondary)}.overlay [data-part=footer]{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:.75rem 1.25rem 1.25rem}.confirmDescription{white-space:pre-wrap}@keyframes dialog-in{0%{opacity:0;transform:scale(.95) translateY(4px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes dialog-backdrop-in{0%{opacity:0}to{opacity:1}}.trigger{border:0;padding:0;appearance:none;background:transparent;color:inherit;font:inherit}.content{min-width:12rem;overflow-y:auto;border:1px solid var(--owo-cmp-surface-border);border-radius:var(--owo-cmp-control-radius-lg);background:var(--owo-cmp-surface-bg-raised);box-shadow:var(--_owo-dropdown-menu-shadow, var(--owo-cmp-surface-shadow-strong));padding:.375rem;color:var(--owo-cmp-text-primary);outline:none;z-index:var(--owo-cmp-z-dropdown);animation:owo-dropdown-menu-in var(--owo-cmp-motion-duration-fast) var(--owo-cmp-motion-ease-standard)}.content[data-side=top]{transform-origin:bottom center}.content[data-side=bottom]{transform-origin:top center}.content[data-side=left]{transform-origin:center right}.content[data-side=right]{transform-origin:center left}.content [data-part=group]+[data-part=group]{margin-top:.375rem;padding-top:.375rem;border-top:1px solid color-mix(in srgb,var(--owo-cmp-surface-border) 80%,transparent)}.content [data-part=label]{padding:.35rem .625rem .25rem;font-size:.675rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--owo-cmp-text-muted)}.content [data-part=separator]{margin:.375rem .25rem;border-top:1px solid color-mix(in srgb,var(--owo-cmp-surface-border) 82%,transparent)}.content [data-part=item],.subTrigger{display:flex;width:100%;align-items:center;gap:.75rem;border:0;border-radius:calc(var(--owo-cmp-control-radius-md) - .125rem);background:transparent;padding:.625rem .75rem;text-align:left;color:inherit;cursor:default;transition:background-color var(--owo-cmp-motion-duration-fast) var(--owo-cmp-motion-ease-standard),color var(--owo-cmp-motion-duration-fast) var(--owo-cmp-motion-ease-standard);appearance:none}.content [data-part=item]:hover,.content [data-part=item][data-highlighted],.subTrigger:hover,.subTrigger[data-highlighted]{background:var(--owo-cmp-surface-bg-inset)}.content [data-part=item][data-selected]{background:color-mix(in srgb,var(--owo-cmp-accent-bg) 10%,var(--owo-cmp-surface-bg-raised))}.content [data-part=item][data-selected] .itemMain{color:var(--owo-cmp-text-primary);font-weight:600}.content [data-part=item][data-disabled],.subTrigger[data-disabled]{opacity:.5;cursor:not-allowed}.content [data-part=item][data-destructive],.subTrigger[data-destructive]{color:var(--owo-cmp-danger-text)}.itemInset{padding-left:1rem}.itemMain{min-width:0;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shortcut,.indicator,.submenuIndicator{flex:0 0 auto;color:var(--owo-cmp-text-muted);font-size:.75rem}.indicator{min-width:1rem;text-align:center;color:var(--owo-cmp-accent-bg);font-weight:700}.subTrigger[data-state=open]{background:var(--owo-cmp-surface-bg-inset)}@keyframes owo-dropdown-menu-in{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.panel{--drawer-surface: var(--owo-cmp-surface-bg-raised);--drawer-border: var(--owo-cmp-surface-border);--drawer-shadow: var(--owo-cmp-surface-shadow-strong);z-index:calc(var(--owo-cmp-z-modal) + 1);display:flex;max-width:100%;flex-direction:column;will-change:transform;transform:translate(0);transition:transform var(--owo-cmp-motion-duration-default) var(--owo-cmp-motion-ease-standard);background:var(--drawer-surface);border-color:var(--drawer-border);box-shadow:var(--drawer-shadow)}.panel[data-position=fixed]{position:fixed}.panel[data-position=absolute]{position:absolute}.panel[data-side=left]{left:0;top:0}.panel[data-side=right]{right:0;top:0}.panel[data-state=open]{pointer-events:auto;visibility:visible;transform:translate(0)}.panel[data-state=closed]{pointer-events:none;visibility:hidden}.panel[data-state=closed][data-side=left]{transform:translate(-100%)}.panel[data-state=closed][data-side=right]{transform:translate(100%)}.backdrop{--drawer-backdrop: var(--owo-cmp-overlay-bg);inset:0;z-index:var(--owo-cmp-z-modal);padding:0;border:0;background:var(--drawer-backdrop)}.backdrop[data-position=fixed]{position:fixed}.backdrop[data-position=absolute]{position:absolute}.root{--field-label: var(--owo-cmp-text-secondary);--field-help: var(--owo-cmp-text-muted);display:block}.root .label{display:block;margin-bottom:.25rem;font-size:.75rem;line-height:1rem;color:var(--field-label)}.root .help{display:block;margin-top:.25rem;font-size:.75rem;line-height:1rem;color:var(--field-help)}.root{--icon-button-bg: transparent;--icon-button-bg-hover: var(--owo-cmp-surface-bg-inset);--icon-button-bg-active: var(--owo-cmp-surface-bg-subtle);--icon-button-text: var(--owo-cmp-text-muted);--icon-button-ring: var(--owo-cmp-control-focus-ring);display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:var(--owo-cmp-control-radius-md);transition-property:color,background-color;transition-duration:.15s;background:var(--icon-button-bg);color:var(--icon-button-text)}.root[data-size=xs]{height:var(--owo-cmp-control-height-xs);width:var(--owo-cmp-control-height-xs)}.root[data-size=sm]{height:var(--owo-cmp-control-height-sm);width:var(--owo-cmp-control-height-sm)}.root[data-size=md]{height:var(--owo-cmp-control-height-md);width:var(--owo-cmp-control-height-md)}.root[data-size=lg]{height:var(--owo-cmp-control-height-lg);width:var(--owo-cmp-control-height-lg)}.root[data-size=xl]{height:var(--owo-cmp-control-height-xl);width:var(--owo-cmp-control-height-xl)}.root:focus-visible{box-shadow:inset 0 0 0 2px var(--icon-button-ring);outline:none}.root:hover{background:var(--icon-button-bg-hover);color:var(--owo-cmp-text-primary)}.root:active{background:var(--icon-button-bg-active)}.root[data-variant=subtle]{--icon-button-bg: var(--owo-cmp-surface-bg-inset);--icon-button-bg-hover: var(--owo-cmp-surface-bg-subtle);--icon-button-bg-active: var(--owo-cmp-surface-bg-raised);--icon-button-text: var(--owo-cmp-text-primary)}.root{--field-bg: var(--owo-cmp-surface-bg);--field-border: var(--owo-cmp-surface-border);--field-text: var(--owo-cmp-text-primary);--field-placeholder: var(--owo-cmp-text-muted);--field-ring: var(--owo-cmp-control-focus-ring);background:var(--field-bg);border:1px solid var(--field-border);color:var(--field-text);width:100%;min-height:var(--owo-cmp-control-height-md);border-radius:var(--owo-cmp-control-radius-md);padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem}.root[data-size=xs]{min-height:var(--owo-cmp-control-height-xs);padding:.25rem .5rem;font-size:.6875rem;line-height:.875rem}.root[data-size=sm]{min-height:var(--owo-cmp-control-height-sm);padding:.375rem .625rem;font-size:.75rem;line-height:1rem}.root[data-size=lg]{min-height:var(--owo-cmp-control-height-lg);padding:.5625rem .875rem;font-size:.9375rem;line-height:1.375rem}.root[data-size=xl]{min-height:var(--owo-cmp-control-height-xl);padding:.75rem 1rem;font-size:1rem;line-height:1.5rem}.root::placeholder{color:var(--field-placeholder)}.root:hover:not(:disabled){--field-border: var(--owo-cmp-surface-border-strong)}.root:focus-visible{outline:none;--field-border: var(--field-ring);box-shadow:none}.root[data-tone=warning]{--field-border: var(--owo-cmp-warning-border);--field-ring: var(--owo-cmp-warning-border)}.root{--panel-bg: var(--owo-cmp-surface-bg);--panel-border: var(--owo-cmp-surface-border);--panel-section-border: var(--owo-cmp-surface-border);--panel-shadow: none;border-radius:var(--owo-cmp-control-radius-lg);border:1px solid var(--panel-border);background:var(--panel-bg);box-shadow:var(--panel-shadow)}.root[data-padding=sm]{padding:1rem}.root[data-padding=md]{padding:1.25rem}.root[data-padding=lg]{padding:1.5rem}.root [data-part=header]{border-bottom:1px solid var(--panel-section-border);padding:1.25rem 1.5rem}.root [data-part=body]{padding:1.25rem 1.5rem}.root [data-part=footer]{border-top:1px solid var(--panel-section-border);padding:1rem 1.5rem}.root[data-variant=subtle]{--panel-bg: var(--owo-cmp-surface-bg-subtle)}.root[data-variant=raised]{--panel-bg: var(--owo-cmp-surface-bg-raised);--panel-shadow: var(--owo-cmp-surface-shadow)}.root{--segmented-bg: var(--owo-cmp-surface-bg-inset);--segmented-border: var(--owo-cmp-surface-border);--segmented-item-text: var(--owo-cmp-text-muted);--segmented-item-hover-text: var(--owo-cmp-text-secondary);--segmented-item-active-bg: var(--owo-cmp-surface-bg-raised);--segmented-item-active-text: var(--owo-cmp-text-primary);--segmented-ring: var(--owo-cmp-control-focus-ring);display:inline-flex;border-radius:var(--owo-cmp-control-radius-md);padding:.125rem;background:var(--segmented-bg);box-shadow:0 0 0 1px var(--segmented-border)}.root[data-size=xs]{font-size:.6875rem;line-height:.875rem}.root[data-size=sm]{font-size:.75rem;line-height:1rem}.root[data-size=md]{font-size:.875rem;line-height:1.25rem}.root[data-size=lg]{font-size:.9375rem;line-height:1.375rem}.root[data-size=xl]{font-size:1rem;line-height:1.5rem}.item{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:var(--owo-cmp-control-radius-sm);background:transparent;font-weight:500;transition:color .15s,background-color .15s;color:var(--segmented-item-text)}.item:focus{outline:none}.item:focus-visible{box-shadow:inset 0 0 0 1px var(--segmented-ring)}.item:disabled{cursor:not-allowed;opacity:.5}.item:hover{color:var(--segmented-item-hover-text)}.item[data-active=true]{background:var(--segmented-item-active-bg);color:var(--segmented-item-active-text)}.root[data-size=xs]>.item{min-height:calc(var(--owo-cmp-control-height-xs) - .25rem);padding:.125rem .5rem}.root[data-size=sm]>.item{min-height:calc(var(--owo-cmp-control-height-sm) - .25rem);padding:.25rem .625rem}.root[data-size=md]>.item{min-height:calc(var(--owo-cmp-control-height-md) - .25rem);padding:.375rem .75rem}.root[data-size=lg]>.item{min-height:calc(var(--owo-cmp-control-height-lg) - .25rem);padding:.5rem .875rem}.root[data-size=xl]>.item{min-height:calc(var(--owo-cmp-control-height-xl) - .25rem);padding:.625rem 1rem}.root{position:relative;display:inline-block}.root [data-part=trigger]{--select-bg: var(--owo-cmp-surface-bg);--select-border: var(--owo-cmp-surface-border);--select-text: var(--owo-cmp-text-primary);--select-ring: var(--owo-cmp-control-focus-ring);display:flex;width:100%;align-items:center;justify-content:space-between;padding:0;gap:.5rem;border-radius:var(--owo-cmp-control-radius-md);text-align:left;transition:color .15s,background-color .15s,border-color .15s;appearance:none;background:var(--select-bg);border:.5px solid var(--select-border);color:var(--select-text)}.root [data-part=trigger]:focus-visible{outline:none;--select-border: var(--select-ring);box-shadow:none}.root [data-part=trigger][data-size=xs]{height:var(--owo-cmp-control-height-xs);min-height:var(--owo-cmp-control-height-xs);padding:0 .5rem;font-size:.6875rem;line-height:.875rem}.root [data-part=trigger][data-size=sm]{height:var(--owo-cmp-control-height-sm);min-height:var(--owo-cmp-control-height-sm);padding:0 .5rem;font-size:.75rem;line-height:1rem}.root [data-part=trigger][data-size=md]{height:var(--owo-cmp-control-height-md);min-height:var(--owo-cmp-control-height-md);padding:0 .75rem;font-size:.875rem;line-height:1.25rem}.root [data-part=trigger][data-size=lg]{height:var(--owo-cmp-control-height-lg);min-height:var(--owo-cmp-control-height-lg);padding:0 .875rem;font-size:.9375rem;line-height:1.375rem}.root [data-part=trigger][data-size=xl]{height:var(--owo-cmp-control-height-xl);min-height:var(--owo-cmp-control-height-xl);padding:0 1rem;font-size:1rem;line-height:1.5rem}.root [data-part=trigger]:hover:not(:disabled){--select-border: var(--owo-cmp-surface-border-strong)}.root [data-part=trigger][data-state=open]{--select-border: var(--owo-cmp-surface-border-strong)}.root [data-part=trigger][data-tone=warning]{--select-border: var(--owo-cmp-warning-border);--select-ring: var(--owo-cmp-warning-border)}.valueText{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.placeholder{color:var(--owo-cmp-text-muted)}.root [data-part=chevron]{width:.875rem;height:.875rem;flex-shrink:0;transition:transform .15s;color:var(--owo-cmp-text-muted)}.root [data-part=chevron][data-state=open]{transform:rotate(180deg)}.root [data-part=dropdown]{--select-dropdown-shadow: var(--owo-cmp-surface-shadow-strong);position:absolute;z-index:var(--owo-cmp-z-dropdown);margin-top:.25rem;max-height:15rem;width:100%;overflow:auto;border:1px solid var(--owo-cmp-surface-border);border-radius:var(--owo-cmp-control-radius-md);padding:.25rem 0;background:var(--owo-cmp-surface-bg-raised);box-shadow:var(--select-dropdown-shadow)}.root [data-part=dropdown][data-size=sm]{font-size:.75rem;line-height:1rem}.root [data-part=dropdown][data-size=md]{font-size:.875rem;line-height:1.25rem}.root [data-part=dropdown][data-size=xs]{font-size:.6875rem;line-height:.875rem}.root [data-part=dropdown][data-size=lg]{font-size:.9375rem;line-height:1.375rem}.root [data-part=dropdown][data-size=xl]{font-size:1rem;line-height:1.5rem}.root [data-part=option]{cursor:default;user-select:none;padding:.375rem .75rem;transition:background-color .15s}.root [data-part=option][data-disabled]{cursor:not-allowed;opacity:.5}.root [data-part=option][data-focused]{background:var(--owo-cmp-surface-bg-inset)}.root [data-part=option][data-selected]{color:var(--owo-cmp-accent-bg);font-weight:500}.root{border-radius:var(--owo-cmp-control-radius-sm);--_owo-skeleton-scan-duration: 3.6s;--skeleton-bg: linear-gradient( 180deg, color-mix(in srgb, var(--owo-cmp-surface-bg-inset) 94%, white) 0%, color-mix(in srgb, var(--owo-cmp-surface-bg-inset) 100%, var(--owo-cmp-surface-border)) 100% );--skeleton-bg-emphasis: linear-gradient( 180deg, color-mix(in srgb, var(--owo-cmp-surface-bg-subtle) 78%, var(--owo-ref-color-highlight-soft)) 0%, color-mix(in srgb, var(--owo-cmp-surface-bg-inset) 86%, var(--owo-cmp-surface-border)) 100% );--skeleton-sheen: linear-gradient( 100deg, transparent 0%, color-mix(in srgb, var(--owo-ref-color-highlight-sheen) 10%, transparent) 28%, color-mix(in srgb, var(--owo-ref-color-highlight-sheen) 35%, transparent) 40%, var(--owo-ref-color-highlight-sheen) 50%, color-mix(in srgb, var(--owo-ref-color-highlight-sheen) 35%, transparent) 60%, color-mix(in srgb, var(--owo-ref-color-highlight-sheen) 10%, transparent) 72%, transparent 100% );--skeleton-top-highlight: var(--owo-ref-color-highlight-soft);position:relative;overflow:hidden;background:var(--skeleton-bg);box-shadow:inset 0 1px 0 var(--skeleton-top-highlight);transform:translateZ(0)}.root[data-tone=emphasis]{background:var(--skeleton-bg-emphasis)}.root:before{content:"";position:absolute;inset:0;background:inherit;opacity:.84}.root:after{content:"";position:absolute;inset:-35%;background:var(--skeleton-sheen);transform:translate(-140%) skew(-14deg);opacity:0;will-change:transform,opacity}.root[data-animation=pulse]:after{display:none}.root[data-animation=pulse]:before{animation:owo-skeleton-breathe 2.6s var(--owo-cmp-motion-ease-standard) infinite}.root[data-animation=scan]:before{opacity:1;filter:none}.root[data-animation=scan]:after{opacity:1;animation:owo-skeleton-scan var(--_owo-skeleton-scan-duration) cubic-bezier(.3,0,.2,1) infinite}@keyframes owo-skeleton-breathe{0%,to{opacity:.8;filter:saturate(.96) brightness(.98)}50%{opacity:1;filter:saturate(1.04) brightness(1.04)}}@keyframes owo-skeleton-scan{0%{transform:translate(-140%) skew(-14deg);opacity:0}18%{opacity:.82}52%{transform:translate(6%) skew(-14deg);opacity:1}82%{opacity:.82}to{transform:translate(140%) skew(-14deg);opacity:0}}@media(prefers-reduced-motion:reduce){.root:before{animation:none;opacity:.94;filter:none}.root:after{animation:none;opacity:0}}.root{--status-notice-bg: var(--owo-feedback-neutral-bg);--status-notice-border: var(--owo-feedback-neutral-border);--status-notice-text: var(--owo-feedback-neutral-text);--status-notice-icon: var(--owo-feedback-neutral-icon);border-radius:var(--owo-cmp-control-radius-md);border-width:1px;border-style:solid;padding:.75rem 1rem;font-size:.875rem;line-height:1.25rem;background:var(--status-notice-bg);border-color:var(--status-notice-border);color:var(--status-notice-text)}.withIcon{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.75rem}.icon{color:var(--status-notice-icon)}.root:not([data-layout=vertical]) .icon{margin-top:.125rem;flex-shrink:0}.text{min-width:0}.title{font-weight:500;color:var(--owo-cmp-text-primary)}.root[data-layout=vertical]{border-radius:var(--owo-cmp-control-radius-lg)}.root[data-layout=vertical] .body{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem 0;text-align:center}.root[data-layout=vertical] .icon{font-size:1.125rem;line-height:1.75rem}.root[data-layout=vertical] .title{color:var(--status-notice-text)}.root[data-layout=vertical] .action{margin-top:.5rem}.root[data-tone=info]{--status-notice-bg: var(--owo-feedback-info-bg);--status-notice-border: var(--owo-feedback-info-border);--status-notice-text: var(--owo-feedback-info-text);--status-notice-icon: var(--owo-feedback-info-icon)}.root[data-tone=success]{--status-notice-bg: var(--owo-feedback-success-bg);--status-notice-border: var(--owo-feedback-success-border);--status-notice-text: var(--owo-feedback-success-text);--status-notice-icon: var(--owo-feedback-success-icon)}.root[data-tone=warning]{--status-notice-bg: var(--owo-feedback-warning-bg);--status-notice-border: var(--owo-feedback-warning-border);--status-notice-text: var(--owo-feedback-warning-text);--status-notice-icon: var(--owo-feedback-warning-icon)}.root[data-tone=danger]{--status-notice-bg: var(--owo-feedback-danger-bg);--status-notice-border: var(--owo-feedback-danger-border);--status-notice-text: var(--owo-feedback-danger-text);--status-notice-icon: var(--owo-feedback-danger-icon)}.root{--switch-track-width: calc(var(--owo-cmp-control-height-md) + .5rem);--switch-thumb-size: 1.125rem;--switch-thumb-offset: .125rem;position:relative;display:inline-flex;flex-shrink:0;cursor:pointer;align-items:center;padding:0;box-sizing:border-box;border-radius:var(--owo-cmp-control-radius-full);border:2px solid transparent;transition:background-color .15s,border-color .15s;background:var(--owo-cmp-surface-border-strong)}.root:focus{outline:none}.root:focus-visible{box-shadow:0 0 0 2px var(--owo-cmp-surface-bg),0 0 0 4px var(--owo-cmp-control-focus-ring)}.root:disabled{cursor:not-allowed;opacity:.5}.root[data-size=xs]{height:calc(var(--owo-cmp-control-height-xs) - .75rem);width:calc(var(--owo-cmp-control-height-xs) + .25rem);--switch-track-width: calc(var(--owo-cmp-control-height-xs) + .25rem);--switch-thumb-size: .625rem}.root[data-size=sm]{height:calc(var(--owo-cmp-control-height-sm) - .75rem);width:calc(var(--owo-cmp-control-height-sm) + .25rem);--switch-track-width: calc(var(--owo-cmp-control-height-sm) + .25rem);--switch-thumb-size: .875rem}.root[data-size=md]{height:calc(var(--owo-cmp-control-height-md) - .75rem);width:calc(var(--owo-cmp-control-height-md) + .5rem);--switch-track-width: calc(var(--owo-cmp-control-height-md) + .5rem);--switch-thumb-size: 1.125rem}.root[data-size=lg]{height:calc(var(--owo-cmp-control-height-lg) - .75rem);width:calc(var(--owo-cmp-control-height-lg) + .5rem);--switch-track-width: calc(var(--owo-cmp-control-height-lg) + .5rem);--switch-thumb-size: 1.375rem}.root[data-size=xl]{height:calc(var(--owo-cmp-control-height-xl) - .75rem);width:calc(var(--owo-cmp-control-height-xl) + .5rem);--switch-track-width: calc(var(--owo-cmp-control-height-xl) + .5rem);--switch-thumb-size: 1.875rem}.root[aria-checked=true]{background:var(--owo-cmp-accent-bg)}.root:hover:not(:disabled){background:color-mix(in srgb,var(--owo-cmp-surface-border-strong) 82%,var(--owo-cmp-text-muted))}.root[aria-checked=true]:hover:not(:disabled){background:var(--owo-cmp-accent-bg-hover)}.root .thumb{pointer-events:none;display:inline-block;border-radius:var(--owo-cmp-control-radius-full);background:#fff;box-shadow:0 1px 3px #00000026;transition:transform .15s;transform:translate(var(--switch-thumb-offset))}.root[data-size=xs]>.thumb{height:.625rem;width:.625rem}.root[data-size=sm]>.thumb{height:.875rem;width:.875rem}.root[data-size=md]>.thumb{height:1.125rem;width:1.125rem}.root[data-size=lg]>.thumb{height:1.375rem;width:1.375rem}.root[data-size=xl]>.thumb{height:1.875rem;width:1.875rem}.root[aria-checked=true]>.thumb{transform:translate(calc(var(--switch-track-width) - var(--switch-thumb-size) - var(--switch-thumb-offset)))}.root [data-part=list]{--tabs-border: var(--owo-cmp-surface-border);display:flex;align-items:flex-end;gap:.25rem;border-bottom-width:1px;border-bottom-style:solid;border-color:var(--tabs-border)}.root [data-part=trigger]{--tabs-text: var(--owo-cmp-text-muted);--tabs-hover-text: var(--owo-cmp-text-secondary);--tabs-active-text: var(--owo-cmp-text-primary);--tabs-active-border: var(--owo-cmp-accent-border);--tabs-active-bg: color-mix(in srgb, var(--owo-cmp-accent-bg-muted) 35%, transparent);--tabs-ring: var(--owo-cmp-control-focus-ring);position:relative;margin-bottom:-1px;display:inline-flex;min-height:var(--owo-cmp-control-height-md);align-items:center;justify-content:center;border:0;border-top-left-radius:var(--owo-cmp-control-radius-md);border-top-right-radius:var(--owo-cmp-control-radius-md);border-bottom:2px solid transparent;padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;font-weight:500;transition:color .15s ease;appearance:none;background:transparent;color:var(--tabs-text)}.root [data-part=trigger]:focus{outline:none}.root [data-part=trigger]:focus-visible{box-shadow:inset 0 0 0 2px var(--tabs-ring)}.root [data-part=trigger]:disabled{cursor:not-allowed;opacity:.5}.root [data-part=trigger]:hover{color:var(--tabs-hover-text)}.root [data-part=trigger][data-state=active]{background:var(--tabs-active-bg);border-bottom-color:var(--tabs-active-border);color:var(--tabs-active-text)}.root [data-part=content]{padding-top:1rem;color:var(--owo-cmp-text-primary)}.root{min-height:calc(4.5em + 1rem);line-height:1.5}.root[data-auto-resize=true]{overflow-y:hidden}.container{pointer-events:none;position:fixed;bottom:1rem;right:1rem;z-index:var(--owo-cmp-z-toast);display:flex;flex-direction:column-reverse;gap:.5rem}.toast{--toast-bg: var(--owo-feedback-neutral-bg);--toast-border: var(--owo-feedback-neutral-border);--toast-text: var(--owo-feedback-neutral-text);--toast-icon: var(--owo-feedback-neutral-icon);--toast-shadow: var(--owo-cmp-surface-shadow-strong);pointer-events:auto;border-radius:var(--owo-cmp-control-radius-lg);border:1px solid var(--toast-border);font-size:.875rem;line-height:1.25rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:var(--toast-bg);color:var(--toast-text);box-shadow:var(--toast-shadow);animation:toast-in .25s var(--owo-cmp-motion-ease-standard)}.toastDefault{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem 1rem}.toast [data-part=icon]{margin-top:.125rem;flex-shrink:0;color:var(--toast-icon)}.toast [data-part=content]{min-width:0;flex:1}.toast [data-part=title]{display:block;font-weight:500;color:inherit}.toast [data-part=message]{display:block}.toast [data-part=close]{margin-right:-.25rem;margin-top:-.125rem;flex-shrink:0;border-radius:var(--owo-cmp-control-radius-sm);padding:.125rem;color:currentColor;opacity:.5;transition:opacity .15s;background:transparent;border:0;cursor:pointer}.toast [data-part=close]:hover{opacity:1}.toast[data-tone=success]{--toast-bg: var(--owo-feedback-success-bg);--toast-border: var(--owo-feedback-success-border);--toast-text: var(--owo-feedback-success-text);--toast-icon: var(--owo-feedback-success-icon)}.toast[data-tone=warning]{--toast-bg: var(--owo-feedback-warning-bg);--toast-border: var(--owo-feedback-warning-border);--toast-text: var(--owo-feedback-warning-text);--toast-icon: var(--owo-feedback-warning-icon)}.toast[data-tone=danger]{--toast-bg: var(--owo-feedback-danger-bg);--toast-border: var(--owo-feedback-danger-border);--toast-text: var(--owo-feedback-danger-text);--toast-icon: var(--owo-feedback-danger-icon)}.toast[data-tone=info]{--toast-bg: var(--owo-feedback-info-bg);--toast-border: var(--owo-feedback-info-border);--toast-text: var(--owo-feedback-info-text);--toast-icon: var(--owo-feedback-info-icon)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.trigger{display:inline-flex}.content{--tooltip-bg: var(--owo-cmp-surface-bg-raised);--tooltip-border: var(--owo-cmp-surface-border);--tooltip-text: var(--owo-cmp-text-primary);--tooltip-shadow: var(--owo-cmp-surface-shadow-strong);--tooltip-arrow-color: var(--tooltip-bg);position:fixed;z-index:var(--owo-cmp-z-toast);border-radius:var(--owo-cmp-control-radius-lg);line-height:1.625;background:var(--tooltip-bg);color:var(--tooltip-text);border:1px solid var(--tooltip-border);box-shadow:var(--tooltip-shadow);backdrop-filter:blur(10px);animation:tooltip-in .15s var(--owo-cmp-motion-ease-standard)}.content[data-density=compact]{padding:.25rem .5rem;font-size:11px;max-width:200px}.content[data-density=default]{padding:.5rem .75rem;font-size:.75rem;line-height:1rem;max-width:20rem}.content [data-part=arrow]{position:absolute;color:var(--tooltip-arrow-color);filter:drop-shadow(0 1px 0 var(--tooltip-border))}@keyframes tooltip-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}
354
+
2988
355
  }