@playwright-repl/browser-extension 0.24.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.
Files changed (38) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +176 -0
  3. package/dist/background.js +162567 -0
  4. package/dist/background.js.map +1 -0
  5. package/dist/content/recorder.js +479 -0
  6. package/dist/content/trace-loader.js +12 -0
  7. package/dist/devtools/console.html +17 -0
  8. package/dist/devtools/console.js +44 -0
  9. package/dist/devtools/console.js.map +1 -0
  10. package/dist/devtools/devtools.html +8 -0
  11. package/dist/devtools/devtools.js +7 -0
  12. package/dist/devtools/devtools.js.map +1 -0
  13. package/dist/icons/dramaturg_icon_128.png +0 -0
  14. package/dist/icons/dramaturg_icon_16.png +0 -0
  15. package/dist/icons/dramaturg_icon_32.png +0 -0
  16. package/dist/icons/dramaturg_icon_48.png +0 -0
  17. package/dist/index.css +1353 -0
  18. package/dist/index.js +12462 -0
  19. package/dist/index.js.map +1 -0
  20. package/dist/index2.js +27328 -0
  21. package/dist/index2.js.map +1 -0
  22. package/dist/manifest.json +49 -0
  23. package/dist/modulepreload-polyfill.js +30 -0
  24. package/dist/modulepreload-polyfill.js.map +1 -0
  25. package/dist/offscreen/offscreen.html +6 -0
  26. package/dist/offscreen/offscreen.js +151 -0
  27. package/dist/offscreen/offscreen.js.map +1 -0
  28. package/dist/panel/panel.html +16 -0
  29. package/dist/panel/panel.js +2258 -0
  30. package/dist/panel/panel.js.map +1 -0
  31. package/dist/preferences/preferences.html +14 -0
  32. package/dist/preferences/preferences.js +102 -0
  33. package/dist/preferences/preferences.js.map +1 -0
  34. package/dist/settings.js +13 -0
  35. package/dist/settings.js.map +1 -0
  36. package/dist/sw-debugger-core.js +1139 -0
  37. package/dist/sw-debugger-core.js.map +1 -0
  38. package/package.json +80 -0
