@blueprint-chart/lib 2.17.1 → 2.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,278 @@
1
+ /* Blueprint Chart — Scene player styles, shared by the editor and the embed.
2
+ Light colors live in var() fallbacks; only dark mode defines the tokens. */
3
+
4
+ [data-bs-theme="dark"] .bc-frame:not([data-bs-theme="dark"] [data-bs-theme="light"] *),
5
+ .bc-frame.bc-theme-dark {
6
+ --bc-scene-player-text: #e6e6e6;
7
+ --bc-scene-player-muted: #a8a5a0;
8
+ --bc-scene-player-border: #6b6966;
9
+ --bc-scene-player-border-hover: #a8a5a0;
10
+ --bc-scene-player-background-hover: rgba(255, 255, 255, 0.06);
11
+ --bc-scene-player-track: #6b6966;
12
+ --bc-scene-player-accent: #4a7fd0;
13
+ --bc-scene-player-accent-hover: #5b8fdc;
14
+ }
15
+
16
+ .bc-scene-player--buttons {
17
+ display: flex;
18
+ align-items: center;
19
+ justify-content: space-between;
20
+ gap: 8px;
21
+ padding: 0.25rem 0 0;
22
+ width: 100%;
23
+ }
24
+
25
+ .bc-scene-player--buttons.bc-scene-player--left {
26
+ justify-content: flex-start;
27
+ gap: 16px;
28
+ }
29
+
30
+ .bc-scene-player--buttons.bc-scene-player--left .bc-scene-player__counter {
31
+ margin-left: auto;
32
+ }
33
+
34
+ .bc-scene-player--buttons.bc-scene-player--center {
35
+ justify-content: center;
36
+ gap: 16px;
37
+ }
38
+
39
+ .bc-scene-player--buttons.bc-scene-player--right {
40
+ justify-content: flex-end;
41
+ gap: 16px;
42
+ }
43
+
44
+ .bc-scene-player--dot-stepper,
45
+ .bc-scene-player--minimal-arrows {
46
+ display: flex;
47
+ align-items: center;
48
+ padding: 0.25rem 0 0;
49
+ width: 100%;
50
+ }
51
+
52
+ .bc-scene-player--dot-stepper {
53
+ gap: 0.375rem;
54
+ }
55
+
56
+ .bc-scene-player--minimal-arrows {
57
+ gap: 4px;
58
+ }
59
+
60
+ .bc-scene-player--dot-stepper.bc-scene-player--left,
61
+ .bc-scene-player--minimal-arrows.bc-scene-player--left {
62
+ justify-content: flex-start;
63
+ }
64
+
65
+ .bc-scene-player--dot-stepper.bc-scene-player--center,
66
+ .bc-scene-player--minimal-arrows.bc-scene-player--center {
67
+ justify-content: center;
68
+ }
69
+
70
+ .bc-scene-player--dot-stepper.bc-scene-player--right,
71
+ .bc-scene-player--minimal-arrows.bc-scene-player--right {
72
+ justify-content: flex-end;
73
+ }
74
+
75
+ .bc-scene-player--progress-bar {
76
+ display: flex;
77
+ align-items: center;
78
+ gap: 0.5rem;
79
+ padding: 0.25rem 0 0;
80
+ width: 100%;
81
+ }
82
+
83
+ .bc-scene-player__btn-group {
84
+ display: flex;
85
+ gap: 6px;
86
+ }
87
+
88
+ .bc-scene-player__btn-group__btn {
89
+ display: inline-flex;
90
+ align-items: center;
91
+ gap: 4px;
92
+ padding: 6px 14px;
93
+ border-radius: 6px;
94
+ border: 1px solid var(--bc-scene-player-border, currentColor);
95
+ background: none;
96
+ color: var(--bc-scene-player-muted);
97
+ font-size: var(--bs-font-size-sm, 0.875rem);
98
+ font-weight: 500;
99
+ cursor: pointer;
100
+ transition: border-color var(--bc-duration-base, 150ms), color var(--bc-duration-base, 150ms);
101
+ line-height: 1.4;
102
+ }
103
+
104
+ .bc-scene-player__btn-group__btn:hover:not(:disabled) {
105
+ border-color: var(--bc-scene-player-border-hover);
106
+ background: var(--bc-scene-player-background-hover, rgba(0, 0, 0, 0.04));
107
+ color: var(--bc-scene-player-text);
108
+ }
109
+
110
+ .bc-scene-player__btn-group__btn--next {
111
+ color: var(--bc-scene-player-text);
112
+ font-weight: 600;
113
+ }
114
+
115
+ .bc-scene-player__btn-group__btn--disabled {
116
+ opacity: 0.35;
117
+ cursor: default;
118
+ }
119
+
120
+ .bc-scene-player__nav-btn {
121
+ width: 24px;
122
+ height: 24px;
123
+ border-radius: 4px;
124
+ display: flex;
125
+ align-items: center;
126
+ justify-content: center;
127
+ background: none;
128
+ border: 1px solid var(--bc-scene-player-border, #e2e0db);
129
+ color: var(--bc-scene-player-muted, #9b9893);
130
+ cursor: pointer;
131
+ flex-shrink: 0;
132
+ padding: 0;
133
+ }
134
+
135
+ .bc-scene-player__nav-btn:hover:not(:disabled) {
136
+ border-color: var(--bc-scene-player-border-hover, #6b6966);
137
+ color: var(--bc-scene-player-text, #1a1a1a);
138
+ }
139
+
140
+ .bc-scene-player__nav-btn:disabled {
141
+ opacity: 0.3;
142
+ cursor: default;
143
+ }
144
+
145
+ .bc-scene-player__play-btn {
146
+ display: flex;
147
+ align-items: center;
148
+ justify-content: center;
149
+ background: var(--bc-scene-player-accent, #2c5aa0);
150
+ border: none;
151
+ color: #fff;
152
+ cursor: pointer;
153
+ flex-shrink: 0;
154
+ padding: 0;
155
+ transition: background var(--bc-duration-base, 150ms) ease;
156
+ }
157
+
158
+ .bc-scene-player__play-btn:hover {
159
+ background: var(--bc-scene-player-accent-hover, #1e4888);
160
+ }
161
+
162
+ .bc-scene-player--dot-stepper .bc-scene-player__play-btn {
163
+ width: 30px;
164
+ height: 30px;
165
+ border-radius: 50%;
166
+ }
167
+
168
+ .bc-scene-player--minimal-arrows .bc-scene-player__play-btn {
169
+ width: 26px;
170
+ height: 26px;
171
+ border-radius: 7px;
172
+ }
173
+
174
+ .bc-scene-player--progress-bar .bc-scene-player__play-btn {
175
+ width: 28px;
176
+ height: 28px;
177
+ border-radius: 50%;
178
+ }
179
+
180
+ .bc-scene-player__dots {
181
+ display: flex;
182
+ gap: 6px;
183
+ align-items: center;
184
+ }
185
+
186
+ .bc-scene-player__dots__dot {
187
+ width: 8px;
188
+ height: 8px;
189
+ border-radius: 4px;
190
+ border: none;
191
+ padding: 0;
192
+ cursor: pointer;
193
+ background: var(--bc-scene-player-track, #e2e0db);
194
+ opacity: 0.4;
195
+ transition: width var(--bc-duration-slow, 250ms) ease, background var(--bc-duration-slow, 250ms) ease, opacity var(--bc-duration-slow, 250ms) ease;
196
+ }
197
+
198
+ .bc-scene-player__dots__dot--completed {
199
+ background: var(--bc-scene-player-accent, #2c5aa0);
200
+ opacity: 1;
201
+ }
202
+
203
+ .bc-scene-player__dots__dot--active {
204
+ width: 20px;
205
+ background: var(--bc-scene-player-accent, #2c5aa0);
206
+ opacity: 1;
207
+ }
208
+
209
+ .bc-scene-player__dots__dot:hover {
210
+ opacity: 0.8;
211
+ }
212
+
213
+ .bc-scene-player__segments {
214
+ flex: 1;
215
+ display: flex;
216
+ gap: 3px;
217
+ align-items: center;
218
+ }
219
+
220
+ .bc-scene-player__segments__segment {
221
+ flex: 1;
222
+ height: 4px;
223
+ border-radius: 2px;
224
+ border: none;
225
+ padding: 0;
226
+ cursor: pointer;
227
+ background: var(--bc-scene-player-track, #e2e0db);
228
+ opacity: 0.45;
229
+ transition: height var(--bc-duration-slow, 250ms) ease, background var(--bc-duration-slow, 250ms) ease, opacity var(--bc-duration-slow, 250ms) ease;
230
+ }
231
+
232
+ .bc-scene-player__segments__segment--completed {
233
+ background: var(--bc-scene-player-accent, #2c5aa0);
234
+ opacity: 1;
235
+ }
236
+
237
+ .bc-scene-player__segments__segment--active {
238
+ height: 6px;
239
+ background: var(--bc-scene-player-accent, #2c5aa0);
240
+ opacity: 1;
241
+ }
242
+
243
+ .bc-scene-player__segments__segment:hover {
244
+ opacity: 0.8;
245
+ }
246
+
247
+ .bc-scene-player__counter {
248
+ font-weight: 500;
249
+ color: var(--bc-scene-player-muted, #9b9893);
250
+ white-space: nowrap;
251
+ font-variant-numeric: tabular-nums;
252
+ }
253
+
254
+ .bc-scene-player--buttons .bc-scene-player__counter {
255
+ font-size: var(--bs-font-size-sm, 0.875rem);
256
+ }
257
+
258
+ .bc-scene-player--minimal-arrows .bc-scene-player__counter {
259
+ font-size: var(--bs-font-size-xs, 0.75rem);
260
+ margin-right: 4px;
261
+ }
262
+
263
+ .bc-scene-player--minimal-arrows .bc-scene-player__counter--end {
264
+ margin-right: 0;
265
+ margin-left: 4px;
266
+ }
267
+
268
+ .bc-scene-player--progress-bar .bc-scene-player__counter {
269
+ font-size: var(--bs-font-size-xs, 0.75rem);
270
+ flex-shrink: 0;
271
+ }
272
+
273
+ @media (prefers-reduced-motion: reduce) {
274
+ .bc-scene-player,
275
+ .bc-scene-player * {
276
+ transition: none;
277
+ }
278
+ }