@rokkit/themes 1.0.0-next.14 → 1.0.0-next.140

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +106 -9
  3. package/build.mjs +235 -0
  4. package/dist/base.css +4934 -0
  5. package/dist/glass.css +1400 -0
  6. package/dist/index.css +10991 -0
  7. package/dist/material.css +1435 -0
  8. package/dist/minimal.css +1389 -0
  9. package/dist/rokkit.css +1829 -0
  10. package/package.json +53 -52
  11. package/src/base/breadcrumbs.css +47 -0
  12. package/src/base/button.css +254 -0
  13. package/src/base/card.css +36 -0
  14. package/src/base/carousel.css +128 -0
  15. package/src/base/connector.css +92 -0
  16. package/src/base/display.css +91 -0
  17. package/src/base/floating-action.css +388 -0
  18. package/src/base/floating-navigation.css +405 -0
  19. package/src/base/graph-paper.css +83 -0
  20. package/src/base/grid.css +93 -0
  21. package/src/base/index.css +40 -0
  22. package/src/base/input.css +238 -0
  23. package/src/base/item.css +78 -0
  24. package/src/base/list.css +179 -0
  25. package/src/base/menu.css +274 -0
  26. package/src/base/pill.css +57 -0
  27. package/src/base/progress.css +34 -0
  28. package/src/base/range.css +121 -0
  29. package/src/base/rating.css +42 -0
  30. package/src/base/reveal.css +37 -0
  31. package/src/base/search-filter.css +132 -0
  32. package/src/base/select.css +411 -0
  33. package/src/base/shine.css +14 -0
  34. package/src/base/stepper.css +140 -0
  35. package/src/base/switch.css +152 -0
  36. package/src/base/table.css +159 -0
  37. package/src/base/tabs.css +171 -0
  38. package/src/base/tilt.css +14 -0
  39. package/src/base/timeline.css +84 -0
  40. package/src/base/toggle.css +138 -0
  41. package/src/base/toolbar.css +337 -0
  42. package/src/base/tree.css +235 -0
  43. package/src/base/upload-progress.css +155 -0
  44. package/src/base/upload-target.css +67 -0
  45. package/src/glass/button.css +153 -0
  46. package/src/glass/card.css +66 -0
  47. package/src/glass/floating-action.css +61 -0
  48. package/src/glass/floating-navigation.css +74 -0
  49. package/src/glass/index.css +23 -0
  50. package/src/glass/input.css +126 -0
  51. package/src/glass/list.css +122 -0
  52. package/src/glass/menu.css +92 -0
  53. package/src/glass/range.css +61 -0
  54. package/src/glass/search-filter.css +49 -0
  55. package/src/glass/select.css +178 -0
  56. package/src/glass/switch.css +28 -0
  57. package/src/glass/table.css +87 -0
  58. package/src/glass/tabs.css +58 -0
  59. package/src/glass/timeline.css +46 -0
  60. package/src/glass/toggle.css +48 -0
  61. package/src/glass/toolbar.css +84 -0
  62. package/src/glass/tree.css +110 -0
  63. package/src/index.css +18 -0
  64. package/src/index.js +25 -2
  65. package/src/material/button.css +157 -0
  66. package/src/material/card.css +61 -0
  67. package/src/material/floating-action.css +60 -0
  68. package/src/material/floating-navigation.css +74 -0
  69. package/src/material/index.css +23 -0
  70. package/src/material/input.css +159 -0
  71. package/src/material/list.css +126 -0
  72. package/src/material/menu.css +92 -0
  73. package/src/material/range.css +62 -0
  74. package/src/material/search-filter.css +49 -0
  75. package/src/material/select.css +170 -0
  76. package/src/material/switch.css +28 -0
  77. package/src/material/table.css +91 -0
  78. package/src/material/tabs.css +62 -0
  79. package/src/material/timeline.css +46 -0
  80. package/src/material/toggle.css +48 -0
  81. package/src/material/toolbar.css +85 -0
  82. package/src/material/tree.css +103 -0
  83. package/src/minimal/button.css +155 -0
  84. package/src/minimal/card.css +61 -0
  85. package/src/minimal/floating-action.css +59 -0
  86. package/src/minimal/floating-navigation.css +70 -0
  87. package/src/minimal/index.css +23 -0
  88. package/src/minimal/input.css +119 -0
  89. package/src/minimal/list.css +126 -0
  90. package/src/minimal/menu.css +88 -0
  91. package/src/minimal/range.css +61 -0
  92. package/src/minimal/search-filter.css +49 -0
  93. package/src/minimal/select.css +170 -0
  94. package/src/minimal/switch.css +28 -0
  95. package/src/minimal/table.css +89 -0
  96. package/src/minimal/tabs.css +68 -0
  97. package/src/minimal/timeline.css +45 -0
  98. package/src/minimal/toggle.css +48 -0
  99. package/src/minimal/toolbar.css +85 -0
  100. package/src/minimal/tree.css +106 -0
  101. package/src/palette.css +7 -0
  102. package/src/rokkit/button.css +254 -0
  103. package/src/rokkit/card.css +64 -0
  104. package/src/rokkit/connector.css +11 -0
  105. package/src/rokkit/floating-action.css +65 -0
  106. package/src/rokkit/floating-navigation.css +83 -0
  107. package/src/rokkit/grid.css +46 -0
  108. package/src/rokkit/index.css +27 -0
  109. package/src/rokkit/input.css +134 -0
  110. package/src/rokkit/list.css +132 -0
  111. package/src/rokkit/menu.css +93 -0
  112. package/src/rokkit/range.css +62 -0
  113. package/src/rokkit/search-filter.css +49 -0
  114. package/src/rokkit/select.css +190 -0
  115. package/src/rokkit/switch.css +28 -0
  116. package/src/rokkit/table.css +89 -0
  117. package/src/rokkit/tabs.css +87 -0
  118. package/src/rokkit/timeline.css +46 -0
  119. package/src/rokkit/toggle.css +48 -0
  120. package/src/rokkit/toolbar.css +84 -0
  121. package/src/rokkit/tree.css +149 -0
  122. package/src/rokkit/upload-progress.css +102 -0
  123. package/src/rokkit/upload-target.css +50 -0
  124. package/src/constants.js +0 -4
  125. package/src/utils.js +0 -88