package/dist/index.css ADDED
@@ -0,0 +1,1353 @@
1
+ /*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
2
+ @layer properties {
3
+ @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
4
+ *, :before, :after, ::backdrop {
5
+ --tw-border-style: solid;
6
+ --tw-leading: initial;
7
+ --tw-shadow: 0 0 #0000;
8
+ --tw-shadow-color: initial;
9
+ --tw-shadow-alpha: 100%;
10
+ --tw-inset-shadow: 0 0 #0000;
11
+ --tw-inset-shadow-color: initial;
12
+ --tw-inset-shadow-alpha: 100%;
13
+ --tw-ring-color: initial;
14
+ --tw-ring-shadow: 0 0 #0000;
15
+ --tw-inset-ring-color: initial;
16
+ --tw-inset-ring-shadow: 0 0 #0000;
17
+ --tw-ring-inset: initial;
18
+ --tw-ring-offset-width: 0px;
19
+ --tw-ring-offset-color: #fff;
20
+ --tw-ring-offset-shadow: 0 0 #0000;
21
+ --tw-outline-style: solid;
22
+ --tw-blur: initial;
23
+ --tw-brightness: initial;
24
+ --tw-contrast: initial;
25
+ --tw-grayscale: initial;
26
+ --tw-hue-rotate: initial;
27
+ --tw-invert: initial;
28
+ --tw-opacity: initial;
29
+ --tw-saturate: initial;
30
+ --tw-sepia: initial;
31
+ --tw-drop-shadow: initial;
32
+ --tw-drop-shadow-color: initial;
33
+ --tw-drop-shadow-alpha: 100%;
34
+ --tw-drop-shadow-size: initial;
35
+ --tw-ease: initial;
36
+ }
37
+ }
38
+ }
39
+
40
+ @layer theme {
41
+ :root, :host {
42
+ --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
43
+ "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
44
+ --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
45
+ "Courier New", monospace;
46
+ --color-black: #000;
47
+ --color-white: #fff;
48
+ --spacing: .25rem;
49
+ --radius-sm: .25rem;
50
+ --ease-in-out: cubic-bezier(.4, 0, .2, 1);
51
+ --default-font-family: var(--font-sans);
52
+ --default-mono-font-family: var(--font-mono);
53
+ }
54
+ }
55
+
56
+ @layer base {
57
+ *, :after, :before, ::backdrop {
58
+ box-sizing: border-box;
59
+ border: 0 solid;
60
+ margin: 0;
61
+ padding: 0;
62
+ }
63
+
64
+ ::file-selector-button {
65
+ box-sizing: border-box;
66
+ border: 0 solid;
67
+ margin: 0;
68
+ padding: 0;
69
+ }
70
+
71
+ html, :host {
72
+ -webkit-text-size-adjust: 100%;
73
+ tab-size: 4;
74
+ line-height: 1.5;
75
+ 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");
76
+ font-feature-settings: var(--default-font-feature-settings, normal);
77
+ font-variation-settings: var(--default-font-variation-settings, normal);
78
+ -webkit-tap-highlight-color: transparent;
79
+ }
80
+
81
+ hr {
82
+ height: 0;
83
+ color: inherit;
84
+ border-top-width: 1px;
85
+ }
86
+
87
+ abbr:where([title]) {
88
+ -webkit-text-decoration: underline dotted;
89
+ text-decoration: underline dotted;
90
+ }
91
+
92
+ h1, h2, h3, h4, h5, h6 {
93
+ font-size: inherit;
94
+ font-weight: inherit;
95
+ }
96
+
97
+ a {
98
+ color: inherit;
99
+ -webkit-text-decoration: inherit;
100
+ -webkit-text-decoration: inherit;
101
+ -webkit-text-decoration: inherit;
102
+ text-decoration: inherit;
103
+ }
104
+
105
+ b, strong {
106
+ font-weight: bolder;
107
+ }
108
+
109
+ code, kbd, samp, pre {
110
+ font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
111
+ font-feature-settings: var(--default-mono-font-feature-settings, normal);
112
+ font-variation-settings: var(--default-mono-font-variation-settings, normal);
113
+ font-size: 1em;
114
+ }
115
+
116
+ small {
117
+ font-size: 80%;
118
+ }
119
+
120
+ sub, sup {
121
+ vertical-align: baseline;
122
+ font-size: 75%;
123
+ line-height: 0;
124
+ position: relative;
125
+ }
126
+
127
+ sub {
128
+ bottom: -.25em;
129
+ }
130
+
131
+ sup {
132
+ top: -.5em;
133
+ }
134
+
135
+ table {
136
+ text-indent: 0;
137
+ border-color: inherit;
138
+ border-collapse: collapse;
139
+ }
140
+
141
+ :-moz-focusring {
142
+ outline: auto;
143
+ }
144
+
145
+ progress {
146
+ vertical-align: baseline;
147
+ }
148
+
149
+ summary {
150
+ display: list-item;
151
+ }
152
+
153
+ ol, ul, menu {
154
+ list-style: none;
155
+ }
156
+
157
+ img, svg, video, canvas, audio, iframe, embed, object {
158
+ vertical-align: middle;
159
+ display: block;
160
+ }
161
+
162
+ img, video {
163
+ max-width: 100%;
164
+ height: auto;
165
+ }
166
+
167
+ button, input, select, optgroup, textarea {
168
+ font: inherit;
169
+ font-feature-settings: inherit;
170
+ font-variation-settings: inherit;
171
+ letter-spacing: inherit;
172
+ color: inherit;
173
+ opacity: 1;
174
+ background-color: #0000;
175
+ border-radius: 0;
176
+ }
177
+
178
+ ::file-selector-button {
179
+ font: inherit;
180
+ font-feature-settings: inherit;
181
+ font-variation-settings: inherit;
182
+ letter-spacing: inherit;
183
+ color: inherit;
184
+ opacity: 1;
185
+ background-color: #0000;
186
+ border-radius: 0;
187
+ }
188
+
189
+ :where(select:is([multiple], [size])) optgroup {
190
+ font-weight: bolder;
191
+ }
192
+
193
+ :where(select:is([multiple], [size])) optgroup option {
194
+ padding-inline-start: 20px;
195
+ }
196
+
197
+ ::file-selector-button {
198
+ margin-inline-end: 4px;
199
+ }
200
+
201
+ ::placeholder {
202
+ opacity: 1;
203
+ }
204
+
205
+ @supports (not ((-webkit-appearance: -apple-pay-button))) or (contain-intrinsic-size: 1px) {
206
+ ::placeholder {
207
+ color: currentColor;
208
+ }
209
+
210
+ @supports (color: color-mix(in lab, red, red)) {
211
+ ::placeholder {
212
+ color: color-mix(in oklab, currentcolor 50%, transparent);
213
+ }
214
+ }
215
+ }
216
+
217
+ textarea {
218
+ resize: vertical;
219
+ }
220
+
221
+ ::-webkit-search-decoration {
222
+ -webkit-appearance: none;
223
+ }
224
+
225
+ ::-webkit-date-and-time-value {
226
+ min-height: 1lh;
227
+ text-align: inherit;
228
+ }
229
+
230
+ ::-webkit-datetime-edit {
231
+ display: inline-flex;
232
+ }
233
+
234
+ ::-webkit-datetime-edit-fields-wrapper {
235
+ padding: 0;
236
+ }
237
+
238
+ ::-webkit-datetime-edit {
239
+ padding-block: 0;
240
+ }
241
+
242
+ ::-webkit-datetime-edit-year-field {
243
+ padding-block: 0;
244
+ }
245
+
246
+ ::-webkit-datetime-edit-month-field {
247
+ padding-block: 0;
248
+ }
249
+
250
+ ::-webkit-datetime-edit-day-field {
251
+ padding-block: 0;
252
+ }
253
+
254
+ ::-webkit-datetime-edit-hour-field {
255
+ padding-block: 0;
256
+ }
257
+
258
+ ::-webkit-datetime-edit-minute-field {
259
+ padding-block: 0;
260
+ }
261
+
262
+ ::-webkit-datetime-edit-second-field {
263
+ padding-block: 0;
264
+ }
265
+
266
+ ::-webkit-datetime-edit-millisecond-field {
267
+ padding-block: 0;
268
+ }
269
+
270
+ ::-webkit-datetime-edit-meridiem-field {
271
+ padding-block: 0;
272
+ }
273
+
274
+ ::-webkit-calendar-picker-indicator {
275
+ line-height: 1;
276
+ }
277
+
278
+ :-moz-ui-invalid {
279
+ box-shadow: none;
280
+ }
281
+
282
+ button, input:where([type="button"], [type="reset"], [type="submit"]) {
283
+ appearance: button;
284
+ }
285
+
286
+ ::file-selector-button {
287
+ appearance: button;
288
+ }
289
+
290
+ ::-webkit-inner-spin-button {
291
+ height: auto;
292
+ }
293
+
294
+ ::-webkit-outer-spin-button {
295
+ height: auto;
296
+ }
297
+
298
+ [hidden]:where(:not([hidden="until-found"])) {
299
+ display: none !important;
300
+ }
301
+ }
302
+
303
+ @layer components;
304
+
305
+ @layer utilities {
306
+ .visible {
307
+ visibility: visible;
308
+ }
309
+
310
+ .absolute {
311
+ position: absolute;
312
+ }
313
+
314
+ .fixed {
315
+ position: fixed;
316
+ }
317
+
318
+ .relative {
319
+ position: relative;
320
+ }
321
+
322
+ .static {
323
+ position: static;
324
+ }
325
+
326
+ .inset-0 {
327
+ inset: calc(var(--spacing) * 0);
328
+ }
329
+
330
+ .start {
331
+ inset-inline-start: var(--spacing);
332
+ }
333
+
334
+ .end {
335
+ inset-inline-end: var(--spacing);
336
+ }
337
+
338
+ .top-1 {
339
+ top: calc(var(--spacing) * 1);
340
+ }
341
+
342
+ .top-\[10px\] {
343
+ top: 10px;
344
+ }
345
+
346
+ .right-1 {
347
+ right: calc(var(--spacing) * 1);
348
+ }
349
+
350
+ .right-\[10px\] {
351
+ right: 10px;
352
+ }
353
+
354
+ .right-\[50px\] {
355
+ right: 50px;
356
+ }
357
+
358
+ .z-100 {
359
+ z-index: 100;
360
+ }
361
+
362
+ .container {
363
+ width: 100%;
364
+ }
365
+
366
+ @media (min-width: 40rem) {
367
+ .container {
368
+ max-width: 40rem;
369
+ }
370
+ }
371
+
372
+ @media (min-width: 48rem) {
373
+ .container {
374
+ max-width: 48rem;
375
+ }
376
+ }
377
+
378
+ @media (min-width: 64rem) {
379
+ .container {
380
+ max-width: 64rem;
381
+ }
382
+ }
383
+
384
+ @media (min-width: 80rem) {
385
+ .container {
386
+ max-width: 80rem;
387
+ }
388
+ }
389
+
390
+ @media (min-width: 96rem) {
391
+ .container {
392
+ max-width: 96rem;
393
+ }
394
+ }
395
+
396
+ .m-0 {
397
+ margin: calc(var(--spacing) * 0);
398
+ }
399
+
400
+ .mx-0 {
401
+ margin-inline: calc(var(--spacing) * 0);
402
+ }
403
+
404
+ .mx-1 {
405
+ margin-inline: calc(var(--spacing) * 1);
406
+ }
407
+
408
+ .my-\[6px\] {
409
+ margin-block: 6px;
410
+ }
411
+
412
+ .mt-0\.5 {
413
+ margin-top: calc(var(--spacing) * .5);
414
+ }
415
+
416
+ .ml-1 {
417
+ margin-left: calc(var(--spacing) * 1);
418
+ }
419
+
420
+ .block {
421
+ display: block;
422
+ }
423
+
424
+ .contents {
425
+ display: contents;
426
+ }
427
+
428
+ .flex {
429
+ display: flex;
430
+ }
431
+
432
+ .hidden {
433
+ display: none;
434
+ }
435
+
436
+ .inline {
437
+ display: inline;
438
+ }
439
+
440
+ .inline-block {
441
+ display: inline-block;
442
+ }
443
+
444
+ .inline-flex {
445
+ display: inline-flex;
446
+ }
447
+
448
+ .table {
449
+ display: table;
450
+ }
451
+
452
+ .h-4\.5 {
453
+ height: calc(var(--spacing) * 4.5);
454
+ }
455
+
456
+ .h-\[2px\] {
457
+ height: 2px;
458
+ }
459
+
460
+ .h-\[6px\] {
461
+ height: 6px;
462
+ }
463
+
464
+ .max-h-\[95\%\] {
465
+ max-height: 95%;
466
+ }
467
+
468
+ .min-h-20 {
469
+ min-height: calc(var(--spacing) * 20);
470
+ }
471
+
472
+ .min-h-\[80px\] {
473
+ min-height: 80px;
474
+ }
475
+
476
+ .w-10 {
477
+ width: calc(var(--spacing) * 10);
478
+ }
479
+
480
+ .w-full {
481
+ width: 100%;
482
+ }
483
+
484
+ .w-px {
485
+ width: 1px;
486
+ }
487
+
488
+ .max-w-100 {
489
+ max-width: calc(var(--spacing) * 100);
490
+ }
491
+
492
+ .max-w-\[95\%\] {
493
+ max-width: 95%;
494
+ }
495
+
496
+ .min-w-0 {
497
+ min-width: calc(var(--spacing) * 0);
498
+ }
499
+
500
+ .flex-1 {
501
+ flex: 1;
502
+ }
503
+
504
+ .shrink-0 {
505
+ flex-shrink: 0;
506
+ }
507
+
508
+ .cursor-default {
509
+ cursor: default;
510
+ }
511
+
512
+ .cursor-pointer {
513
+ cursor: pointer;
514
+ }
515
+
516
+ .cursor-row-resize {
517
+ cursor: row-resize;
518
+ }
519
+
520
+ .cursor-zoom-in {
521
+ cursor: zoom-in;
522
+ }
523
+
524
+ .resize {
525
+ resize: both;
526
+ }
527
+
528
+ .flex-col {
529
+ flex-direction: column;
530
+ }
531
+
532
+ .flex-wrap {
533
+ flex-wrap: wrap;
534
+ }
535
+
536
+ .items-center {
537
+ align-items: center;
538
+ }
539
+
540
+ .items-start {
541
+ align-items: flex-start;
542
+ }
543
+
544
+ .justify-between {
545
+ justify-content: space-between;
546
+ }
547
+
548
+ .justify-center {
549
+ justify-content: center;
550
+ }
551
+
552
+ .gap-1 {
553
+ gap: calc(var(--spacing) * 1);
554
+ }
555
+
556
+ .gap-2 {
557
+ gap: calc(var(--spacing) * 2);
558
+ }
559
+
560
+ .gap-3 {
561
+ gap: calc(var(--spacing) * 3);
562
+ }
563
+
564
+ .overflow-auto {
565
+ overflow: auto;
566
+ }
567
+
568
+ .overflow-hidden {
569
+ overflow: hidden;
570
+ }
571
+
572
+ .overflow-y-auto {
573
+ overflow-y: auto;
574
+ }
575
+
576
+ .rounded {
577
+ border-radius: .25rem;
578
+ }
579
+
580
+ .rounded-\[1px\] {
581
+ border-radius: 1px;
582
+ }
583
+
584
+ .rounded-\[3px\] {
585
+ border-radius: 3px;
586
+ }
587
+
588
+ .rounded-\[4px\] {
589
+ border-radius: 4px;
590
+ }
591
+
592
+ .rounded-none {
593
+ border-radius: 0;
594
+ }
595
+
596
+ .rounded-sm {
597
+ border-radius: var(--radius-sm);
598
+ }
599
+
600
+ .border {
601
+ border-style: var(--tw-border-style);
602
+ border-width: 1px;
603
+ }
604
+
605
+ .border-0 {
606
+ border-style: var(--tw-border-style);
607
+ border-width: 0;
608
+ }
609
+
610
+ .border-y {
611
+ border-block-style: var(--tw-border-style);
612
+ border-block-width: 1px;
613
+ }
614
+
615
+ .border-b {
616
+ border-bottom-style: var(--tw-border-style);
617
+ border-bottom-width: 1px;
618
+ }
619
+
620
+ .border-solid {
621
+ --tw-border-style: solid;
622
+ border-style: solid;
623
+ }
624
+
625
+ .border-\(--border-button\) {
626
+ border-color: var(--border-button);
627
+ }
628
+
629
+ .border-\(--border-primary\) {
630
+ border-color: var(--border-primary);
631
+ }
632
+
633
+ .border-white\/30 {
634
+ border-color: #ffffff4d;
635
+ }
636
+
637
+ @supports (color: color-mix(in lab, red, red)) {
638
+ .border-white\/30 {
639
+ border-color: color-mix(in oklab, var(--color-white) 30%, transparent);
640
+ }
641
+ }
642
+
643
+ .bg-\(--bg-button\) {
644
+ background-color: var(--bg-button);
645
+ }
646
+
647
+ .bg-\(--bg-editor\) {
648
+ background-color: var(--bg-editor);
649
+ }
650
+
651
+ .bg-\(--bg-line-highlight\) {
652
+ background-color: var(--bg-line-highlight);
653
+ }
654
+
655
+ .bg-\(--bg-splitter\) {
656
+ background-color: var(--bg-splitter);
657
+ }
658
+
659
+ .bg-\(--bg-toolbar\) {
660
+ background-color: var(--bg-toolbar);
661
+ }
662
+
663
+ .bg-\(--color-splitter-handle\) {
664
+ background-color: var(--color-splitter-handle);
665
+ }
666
+
667
+ .bg-\(--color-toolbar-sep\) {
668
+ background-color: var(--color-toolbar-sep);
669
+ }
670
+
671
+ .bg-black\/80 {
672
+ background-color: #000c;
673
+ }
674
+
675
+ @supports (color: color-mix(in lab, red, red)) {
676
+ .bg-black\/80 {
677
+ background-color: color-mix(in oklab, var(--color-black) 80%, transparent);
678
+ }
679
+ }
680
+
681
+ .bg-white\/15 {
682
+ background-color: #ffffff26;
683
+ }
684
+
685
+ @supports (color: color-mix(in lab, red, red)) {
686
+ .bg-white\/15 {
687
+ background-color: color-mix(in oklab, var(--color-white) 15%, transparent);
688
+ }
689
+ }
690
+
691
+ .p-2 {
692
+ padding: calc(var(--spacing) * 2);
693
+ }
694
+
695
+ .px-1 {
696
+ padding-inline: calc(var(--spacing) * 1);
697
+ }
698
+
699
+ .px-1\.5 {
700
+ padding-inline: calc(var(--spacing) * 1.5);
701
+ }
702
+
703
+ .px-2 {
704
+ padding-inline: calc(var(--spacing) * 2);
705
+ }
706
+
707
+ .px-3 {
708
+ padding-inline: calc(var(--spacing) * 3);
709
+ }
710
+
711
+ .px-\[14px\] {
712
+ padding-inline: 14px;
713
+ }
714
+
715
+ .py-0\.5 {
716
+ padding-block: calc(var(--spacing) * .5);
717
+ }
718
+
719
+ .py-1 {
720
+ padding-block: calc(var(--spacing) * 1);
721
+ }
722
+
723
+ .py-2 {
724
+ padding-block: calc(var(--spacing) * 2);
725
+ }
726
+
727
+ .py-\[2px\] {
728
+ padding-block: 2px;
729
+ }
730
+
731
+ .pt-0\.5 {
732
+ padding-top: calc(var(--spacing) * .5);
733
+ }
734
+
735
+ .pb-1 {
736
+ padding-bottom: calc(var(--spacing) * 1);
737
+ }
738
+
739
+ .font-\[inherit\] {
740
+ font-family: inherit;
741
+ }
742
+
743
+ .font-mono {
744
+ font-family: var(--font-mono);
745
+ }
746
+
747
+ .text-\[10px\] {
748
+ font-size: 10px;
749
+ }
750
+
751
+ .text-\[11px\] {
752
+ font-size: 11px;
753
+ }
754
+
755
+ .text-\[12px\] {
756
+ font-size: 12px;
757
+ }
758
+
759
+ .text-\[18px\] {
760
+ font-size: 18px;
761
+ }
762
+
763
+ .leading-4 {
764
+ --tw-leading: calc(var(--spacing) * 4);
765
+ line-height: calc(var(--spacing) * 4);
766
+ }
767
+
768
+ .leading-none {
769
+ --tw-leading: 1;
770
+ line-height: 1;
771
+ }
772
+
773
+ .wrap-break-word {
774
+ overflow-wrap: break-word;
775
+ }
776
+
777
+ .whitespace-pre-wrap {
778
+ white-space: pre-wrap;
779
+ }
780
+
781
+ .text-\(--color-command\) {
782
+ color: var(--color-command);
783
+ }
784
+
785
+ .text-\(--color-error\) {
786
+ color: var(--color-error);
787
+ }
788
+
789
+ .text-\(--color-prompt\) {
790
+ color: var(--color-prompt);
791
+ }
792
+
793
+ .text-\(--color-success\) {
794
+ color: var(--color-success);
795
+ }
796
+
797
+ .text-\(--text-default\) {
798
+ color: var(--text-default);
799
+ }
800
+
801
+ .text-\(--text-dim\) {
802
+ color: var(--text-dim);
803
+ }
804
+
805
+ .text-white {
806
+ color: var(--color-white);
807
+ }
808
+
809
+ .lowercase {
810
+ text-transform: lowercase;
811
+ }
812
+
813
+ .italic {
814
+ font-style: italic;
815
+ }
816
+
817
+ .underline {
818
+ text-decoration-line: underline;
819
+ }
820
+
821
+ .shadow-\[0_4px_20px_rgba\(0\,0\,0\,0\.5\)\] {
822
+ --tw-shadow: 0 4px 20px var(--tw-shadow-color, #00000080);
823
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
824
+ }
825
+
826
+ .outline {
827
+ outline-style: var(--tw-outline-style);
828
+ outline-width: 1px;
829
+ }
830
+
831
+ .blur {
832
+ --tw-blur: blur(8px);
833
+ 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, );
834
+ }
835
+
836
+ .filter {
837
+ 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, );
838
+ }
839
+
840
+ .ease-in-out {
841
+ --tw-ease: var(--ease-in-out);
842
+ transition-timing-function: var(--ease-in-out);
843
+ }
844
+
845
+ .last\:border-b-0:last-child {
846
+ border-bottom-style: var(--tw-border-style);
847
+ border-bottom-width: 0;
848
+ }
849
+
850
+ @media (hover: hover) {
851
+ .hover\:bg-\(--bg-button-hover\):hover {
852
+ background-color: var(--bg-button-hover);
853
+ }
854
+
855
+ .hover\:bg-white\/30:hover {
856
+ background-color: #ffffff4d;
857
+ }
858
+
859
+ @supports (color: color-mix(in lab, red, red)) {
860
+ .hover\:bg-white\/30:hover {
861
+ background-color: color-mix(in oklab, var(--color-white) 30%, transparent);
862
+ }
863
+ }
864
+ }
865
+ }
866
+
867
+ :root {
868
+ --bg-body: #fff;
869
+ --bg-toolbar: #f3f3f3;
870
+ --bg-editor: #fff;
871
+ --bg-line-highlight: #e8e8e8;
872
+ --bg-run-line: #d4ecfb;
873
+ --bg-button: #e0e0e0;
874
+ --bg-button-hover: #d0d0d0;
875
+ --bg-splitter: #f3f3f3;
876
+ --bg-splitter-hover: #e8e8e8;
877
+ --bg-scrollbar-track: #fff;
878
+ --bg-scrollbar-thumb: #c1c1c1;
879
+ --bg-scrollbar-thumb-hover: #a8a8a8;
880
+ --text-default: #1e1e1e;
881
+ --text-line-numbers: #858585;
882
+ --text-dim: #6e6e6e;
883
+ --text-placeholder: #a0a0a0;
884
+ --border-primary: #d4d4d4;
885
+ --border-button: #c8c8c8;
886
+ --border-screenshot: #d4d4d4;
887
+ --color-run-bg: #2ea043;
888
+ --color-run-bg-hover: #3fb950;
889
+ --color-recording-bg: #fde8e8;
890
+ --color-recording-text: #d32f2f;
891
+ --color-recording-border: #d32f2f;
892
+ --color-error: #d32f2f;
893
+ --color-success: #2e7d32;
894
+ --color-command: #0451a5;
895
+ --color-snapshot: #0070c1;
896
+ --color-comment: #6a9955;
897
+ --color-string: #a31515;
898
+ --color-flag: #795e26;
899
+ --color-url: #0070c1;
900
+ --color-active-line: #795e26;
901
+ --color-line-pass: #2e7d32;
902
+ --color-line-fail: #d32f2f;
903
+ --color-prompt: #2e7d32;
904
+ --color-splitter-handle: #a0a0a0;
905
+ --color-splitter-handle-hover: #007acc;
906
+ --color-toolbar-sep: #d4d4d4;
907
+ --color-caret: #1e1e1e;
908
+ --color-breakpoint: #e51400;
909
+ --color-inline-value: #6e6e6e;
910
+ }
911
+
912
+ .theme-dark {
913
+ --bg-body: #1e1e1e;
914
+ --bg-toolbar: #252526;
915
+ --bg-editor: #1e1e1e;
916
+ --bg-line-highlight: #2a2d2e;
917
+ --bg-run-line: #1a3a50;
918
+ --bg-button: #333;
919
+ --bg-button-hover: #3c3c3c;
920
+ --bg-splitter: #252526;
921
+ --bg-splitter-hover: #2a2d2e;
922
+ --bg-scrollbar-track: #1e1e1e;
923
+ --bg-scrollbar-thumb: #444;
924
+ --bg-scrollbar-thumb-hover: #555;
925
+ --text-default: #d4d4d4;
926
+ --text-line-numbers: #858585;
927
+ --text-dim: #888;
928
+ --text-placeholder: #555;
929
+ --border-primary: #333;
930
+ --border-button: #444;
931
+ --border-screenshot: #444;
932
+ --color-run-bg: #2ea043;
933
+ --color-run-bg-hover: #3fb950;
934
+ --color-recording-bg: #5c2020;
935
+ --color-recording-text: #f44747;
936
+ --color-recording-border: #f44747;
937
+ --color-error: #f44747;
938
+ --color-success: #6a9955;
939
+ --color-command: #569cd6;
940
+ --color-snapshot: #9cdcfe;
941
+ --color-comment: #6a9955;
942
+ --color-string: #ce9178;
943
+ --color-flag: #dcdcaa;
944
+ --color-url: #9cdcfe;
945
+ --color-active-line: #dcdcaa;
946
+ --color-line-pass: #6a9955;
947
+ --color-line-fail: #f44747;
948
+ --color-prompt: #6a9955;
949
+ --color-splitter-handle: #555;
950
+ --color-splitter-handle-hover: #007acc;
951
+ --color-toolbar-sep: #444;
952
+ --color-caret: #d4d4d4;
953
+ --color-breakpoint: #e51400;
954
+ --color-inline-value: #888;
955
+ }
956
+
957
+ html, body {
958
+ background: var(--bg-body);
959
+ height: 100%;
960
+ color: var(--text-default);
961
+ flex-direction: column;
962
+ font-family: Cascadia Code, Fira Code, Consolas, Courier New, monospace;
963
+ font-size: 13px;
964
+ display: flex;
965
+ }
966
+
967
+ #root {
968
+ flex-direction: column;
969
+ flex: 1;
970
+ display: flex;
971
+ overflow: hidden;
972
+ }
973
+
974
+ #toolbar button {
975
+ background: var(--bg-button);
976
+ color: var(--text-default);
977
+ border: 1px solid var(--border-button);
978
+ cursor: pointer;
979
+ border-radius: 4px;
980
+ justify-content: center;
981
+ align-items: center;
982
+ padding: 4px 6px;
983
+ font-family: inherit;
984
+ font-size: 11px;
985
+ display: inline-flex;
986
+ }
987
+
988
+ #toolbar button:hover {
989
+ background: var(--bg-button-hover);
990
+ }
991
+
992
+ #toolbar button:disabled {
993
+ opacity: .4;
994
+ cursor: default;
995
+ }
996
+
997
+ #toolbar [data-testid="mode-toggle"] button[data-active] {
998
+ background: var(--color-run-bg);
999
+ color: #fff;
1000
+ font-weight: 600;
1001
+ }
1002
+
1003
+ #toolbar [data-testid="mode-toggle"] button:not([data-active]) {
1004
+ opacity: .6;
1005
+ background: none;
1006
+ }
1007
+
1008
+ #run-btn, #step-btn {
1009
+ text-align: center;
1010
+ min-width: 28px;
1011
+ padding: 4px 8px;
1012
+ font-size: 14px;
1013
+ }
1014
+
1015
+ #debug-btn, #step-btn, #stop-run-btn {
1016
+ color: var(--text-primary);
1017
+ }
1018
+
1019
+ #run-btn {
1020
+ font-weight: bold;
1021
+ background: var(--color-run-bg) !important;
1022
+ color: #fff !important;
1023
+ border-color: var(--color-run-bg) !important;
1024
+ }
1025
+
1026
+ #run-btn:hover {
1027
+ background: var(--color-run-bg-hover) !important;
1028
+ }
1029
+
1030
+ #record-btn.recording, #video-btn.video-recording {
1031
+ background: var(--color-recording-bg) !important;
1032
+ color: var(--color-recording-text) !important;
1033
+ border-color: var(--color-recording-border) !important;
1034
+ }
1035
+
1036
+ [data-testid="pick-btn"].picking {
1037
+ color: #1565c0 !important;
1038
+ background: #e3f2fd !important;
1039
+ border-color: #1565c0 !important;
1040
+ }
1041
+
1042
+ .theme-dark [data-testid="pick-btn"].picking {
1043
+ color: #64b5f6 !important;
1044
+ background: #1a3a5c !important;
1045
+ border-color: #64b5f6 !important;
1046
+ }
1047
+
1048
+ #splitter:hover {
1049
+ background: var(--bg-splitter-hover);
1050
+ }
1051
+
1052
+ #splitter:hover #splitter-handle {
1053
+ background: var(--color-splitter-handle-hover);
1054
+ }
1055
+
1056
+ .cm-scroller::-webkit-scrollbar {
1057
+ width: 8px;
1058
+ }
1059
+
1060
+ .cm-scroller::-webkit-scrollbar-track {
1061
+ background: var(--bg-scrollbar-track);
1062
+ }
1063
+
1064
+ .cm-scroller::-webkit-scrollbar-thumb {
1065
+ background: var(--bg-scrollbar-thumb);
1066
+ border-radius: 4px;
1067
+ }
1068
+
1069
+ .cm-scroller::-webkit-scrollbar-thumb:hover {
1070
+ background: var(--bg-scrollbar-thumb-hover);
1071
+ }
1072
+
1073
+ .ot-key {
1074
+ color: var(--color-flag);
1075
+ }
1076
+
1077
+ .ot-colon {
1078
+ color: var(--text-dim);
1079
+ }
1080
+
1081
+ .ot-string {
1082
+ color: var(--color-string);
1083
+ }
1084
+
1085
+ .ot-number, .ot-boolean {
1086
+ color: var(--color-url);
1087
+ }
1088
+
1089
+ .ot-null, .ot-undefined {
1090
+ color: var(--text-dim);
1091
+ font-style: italic;
1092
+ }
1093
+
1094
+ .ot-empty {
1095
+ color: var(--text-dim);
1096
+ }
1097
+
1098
+ .ot-toggle {
1099
+ cursor: pointer;
1100
+ -webkit-user-select: none;
1101
+ user-select: none;
1102
+ color: var(--text-dim);
1103
+ }
1104
+
1105
+ .ot-toggle:hover {
1106
+ color: var(--text-default);
1107
+ }
1108
+
1109
+ .ot-summary {
1110
+ color: var(--text-dim);
1111
+ }
1112
+
1113
+ .ot-children {
1114
+ padding-left: 12px;
1115
+ }
1116
+
1117
+ .ot-row {
1118
+ align-items: baseline;
1119
+ display: flex;
1120
+ }
1121
+
1122
+ #debug-bar {
1123
+ z-index: 20;
1124
+ background: var(--bg-toolbar);
1125
+ border: 1px solid var(--border-primary);
1126
+ border-radius: 6px;
1127
+ align-items: center;
1128
+ gap: 2px;
1129
+ padding: 3px 6px;
1130
+ display: flex;
1131
+ position: fixed;
1132
+ top: 3px;
1133
+ left: 50%;
1134
+ transform: translateX(-50%);
1135
+ box-shadow: 0 2px 8px #00000026;
1136
+ }
1137
+
1138
+ #debug-bar button {
1139
+ color: var(--text-default);
1140
+ cursor: pointer;
1141
+ background: none;
1142
+ border: 1px solid #0000;
1143
+ border-radius: 4px;
1144
+ justify-content: center;
1145
+ align-items: center;
1146
+ padding: 3px 5px;
1147
+ display: inline-flex;
1148
+ }
1149
+
1150
+ #debug-bar button:hover {
1151
+ background: var(--bg-button-hover);
1152
+ border-color: var(--border-button);
1153
+ }
1154
+
1155
+ .debug-bar-sep {
1156
+ background: var(--color-toolbar-sep);
1157
+ width: 1px;
1158
+ height: 16px;
1159
+ margin: 0 2px;
1160
+ }
1161
+
1162
+ .console-clear-btn {
1163
+ color: var(--text-dim);
1164
+ cursor: pointer;
1165
+ background: none;
1166
+ border: none;
1167
+ border-radius: 3px;
1168
+ padding: 2px 6px;
1169
+ font-family: inherit;
1170
+ font-size: 10px;
1171
+ }
1172
+
1173
+ .console-clear-btn:hover {
1174
+ color: var(--text-default);
1175
+ background: var(--bg-button);
1176
+ }
1177
+
1178
+ [data-testid="bottom-pane"] > div:first-child button[data-active] {
1179
+ opacity: 1;
1180
+ border-bottom: 2px solid var(--color-run-bg);
1181
+ }
1182
+
1183
+ [data-testid="bottom-pane"] > div:first-child button:not([data-active]) {
1184
+ opacity: .6;
1185
+ border-bottom: 2px solid #0000;
1186
+ }
1187
+
1188
+ @property --tw-border-style {
1189
+ syntax: "*";
1190
+ inherits: false;
1191
+ initial-value: solid;
1192
+ }
1193
+
1194
+ @property --tw-leading {
1195
+ syntax: "*";
1196
+ inherits: false
1197
+ }
1198
+
1199
+ @property --tw-shadow {
1200
+ syntax: "*";
1201
+ inherits: false;
1202
+ initial-value: 0 0 #0000;
1203
+ }
1204
+
1205
+ @property --tw-shadow-color {
1206
+ syntax: "*";
1207
+ inherits: false
1208
+ }
1209
+
1210
+ @property --tw-shadow-alpha {
1211
+ syntax: "<percentage>";
1212
+ inherits: false;
1213
+ initial-value: 100%;
1214
+ }
1215
+
1216
+ @property --tw-inset-shadow {
1217
+ syntax: "*";
1218
+ inherits: false;
1219
+ initial-value: 0 0 #0000;
1220
+ }
1221
+
1222
+ @property --tw-inset-shadow-color {
1223
+ syntax: "*";
1224
+ inherits: false
1225
+ }
1226
+
1227
+ @property --tw-inset-shadow-alpha {
1228
+ syntax: "<percentage>";
1229
+ inherits: false;
1230
+ initial-value: 100%;
1231
+ }
1232
+
1233
+ @property --tw-ring-color {
1234
+ syntax: "*";
1235
+ inherits: false
1236
+ }
1237
+
1238
+ @property --tw-ring-shadow {
1239
+ syntax: "*";
1240
+ inherits: false;
1241
+ initial-value: 0 0 #0000;
1242
+ }
1243
+
1244
+ @property --tw-inset-ring-color {
1245
+ syntax: "*";
1246
+ inherits: false
1247
+ }
1248
+
1249
+ @property --tw-inset-ring-shadow {
1250
+ syntax: "*";
1251
+ inherits: false;
1252
+ initial-value: 0 0 #0000;
1253
+ }
1254
+
1255
+ @property --tw-ring-inset {
1256
+ syntax: "*";
1257
+ inherits: false
1258
+ }
1259
+
1260
+ @property --tw-ring-offset-width {
1261
+ syntax: "<length>";
1262
+ inherits: false;
1263
+ initial-value: 0;
1264
+ }
1265
+
1266
+ @property --tw-ring-offset-color {
1267
+ syntax: "*";
1268
+ inherits: false;
1269
+ initial-value: #fff;
1270
+ }
1271
+
1272
+ @property --tw-ring-offset-shadow {
1273
+ syntax: "*";
1274
+ inherits: false;
1275
+ initial-value: 0 0 #0000;
1276
+ }
1277
+
1278
+ @property --tw-outline-style {
1279
+ syntax: "*";
1280
+ inherits: false;
1281
+ initial-value: solid;
1282
+ }
1283
+
1284
+ @property --tw-blur {
1285
+ syntax: "*";
1286
+ inherits: false
1287
+ }
1288
+
1289
+ @property --tw-brightness {
1290
+ syntax: "*";
1291
+ inherits: false
1292
+ }
1293
+
1294
+ @property --tw-contrast {
1295
+ syntax: "*";
1296
+ inherits: false
1297
+ }
1298
+
1299
+ @property --tw-grayscale {
1300
+ syntax: "*";
1301
+ inherits: false
1302
+ }
1303
+
1304
+ @property --tw-hue-rotate {
1305
+ syntax: "*";
1306
+ inherits: false
1307
+ }
1308
+
1309
+ @property --tw-invert {
1310
+ syntax: "*";
1311
+ inherits: false
1312
+ }
1313
+
1314
+ @property --tw-opacity {
1315
+ syntax: "*";
1316
+ inherits: false
1317
+ }
1318
+
1319
+ @property --tw-saturate {
1320
+ syntax: "*";
1321
+ inherits: false
1322
+ }
1323
+
1324
+ @property --tw-sepia {
1325
+ syntax: "*";
1326
+ inherits: false
1327
+ }
1328
+
1329
+ @property --tw-drop-shadow {
1330
+ syntax: "*";
1331
+ inherits: false
1332
+ }
1333
+
1334
+ @property --tw-drop-shadow-color {
1335
+ syntax: "*";
1336
+ inherits: false
1337
+ }
1338
+
1339
+ @property --tw-drop-shadow-alpha {
1340
+ syntax: "<percentage>";
1341
+ inherits: false;
1342
+ initial-value: 100%;
1343
+ }
1344
+
1345
+ @property --tw-drop-shadow-size {
1346
+ syntax: "*";
1347
+ inherits: false
1348
+ }
1349
+
1350
+ @property --tw-ease {
1351
+ syntax: "*";
1352
+ inherits: false
1353
+ }