mnfst 0.5.121 → 0.5.123

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.
@@ -0,0 +1,195 @@
1
+ /* Manifest Charts */
2
+
3
+ :root {
4
+ /* Chart guidance */
5
+ --color-chart-grid: var(--color-line, color-mix(in oklch, oklch(20.5% 0 0) 10%, transparent));
6
+ --color-chart-label: var(--color-content-subtle, oklch(55.6% 0 0));
7
+
8
+ /* Chart data segments */
9
+ --color-chart-1: var(--color-yellow-400, oklch(85.2% 0.199 91.936));
10
+ --color-chart-2: var(--color-yellow-500, oklch(79.5% 0.184 86.047));
11
+ --color-chart-3: var(--color-yellow-600, oklch(68.1% 0.162 75.834));
12
+ --color-chart-4: var(--color-amber-400, oklch(82.8% 0.189 84.429));
13
+ --color-chart-5: var(--color-amber-500, oklch(76.9% 0.188 70.08));
14
+ --color-chart-6: var(--color-amber-600, oklch(66.6% 0.179 58.318));
15
+ --color-chart-7: var(--color-orange-400, oklch(75% 0.183 55.934));
16
+ --color-chart-8: var(--color-orange-500, oklch(70.5% 0.213 47.604));
17
+ --color-chart-9: var(--color-orange-600, oklch(64.6% 0.222 41.116));
18
+ }
19
+
20
+ @layer utilities {
21
+
22
+ :where([x-chart], .chart):not(.unstyle) {
23
+ display: flex;
24
+ flex-direction: column;
25
+ gap: 0.25rem;
26
+ width: 100%;
27
+ position: relative;
28
+
29
+ & svg {
30
+ display: block;
31
+ width: 100%;
32
+ overflow: visible
33
+ }
34
+
35
+ /* Grid lines */
36
+ & svg line {
37
+ stroke: var(--color-chart-grid);
38
+ stroke-width: 1;
39
+ shape-rendering: crispEdges
40
+ }
41
+
42
+ /* Axis labels */
43
+ & svg text {
44
+ fill: var(--color-chart-label);
45
+ font-size: 0.6875rem;
46
+ font-family: inherit
47
+ }
48
+
49
+ /* Line series */
50
+ & path.line {
51
+ stroke: var(--color-chart-color, var(--color-chart-1));
52
+ stroke-width: 2;
53
+ stroke-linecap: round;
54
+ stroke-linejoin: round
55
+ }
56
+
57
+ /* Area series */
58
+ & path.area {
59
+ fill: var(--color-chart-color, var(--color-chart-1));
60
+ opacity: 0.15
61
+ }
62
+
63
+ /* Points */
64
+ & circle {
65
+ fill: var(--color-chart-color, var(--color-chart-1));
66
+ stroke: var(--color-page, oklch(98.5% 0 0));
67
+ stroke-width: 1.5;
68
+ transition: r var(--transition-duration, .1s) ease;
69
+
70
+ &:hover {
71
+ r: 5
72
+ }
73
+ }
74
+
75
+ & circle.scatter {
76
+ opacity: 0.85
77
+ }
78
+
79
+ /* Bars */
80
+ & rect {
81
+ fill: var(--color-chart-color, var(--color-chart-1));
82
+ transition: opacity var(--transition-duration, .1s) ease;
83
+
84
+ &:hover {
85
+ opacity: 0.82
86
+ }
87
+ }
88
+
89
+ /* Candlesticks — wick <line> + body <rect> in a positive/negative <g> */
90
+ & g.positive,
91
+ & g.negative {
92
+ & line {
93
+ stroke: var(--color-chart-candle);
94
+ stroke-width: 1.5
95
+ }
96
+
97
+ & rect {
98
+ fill: var(--color-chart-candle)
99
+ }
100
+ }
101
+
102
+ & g.positive {
103
+ --color-chart-candle: var(--color-positive-content, oklch(60% 0.13 150))
104
+ }
105
+
106
+ & g.negative {
107
+ --color-chart-candle: var(--color-negative-content, oklch(60% 0.18 25))
108
+ }
109
+
110
+ /* Pie / donut slices */
111
+ & path.slice {
112
+ fill: var(--color-chart-color, var(--color-chart-1));
113
+ stroke: var(--color-page, oklch(98.5% 0 0));
114
+ stroke-width: 2;
115
+ transition: opacity var(--transition-duration, .1s) ease;
116
+
117
+ &:hover {
118
+ opacity: 0.85
119
+ }
120
+ }
121
+
122
+ /* Value labels drawn on/above segments */
123
+ & text.value {
124
+ fill: var(--color-content-stark, oklch(20.5% 0 0));
125
+ font-size: 0.6875rem;
126
+ font-weight: 600;
127
+ pointer-events: none;
128
+
129
+ /* On a filled segment (bar/slice center) — read against the fill */
130
+ &.inverse {
131
+ fill: black;
132
+ paint-order: stroke;
133
+ stroke: rgba(255, 255, 255, 0.75);
134
+ stroke-width: 1.5px
135
+ }
136
+ }
137
+
138
+ /* Legend — <footer> sibling below the SVG; <span> items, <i> swatches */
139
+ & footer {
140
+ display: flex;
141
+ flex-flow: row wrap;
142
+ align-items: center;
143
+ justify-content: center;
144
+ gap: 0.875rem;
145
+ margin-top: 0.5rem;
146
+ font-size: 0.75rem;
147
+ color: var(--color-content-neutral, oklch(43.9% 0 0));
148
+
149
+ &>span {
150
+ display: inline-flex;
151
+ align-items: center;
152
+ gap: 0.375rem
153
+ }
154
+
155
+ & i {
156
+ width: 0.625rem;
157
+ height: 0.625rem;
158
+ border-radius: 2px;
159
+ background: var(--color-chart-color, var(--color-chart-1))
160
+ }
161
+ }
162
+
163
+ /* Cursor-following tooltip — chrome comes from manifest.tooltip.css
164
+ (.tooltip); only the pointer-tracking positioning lives here */
165
+ & .tooltip {
166
+ position: absolute;
167
+ left: 0;
168
+ top: 0;
169
+ z-index: 50;
170
+ transform: translate(-50%, calc(-100% - 0.625rem));
171
+ font-size: 0.75rem;
172
+ line-height: 1.3;
173
+ white-space: nowrap;
174
+ pointer-events: none;
175
+ opacity: 0;
176
+ transition: opacity .1s ease;
177
+
178
+ &.active {
179
+ opacity: 1
180
+ }
181
+ }
182
+
183
+ /* Empty / error state */
184
+ &>small,
185
+ label {
186
+ display: flex;
187
+ align-items: center;
188
+ justify-content: center;
189
+ min-height: 6rem;
190
+ font-size: 0.875rem;
191
+ font-weight: 500;
192
+ color: var(--color-content-subtle, oklch(55.6% 0 0))
193
+ }
194
+ }
195
+ }