@@ -0,0 +1,91 @@
1
+ /**
2
+ * Table - Material Theme Styles
3
+ *
4
+ * Material Design inspired with elevation and shadows.
5
+ */
6
+
7
+ /* =============================================================================
8
+ Header
9
+ ============================================================================= */
10
+
11
+ [data-style='material'] [data-table-header] th {
12
+ @apply text-surface-z6 bg-surface-z2 border-surface-z4 border-b font-medium;
13
+ }
14
+
15
+ [data-style='material'] [data-table-header-cell][data-sortable='true']:hover {
16
+ @apply text-surface-z9 bg-surface-z3;
17
+ }
18
+
19
+ [data-style='material'] [data-table-header-cell][data-sort-order='ascending'],
20
+ [data-style='material'] [data-table-header-cell][data-sort-order='descending'] {
21
+ @apply text-primary-z8;
22
+ }
23
+
24
+ [data-style='material'] [data-table-sort-icon] {
25
+ @apply text-surface-z5;
26
+ }
27
+
28
+ [data-style='material']
29
+ [data-table-header-cell][data-sort-order='ascending']
30
+ [data-table-sort-icon],
31
+ [data-style='material']
32
+ [data-table-header-cell][data-sort-order='descending']
33
+ [data-table-sort-icon] {
34
+ @apply text-primary-z6;
35
+ }
36
+
37
+ /* =============================================================================
38
+ Caption
39
+ ============================================================================= */
40
+
41
+ [data-style='material'] [data-table-caption] {
42
+ @apply text-surface-z7;
43
+ }
44
+
45
+ /* =============================================================================
46
+ Rows
47
+ ============================================================================= */
48
+
49
+ [data-style='material'] [data-table-row] {
50
+ @apply text-surface-z8 border-surface-z3 border-b;
51
+ }
52
+
53
+ [data-style='material'] [data-table-row]:hover {
54
+ @apply bg-surface-z2;
55
+ }
56
+
57
+ [data-style='material'] [data-table-row]:focus {
58
+ @apply bg-surface-z2 text-surface-z10 ring-primary-z4 ring-2 outline-none ring-inset;
59
+ }
60
+
61
+ [data-style='material'] [data-table-row][data-selected='true'] {
62
+ @apply bg-primary-z2 text-primary-z9;
63
+ }
64
+
65
+ /* =============================================================================
66
+ Striped
67
+ ============================================================================= */
68
+
69
+ [data-style='material'] [data-striped='true'] [data-table-body] tr:nth-child(even) {
70
+ @apply bg-surface-z1;
71
+ }
72
+
73
+ /* =============================================================================
74
+ Empty
75
+ ============================================================================= */
76
+
77
+ [data-style='material'] [data-table-empty] {
78
+ @apply text-surface-z5;
79
+ }
80
+
81
+ /* =============================================================================
82
+ Cell Icon
83
+ ============================================================================= */
84
+
85
+ [data-style='material'] [data-table-cell] [data-cell-icon] {
86
+ @apply text-surface-z5;
87
+ }
88
+
89
+ [data-style='material'] [data-table-row][data-selected='true'] [data-cell-icon] {
90
+ @apply text-primary-z6;
91
+ }
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Tabs - Material Theme Styles
3
+ *
4
+ * Material Design inspired with elevation and rounded corners.
5
+ */
6
+
7
+ /* =============================================================================
8
+ Tab List
9
+ ============================================================================= */
10
+
11
+ [data-style='material'] [data-tabs-list] {
12
+ @apply bg-surface-z2 gap-0.5 rounded-t-lg shadow-sm;
13
+ }
14
+
15
+ [data-style='material'] [data-tabs][data-position='after'] [data-tabs-list] {
16
+ @apply rounded-t-none rounded-b-lg;
17
+ }
18
+
19
+ /* =============================================================================
20
+ Tab Triggers
21
+ ============================================================================= */
22
+
23
+ [data-style='material'] [data-tabs-trigger] {
24
+ @apply text-surface-z6 rounded-t-lg;
25
+ }
26
+
27
+ [data-style='material'] [data-tabs][data-position='after'] [data-tabs-trigger] {
28
+ @apply rounded-t-none rounded-b-lg;
29
+ }
30
+
31
+ [data-style='material'] [data-tabs-trigger]:hover:not(:disabled):not([data-disabled]) {
32
+ @apply bg-surface-z3 text-surface-z8;
33
+ }
34
+
35
+ /* Selected state */
36
+ [data-style='material'] [data-tabs-trigger][data-selected] {
37
+ @apply bg-primary-z5 text-white shadow-md;
38
+ }
39
+
40
+ /* =============================================================================
41
+ Tab Icon
42
+ ============================================================================= */
43
+
44
+ [data-style='material'] [data-tabs-trigger] [data-tabs-icon] {
45
+ @apply text-surface-z5;
46
+ }
47
+
48
+ [data-style='material'] [data-tabs-trigger]:hover:not(:disabled) [data-tabs-icon] {
49
+ @apply text-surface-z7;
50
+ }
51
+
52
+ [data-style='material'] [data-tabs-trigger][data-selected] [data-tabs-icon] {
53
+ @apply text-white;
54
+ }
55
+
56
+ /* =============================================================================
57
+ Tab Panel
58
+ ============================================================================= */
59
+
60
+ [data-style='material'] [data-tabs-content] {
61
+ @apply text-surface-z8;
62
+ }
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Timeline - Material Theme Styles
3
+ *
4
+ * Flat design with subtle elevation.
5
+ */
6
+
7
+ /* =============================================================================
8
+ Circle
9
+ ============================================================================= */
10
+
11
+ [data-style='material'] [data-timeline-circle] {
12
+ @apply border-surface-z4 text-surface-z6;
13
+ }
14
+
15
+ [data-style='material'] [data-timeline-item][data-completed] [data-timeline-circle] {
16
+ @apply bg-primary border-primary text-on-primary shadow-sm;
17
+ }
18
+
19
+ [data-style='material'] [data-timeline-item][data-active] [data-timeline-circle] {
20
+ @apply border-primary text-primary;
21
+ box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-primary) 25%, transparent);
22
+ }
23
+
24
+ /* =============================================================================
25
+ Connector
26
+ ============================================================================= */
27
+
28
+ [data-style='material'] [data-timeline-connector] {
29
+ @apply bg-surface-z3;
30
+ }
31
+
32
+ [data-style='material'] [data-timeline-item][data-completed] [data-timeline-connector] {
33
+ @apply bg-primary;
34
+ }
35
+
36
+ /* =============================================================================
37
+ Body
38
+ ============================================================================= */
39
+
40
+ [data-style='material'] [data-timeline-title] {
41
+ @apply text-surface-z8;
42
+ }
43
+
44
+ [data-style='material'] [data-timeline-description] {
45
+ @apply text-surface-z6;
46
+ }
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Toggle - Material Theme Styles
3
+ *
4
+ * Material Design inspired with elevation and rounded corners.
5
+ */
6
+
7
+ /* =============================================================================
8
+ Toggle Container
9
+ ============================================================================= */
10
+
11
+ [data-style='material'] [data-toggle] {
12
+ @apply bg-surface-z2 rounded-full shadow-sm;
13
+ }
14
+
15
+ /* =============================================================================
16
+ Toggle Options
17
+ ============================================================================= */
18
+
19
+ [data-style='material'] [data-toggle-option] {
20
+ @apply text-surface-z6 rounded-full;
21
+ }
22
+
23
+ [data-style='material'] [data-toggle-option]:hover:not(:disabled):not([data-disabled='true']),
24
+ [data-style='material'] [data-toggle-option]:focus:not(:disabled):not([data-disabled='true']) {
25
+ @apply bg-surface-z3 text-surface-z8;
26
+ }
27
+
28
+ /* Selected state */
29
+ [data-style='material'] [data-toggle-option][data-selected='true'] {
30
+ @apply bg-primary-z5 text-white shadow-md;
31
+ }
32
+
33
+ /* =============================================================================
34
+ Toggle Icon
35
+ ============================================================================= */
36
+
37
+ [data-style='material'] [data-toggle-option] [data-toggle-icon] {
38
+ @apply text-surface-z5;
39
+ }
40
+
41
+ [data-style='material'] [data-toggle-option]:hover:not(:disabled) [data-toggle-icon],
42
+ [data-style='material'] [data-toggle-option]:focus:not(:disabled) [data-toggle-icon] {
43
+ @apply text-surface-z7;
44
+ }
45
+
46
+ [data-style='material'] [data-toggle-option][data-selected='true'] [data-toggle-icon] {
47
+ @apply text-white;
48
+ }
@@ -0,0 +1,85 @@
1
+ /**
2
+ * Toolbar - Material Theme Styles
3
+ *
4
+ * Material Design inspired with elevation and shadows.
5
+ */
6
+
7
+ /* =============================================================================
8
+ Toolbar Container
9
+ ============================================================================= */
10
+
11
+ [data-style='material'] [data-toolbar] {
12
+ @apply bg-surface-z1 shadow-sm;
13
+ }
14
+
15
+ /* Position-based borders removed - using shadows instead */
16
+ [data-style='material'] [data-toolbar][data-toolbar-position='top'],
17
+ [data-style='material'] [data-toolbar]:not([data-toolbar-position]) {
18
+ @apply shadow-md;
19
+ }
20
+
21
+ [data-style='material'] [data-toolbar][data-toolbar-position='bottom'] {
22
+ @apply shadow-md;
23
+ }
24
+
25
+ [data-style='material'] [data-toolbar][data-toolbar-position='left'] {
26
+ @apply shadow-md;
27
+ }
28
+
29
+ [data-style='material'] [data-toolbar][data-toolbar-position='right'] {
30
+ @apply shadow-md;
31
+ }
32
+
33
+ /* =============================================================================
34
+ Toolbar Items
35
+ ============================================================================= */
36
+
37
+ [data-style='material'] [data-toolbar-item] {
38
+ @apply text-surface-z7 rounded-full;
39
+ }
40
+
41
+ [data-style='material'] [data-toolbar-item]:hover:not(:disabled):not([data-disabled='true']) {
42
+ @apply bg-surface-z2 text-surface-z9;
43
+ }
44
+
45
+ [data-style='material']
46
+ [data-toolbar-item]:focus-visible:not(:disabled):not([data-disabled='true']) {
47
+ @apply bg-surface-z2 text-surface-z9 ring-primary-z4 ring-2 outline-none;
48
+ }
49
+
50
+ /* Active/pressed state */
51
+ [data-style='material'] [data-toolbar-item][data-active='true'] {
52
+ @apply bg-primary-z2 text-primary-z8;
53
+ }
54
+
55
+ [data-style='material'] [data-toolbar-item][data-active='true']:hover:not(:disabled) {
56
+ @apply bg-primary-z3 text-primary-z9;
57
+ }
58
+
59
+ /* =============================================================================
60
+ Toolbar Icon
61
+ ============================================================================= */
62
+
63
+ [data-style='material'] [data-toolbar-item] [data-toolbar-icon] {
64
+ @apply text-surface-z6;
65
+ }
66
+
67
+ [data-style='material'] [data-toolbar-item]:hover:not(:disabled) [data-toolbar-icon] {
68
+ @apply text-surface-z8;
69
+ }
70
+
71
+ [data-style='material'] [data-toolbar-item][data-active='true'] [data-toolbar-icon] {
72
+ @apply text-primary-z7;
73
+ }
74
+
75
+ /* =============================================================================
76
+ Separator & Divider
77
+ ============================================================================= */
78
+
79
+ [data-style='material'] [data-toolbar-separator] {
80
+ @apply bg-surface-z3;
81
+ }
82
+
83
+ [data-style='material'] [data-toolbar-divider] {
84
+ @apply bg-surface-z3;
85
+ }
@@ -0,0 +1,103 @@
1
+ /**
2
+ * Tree - Material Theme Styles
3
+ *
4
+ * Material Design inspired with subtle elevation.
5
+ */
6
+
7
+ /* =============================================================================
8
+ Tree Container
9
+ ============================================================================= */
10
+
11
+ [data-style='material'] [data-tree]:focus-within {
12
+ @apply outline-none;
13
+ }
14
+
15
+ /* =============================================================================
16
+ Tree Toggle Button
17
+ ============================================================================= */
18
+
19
+ [data-style='material'] [data-tree-toggle-btn] {
20
+ @apply text-surface-z5 rounded-full;
21
+ }
22
+
23
+ [data-style='material'] [data-tree-toggle-btn]:hover {
24
+ @apply bg-surface-z2 text-surface-z7;
25
+ }
26
+
27
+ /* =============================================================================
28
+ Tree Item Content
29
+ ============================================================================= */
30
+
31
+ [data-style='material'] [data-tree-item-content] {
32
+ @apply text-surface-z8;
33
+ }
34
+
35
+ [data-style='material'] [data-tree-item-content]:hover:not(:disabled),
36
+ [data-style='material'] [data-tree-item-content]:focus:not(:disabled) {
37
+ @apply bg-surface-z2 text-surface-z10 outline-none;
38
+ }
39
+
40
+ /* Focus visible for keyboard navigation */
41
+ [data-style='material'] [data-tree-item-content]:focus-visible {
42
+ @apply ring-primary-z4 ring-2 outline-none ring-inset;
43
+ }
44
+
45
+ /* Active/selected state */
46
+ [data-style='material'] [data-tree-item-content][data-active='true'] {
47
+ @apply bg-primary-z2 text-primary-z9;
48
+ }
49
+
50
+ [data-style='material'] [data-tree-item-content][data-active='true']:hover:not(:disabled) {
51
+ @apply bg-primary-z3;
52
+ }
53
+
54
+ /* =============================================================================
55
+ Item Elements
56
+ ============================================================================= */
57
+
58
+ [data-style='material'] [data-tree-item-content] [data-item-icon] {
59
+ @apply text-surface-z5;
60
+ }
61
+
62
+ [data-style='material'] [data-tree-item-content]:hover:not(:disabled) [data-item-icon] {
63
+ @apply text-surface-z7;
64
+ }
65
+
66
+ [data-style='material'] [data-tree-item-content][data-active='true'] [data-item-icon] {
67
+ @apply text-primary-z6;
68
+ }
69
+
70
+ [data-style='material'] [data-tree-item-content] [data-item-description] {
71
+ @apply text-surface-z5;
72
+ }
73
+
74
+ [data-style='material'] [data-tree-item-content][data-active='true'] [data-item-description] {
75
+ @apply text-primary-z7;
76
+ }
77
+
78
+ [data-style='material'] [data-tree-item-content] [data-item-badge] {
79
+ @apply text-surface-z6 bg-surface-z2 rounded-full;
80
+ }
81
+
82
+ [data-style='material'] [data-tree-item-content][data-active='true'] [data-item-badge] {
83
+ @apply text-primary-z8 bg-primary-z2;
84
+ }
85
+
86
+ /* =============================================================================
87
+ Multi-Selection
88
+ ============================================================================= */
89
+
90
+ [data-style='material'] [data-tree-node][data-selected='true'] [data-tree-node-row] {
91
+ @apply bg-primary-z2;
92
+ }
93
+
94
+ [data-style='material'] [data-tree-node][data-selected='true'] [data-tree-item-content] {
95
+ @apply text-primary-z9;
96
+ }
97
+
98
+ [data-style='material']
99
+ [data-tree-node][data-selected='true']
100
+ [data-tree-item-content]
101
+ [data-item-icon] {
102
+ @apply text-primary-z6;
103
+ }
@@ -0,0 +1,155 @@
1
+ /**
2
+ * Button - Minimal Theme Styles
3
+ *
4
+ * Clean, understated styling with subtle borders.
5
+ */
6
+
7
+ /* =============================================================================
8
+ Default Style (filled)
9
+ ============================================================================= */
10
+
11
+ [data-style='minimal'] [data-button][data-style='default'][data-variant='default'],
12
+ [data-style='minimal'] [data-button]:not([data-style])[data-variant='default'],
13
+ [data-style='minimal'] [data-button][data-style='default']:not([data-variant]),
14
+ [data-style='minimal'] [data-button]:not([data-style]):not([data-variant]) {
15
+ @apply bg-surface-z2 border-surface-z4 text-surface-z8 border;
16
+ }
17
+
18
+ [data-style='minimal'] [data-button][data-style='default'][data-variant='primary'],
19
+ [data-style='minimal'] [data-button]:not([data-style])[data-variant='primary'] {
20
+ @apply bg-primary-z5 text-on-primary border-transparent;
21
+ }
22
+
23
+ [data-style='minimal'] [data-button][data-style='default'][data-variant='secondary'],
24
+ [data-style='minimal'] [data-button]:not([data-style])[data-variant='secondary'] {
25
+ @apply bg-secondary-z4 text-on-secondary border-transparent;
26
+ }
27
+
28
+ [data-style='minimal'] [data-button][data-style='default'][data-variant='danger'],
29
+ [data-style='minimal'] [data-button]:not([data-style])[data-variant='danger'] {
30
+ @apply bg-danger-z4 text-on-danger border-transparent;
31
+ }
32
+
33
+ /* =============================================================================
34
+ Outline Style
35
+ ============================================================================= */
36
+
37
+ [data-style='minimal'] [data-button][data-style='outline'][data-variant='default'],
38
+ [data-style='minimal'] [data-button][data-style='outline']:not([data-variant]) {
39
+ @apply border-surface-z4 text-surface-z7 border bg-transparent;
40
+ }
41
+
42
+ [data-style='minimal'] [data-button][data-style='outline'][data-variant='primary'] {
43
+ @apply border-primary-z4 text-primary-z6 border bg-transparent;
44
+ }
45
+
46
+ [data-style='minimal'] [data-button][data-style='outline'][data-variant='secondary'] {
47
+ @apply border-secondary-z4 text-secondary-z6 border bg-transparent;
48
+ }
49
+
50
+ [data-style='minimal'] [data-button][data-style='outline'][data-variant='danger'] {
51
+ @apply border-danger-z4 text-danger-z4 border bg-transparent;
52
+ }
53
+
54
+ /* =============================================================================
55
+ Ghost Style
56
+ ============================================================================= */
57
+
58
+ [data-style='minimal'] [data-button][data-style='ghost'] {
59
+ @apply border-transparent bg-transparent;
60
+ }
61
+
62
+ [data-style='minimal'] [data-button][data-style='ghost'][data-variant='default'],
63
+ [data-style='minimal'] [data-button][data-style='ghost']:not([data-variant]) {
64
+ @apply text-surface-z7;
65
+ }
66
+
67
+ [data-style='minimal'] [data-button][data-style='ghost'][data-variant='primary'] {
68
+ @apply text-primary-z6;
69
+ }
70
+
71
+ [data-style='minimal'] [data-button][data-style='ghost'][data-variant='secondary'] {
72
+ @apply text-secondary-z6;
73
+ }
74
+
75
+ [data-style='minimal'] [data-button][data-style='ghost'][data-variant='danger'] {
76
+ @apply text-danger-z4;
77
+ }
78
+
79
+ /* =============================================================================
80
+ Gradient Style
81
+ ============================================================================= */
82
+
83
+ [data-style='minimal'] [data-button][data-style='gradient'][data-variant='default'],
84
+ [data-style='minimal'] [data-button][data-style='gradient']:not([data-variant]) {
85
+ @apply from-surface-z3 to-surface-z1 text-surface-z10 bg-gradient-to-br;
86
+ }
87
+
88
+ [data-style='minimal'] [data-button][data-style='gradient'][data-variant='primary'] {
89
+ @apply from-primary-z5 to-primary-z3 text-on-primary bg-gradient-to-br;
90
+ }
91
+
92
+ [data-style='minimal'] [data-button][data-style='gradient'][data-variant='secondary'] {
93
+ @apply from-secondary-z5 to-secondary-z3 text-on-secondary bg-gradient-to-br;
94
+ }
95
+
96
+ [data-style='minimal'] [data-button][data-style='gradient'][data-variant='danger'] {
97
+ @apply from-danger-z5 to-danger-z3 text-on-danger bg-gradient-to-br;
98
+ }
99
+
100
+ [data-style='minimal']
101
+ [data-button][data-style='gradient']:hover:not(:disabled):not([data-disabled]) {
102
+ filter: brightness(1.05);
103
+ }
104
+
105
+ /* =============================================================================
106
+ Link Style
107
+ ============================================================================= */
108
+
109
+ [data-style='minimal'] [data-button][data-style='link'][data-variant='default'],
110
+ [data-style='minimal'] [data-button][data-style='link']:not([data-variant]) {
111
+ @apply text-surface-z7;
112
+ }
113
+
114
+ [data-style='minimal'] [data-button][data-style='link'][data-variant='primary'] {
115
+ @apply text-primary-z6;
116
+ }
117
+
118
+ [data-style='minimal'] [data-button][data-style='link'][data-variant='secondary'] {
119
+ @apply text-secondary-z6;
120
+ }
121
+
122
+ [data-style='minimal'] [data-button][data-style='link'][data-variant='danger'] {
123
+ @apply text-danger-z4;
124
+ }
125
+
126
+ [data-style='minimal'] [data-button][data-style='link']:hover:not(:disabled):not([data-disabled]) {
127
+ @apply text-surface-z9;
128
+ }
129
+
130
+ /* =============================================================================
131
+ Hover States
132
+ ============================================================================= */
133
+
134
+ [data-style='minimal']
135
+ [data-button][data-style='default']:hover:not(:disabled):not([data-disabled]),
136
+ [data-style='minimal'] [data-button]:not([data-style]):hover:not(:disabled):not([data-disabled]) {
137
+ @apply bg-surface-z3 border-surface-z5;
138
+ }
139
+
140
+ [data-style='minimal']
141
+ [data-button][data-style='outline']:hover:not(:disabled):not([data-disabled]) {
142
+ @apply bg-surface-z1 border-surface-z5;
143
+ }
144
+
145
+ [data-style='minimal'] [data-button][data-style='ghost']:hover:not(:disabled):not([data-disabled]) {
146
+ @apply bg-surface-z2;
147
+ }
148
+
149
+ /* =============================================================================
150
+ Focus
151
+ ============================================================================= */
152
+
153
+ [data-style='minimal'] [data-button]:focus-visible {
154
+ @apply ring-surface-z5 ring-1 outline-none;
155
+ }
@@ -0,0 +1,61 @@
1
+ * Card - Minimal Theme Styles
2
+ *
3
+ * Clean, flat styling with subtle borders.
4
+ */
5
+
6
+ /* =============================================================================
7
+ Base Card Styles
8
+ ============================================================================= */
9
+
10
+ [data-style='minimal'] [data-card] {
11
+ @apply bg-surface-z1 border-surface-z4 text-surface-z9 border shadow-sm;
12
+ }
13
+
14
+ /* Interactive cards (buttons) */
15
+ [data-style='minimal'] [data-card][data-card-interactive] {
16
+ cursor: pointer;
17
+ transition:
18
+ border-color 0.2s ease,
19
+ box-shadow 0.2s ease;
20
+ }
21
+
22
+ [data-style='minimal'] [data-card][data-card-interactive]:hover {
23
+ @apply border-surface-z6 shadow;
24
+ }
25
+
26
+ [data-style='minimal'] [data-card][data-card-interactive]:active {
27
+ @apply bg-surface-z2;
28
+ }
29
+
30
+ /* =============================================================================
31
+ Card Sections
32
+ ============================================================================= */
33
+
34
+ [data-style='minimal'] [data-card-header] {
35
+ @apply border-surface-z3 border-b;
36
+ }
37
+
38
+ [data-style='minimal'] [data-card-body] {
39
+ @apply text-surface-z8;
40
+ }
41
+
42
+ [data-style='minimal'] [data-card-footer] {
43
+ @apply border-surface-z3 text-surface-z7 border-t;
44
+ }
45
+
46
+ /* =============================================================================
47
+ Focus States
48
+ ============================================================================= */
49
+
50
+ [data-style='minimal'] [data-card][data-card-interactive]:focus-visible {
51
+ @apply ring-surface-z5 ring-1 outline-none;
52
+ }
53
+
54
+ /* =============================================================================
55
+ Disabled State
56
+ ============================================================================= */
57
+
58
+ [data-style='minimal'] [data-card][data-card-interactive][data-disabled],
59
+ [data-style='minimal'] [data-card][data-card-interactive]:disabled {
60
+ @apply cursor-not-allowed opacity-50;
61
+ }