mkdocs-markgraf 0.1.0__py3-none-any.whl

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.
File without changes
@@ -0,0 +1,281 @@
1
+ .markgraf-embed {
2
+ --mg-bg: #ffffff;
3
+ --mg-fg: #111111;
4
+ --mg-bar-bg: #111111;
5
+ --mg-bar-fg: #ffffff;
6
+ --mg-muted: #9a9a9a;
7
+ --mg-accent: #ffffff;
8
+ --mg-track: #111111;
9
+ --mg-track-hover: #111111;
10
+ position: relative;
11
+ border-radius: 10px;
12
+ background: transparent;
13
+ color: var(--mg-fg);
14
+ font: 13px/1.4 system-ui, -apple-system, "Segoe UI", sans-serif;
15
+ overflow: hidden;
16
+ }
17
+
18
+ .markgraf-embed canvas[data-mg="stage"] {
19
+ width: 100%;
20
+ display: block;
21
+ max-height: var(--mg-max-height, 90svh);
22
+ object-fit: contain;
23
+ }
24
+
25
+ .markgraf-embed :focus,
26
+ .markgraf-embed :focus-visible {
27
+ outline: none;
28
+ }
29
+
30
+ /* Big centered play hint shown while paused. Hidden as soon as a play
31
+ button anywhere in the embed flips to data-mg-playing="1". */
32
+ .markgraf-embed [data-mg="play-overlay"] {
33
+ position: absolute;
34
+ inset: 0;
35
+ margin: auto;
36
+ width: 72px;
37
+ height: 72px;
38
+ border-radius: 50%;
39
+ background: rgba(0, 0, 0, 0.55);
40
+ pointer-events: none;
41
+ opacity: 0;
42
+ transform: scale(0.85);
43
+ transition: opacity 0.12s ease, transform 0.12s ease;
44
+ }
45
+
46
+ .markgraf-embed [data-mg="play-overlay"]::before {
47
+ content: "";
48
+ position: absolute;
49
+ inset: 0;
50
+ margin: auto;
51
+ width: 32px;
52
+ height: 32px;
53
+ background: #fff;
54
+ -webkit-mask: var(--mg-icon-play) center / contain no-repeat;
55
+ mask: var(--mg-icon-play) center / contain no-repeat;
56
+ }
57
+
58
+ .markgraf-embed:has([data-mg="play"][data-mg-playing="0"]) [data-mg="play-overlay"] {
59
+ opacity: 1;
60
+ transform: scale(1);
61
+ }
62
+
63
+ .markgraf-embed [data-mg="bar"] {
64
+ position: absolute;
65
+ left: 0;
66
+ right: 0;
67
+ bottom: 0;
68
+ display: flex;
69
+ align-items: center;
70
+ gap: 8px;
71
+ padding: 6px 8px;
72
+ background: rgba(255, 255, 255, 0.92);
73
+ color: var(--mg-fg);
74
+ opacity: 0;
75
+ transform: translateY(2px);
76
+ transition: opacity 0.08s ease, transform 0.08s ease;
77
+ pointer-events: none;
78
+ }
79
+
80
+ .markgraf-embed:hover [data-mg="bar"],
81
+ .markgraf-embed:focus-within [data-mg="bar"] {
82
+ opacity: 1;
83
+ transform: translateY(0);
84
+ pointer-events: auto;
85
+ transition: opacity 0.16s ease, transform 0.16s ease;
86
+ }
87
+
88
+ .markgraf-embed [data-mg="play"] {
89
+ background: transparent;
90
+ color: var(--mg-fg);
91
+ border: 0;
92
+ border-radius: 999px;
93
+ width: 22px;
94
+ height: 22px;
95
+ padding: 0;
96
+ cursor: pointer;
97
+ display: inline-flex;
98
+ align-items: center;
99
+ justify-content: center;
100
+ transition: background 0.1s ease;
101
+ }
102
+
103
+ .markgraf-embed [data-mg="play"]:hover {
104
+ background: rgba(0, 0, 0, 0.08);
105
+ }
106
+
107
+ /* Heroicons v2 solid play / pause, rendered as a mask so the icon picks up
108
+ currentColor (light-mode black, dark-mode white via the bar override). */
109
+ .markgraf-embed [data-mg="play"]::before {
110
+ content: "";
111
+ display: block;
112
+ width: 14px;
113
+ height: 14px;
114
+ background: currentColor;
115
+ -webkit-mask: var(--mg-icon-play) center / contain no-repeat;
116
+ mask: var(--mg-icon-play) center / contain no-repeat;
117
+ }
118
+
119
+ .markgraf-embed [data-mg="play"][data-mg-playing="1"]::before {
120
+ -webkit-mask: var(--mg-icon-pause) center / contain no-repeat;
121
+ mask: var(--mg-icon-pause) center / contain no-repeat;
122
+ }
123
+
124
+ .markgraf-embed {
125
+ --mg-icon-play: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'><path d='M4.5 5.653c0-1.426 1.529-2.33 2.779-1.643l11.54 6.348c1.295.712 1.295 2.573 0 3.285L7.28 19.991c-1.25.687-2.779-.217-2.779-1.643V5.653Z'/></svg>");
126
+ --mg-icon-pause: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'><path d='M6.75 5.25a.75.75 0 0 1 .75-.75H9a.75.75 0 0 1 .75.75v13.5a.75.75 0 0 1-.75.75H7.5a.75.75 0 0 1-.75-.75V5.25Zm7.5 0A.75.75 0 0 1 15 4.5h1.5a.75.75 0 0 1 .75.75v13.5a.75.75 0 0 1-.75.75H15a.75.75 0 0 1-.75-.75V5.25Z'/></svg>");
127
+ }
128
+
129
+ .markgraf-embed [data-mg="time"] {
130
+ font-variant-numeric: tabular-nums;
131
+ font-size: 11px;
132
+ color: var(--mg-fg);
133
+ white-space: nowrap;
134
+ }
135
+
136
+ .markgraf-embed [data-mg="speed"] {
137
+ background: transparent;
138
+ border: 1px solid currentColor;
139
+ border-radius: 4px;
140
+ padding: 1px 4px;
141
+ color: var(--mg-fg);
142
+ font: 11px/1 inherit;
143
+ cursor: pointer;
144
+ }
145
+
146
+ .markgraf-embed [data-mg="speed"] option {
147
+ color: var(--mg-fg);
148
+ background: var(--mg-bg);
149
+ }
150
+
151
+ .markgraf-embed [data-mg="scrub-wrap"] {
152
+ position: relative;
153
+ flex: 1;
154
+ display: flex;
155
+ align-items: center;
156
+ }
157
+
158
+ .markgraf-embed [data-mg="ticks"] {
159
+ position: absolute;
160
+ left: 7px;
161
+ right: 7px;
162
+ top: 50%;
163
+ transform: translateY(-50%);
164
+ height: 18px;
165
+ pointer-events: none;
166
+ }
167
+
168
+ .markgraf-embed .mg-tick {
169
+ position: absolute;
170
+ top: 50%;
171
+ width: 4px;
172
+ height: 4px;
173
+ margin-left: -2px;
174
+ margin-top: -2px;
175
+ border-radius: 50%;
176
+ background: #fff;
177
+ opacity: 0.7;
178
+ pointer-events: auto;
179
+ cursor: pointer;
180
+ transition: transform 0.1s ease, opacity 0.1s ease;
181
+ }
182
+
183
+ .markgraf-embed .mg-tick:hover {
184
+ opacity: 1;
185
+ transform: scale(1.6);
186
+ }
187
+
188
+ .markgraf-embed .mg-tick::after {
189
+ content: attr(data-label);
190
+ position: absolute;
191
+ bottom: 100%;
192
+ left: 50%;
193
+ transform: translate(-50%, -4px);
194
+ background: rgba(15, 23, 42, 0.95);
195
+ color: #fff;
196
+ font-size: 11px;
197
+ padding: 2px 6px;
198
+ border-radius: 4px;
199
+ white-space: nowrap;
200
+ opacity: 0;
201
+ pointer-events: none;
202
+ transition: opacity 0.1s ease;
203
+ }
204
+
205
+ .markgraf-embed .mg-tick:hover::after {
206
+ opacity: 1;
207
+ }
208
+
209
+ /* Custom-styled scrubber. Cross-browser range inputs are notoriously ugly,
210
+ so we strip the native chrome and rebuild from CSS primitives. */
211
+ .markgraf-embed [data-mg="scrub"] {
212
+ -webkit-appearance: none;
213
+ appearance: none;
214
+ width: 100%;
215
+ height: 18px;
216
+ background: transparent;
217
+ cursor: pointer;
218
+ margin: 0;
219
+ position: relative;
220
+ z-index: 1;
221
+ }
222
+
223
+ .markgraf-embed [data-mg="scrub"]::-webkit-slider-runnable-track {
224
+ height: 4px;
225
+ background: var(--mg-track);
226
+ border-radius: 999px;
227
+ transition: background 0.15s ease;
228
+ }
229
+
230
+ .markgraf-embed [data-mg="scrub"]:hover::-webkit-slider-runnable-track {
231
+ background: var(--mg-track-hover);
232
+ }
233
+
234
+ .markgraf-embed [data-mg="scrub"]::-moz-range-track {
235
+ height: 4px;
236
+ background: var(--mg-track);
237
+ border-radius: 999px;
238
+ }
239
+
240
+ .markgraf-embed [data-mg="scrub"]::-webkit-slider-thumb {
241
+ -webkit-appearance: none;
242
+ appearance: none;
243
+ width: 14px;
244
+ height: 14px;
245
+ border-radius: 50%;
246
+ background: #111;
247
+ border: 2px solid #fff;
248
+ margin-top: -5px;
249
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
250
+ transition: transform 0.08s ease;
251
+ }
252
+
253
+ .markgraf-embed [data-mg="scrub"]:hover::-webkit-slider-thumb {
254
+ transform: scale(1.15);
255
+ }
256
+
257
+ .markgraf-embed [data-mg="scrub"]::-moz-range-thumb {
258
+ width: 14px;
259
+ height: 14px;
260
+ border-radius: 50%;
261
+ background: #111;
262
+ border: 2px solid #fff;
263
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
264
+ }
265
+
266
+ @media (prefers-color-scheme: dark) {
267
+ .markgraf-embed {
268
+ --mg-bg: #111111;
269
+ --mg-fg: #ffffff;
270
+ --mg-track: #ffffff;
271
+ --mg-track-hover: #ffffff;
272
+ }
273
+ .markgraf-embed [data-mg="bar"] {
274
+ background: rgba(17, 17, 17, 0.92);
275
+ }
276
+ .markgraf-embed [data-mg="scrub"]::-webkit-slider-thumb,
277
+ .markgraf-embed [data-mg="scrub"]::-moz-range-thumb {
278
+ background: #fff;
279
+ border-color: #111;
280
+ }
281
+ }