@anlyx/ui 0.1.2 → 0.1.5

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 (62) hide show
  1. package/README.md +3 -2
  2. package/dist/capture/capture-runtime.d.ts +14 -0
  3. package/dist/capture/capture-runtime.js +300 -0
  4. package/dist/components/AnalysisEvidenceList.d.ts +5 -0
  5. package/dist/components/AnalysisEvidenceList.js +61 -0
  6. package/dist/components/AnlyxAppShell.d.ts +1 -1
  7. package/dist/components/AnlyxAppShell.js +16 -7
  8. package/dist/components/ApiCallList.d.ts +3 -2
  9. package/dist/components/ApiCallList.js +12 -2
  10. package/dist/components/CaptureStatusEmptyState.js +2 -2
  11. package/dist/components/EndpointMapCanvas.js +1 -1
  12. package/dist/components/FlowStoryView.d.ts +22 -0
  13. package/dist/components/FlowStoryView.js +117 -0
  14. package/dist/components/InspectorPanel.d.ts +1 -1
  15. package/dist/components/InspectorPanel.js +46 -1
  16. package/dist/components/PageStoryboardView.js +9 -1
  17. package/dist/components/ProcessFlowView.js +8 -1
  18. package/dist/components/ReplayControls.d.ts +2 -1
  19. package/dist/components/ReplayControls.js +29 -2
  20. package/dist/components/Sidebar.d.ts +2 -2
  21. package/dist/components/Sidebar.js +15 -3
  22. package/dist/components/StatusBadge.d.ts +2 -2
  23. package/dist/index.d.ts +2 -0
  24. package/dist/index.js +1 -0
  25. package/dist/mock-data.js +50 -4
  26. package/dist/overlay/AnlyxFlowEdge.d.ts +2 -0
  27. package/dist/overlay/AnlyxFlowEdge.js +15 -0
  28. package/dist/overlay/AnlyxFlowNode.d.ts +13 -0
  29. package/dist/overlay/AnlyxFlowNode.js +28 -0
  30. package/dist/overlay/FlowDrawer.d.ts +2 -0
  31. package/dist/overlay/FlowDrawer.js +59 -0
  32. package/dist/overlay/MainFlowCanvas.d.ts +20 -0
  33. package/dist/overlay/MainFlowCanvas.js +285 -0
  34. package/dist/overlay/RecentApiEventsTable.d.ts +5 -0
  35. package/dist/overlay/RecentApiEventsTable.js +19 -0
  36. package/dist/overlay/overlay-entry.d.ts +8 -0
  37. package/dist/overlay/overlay-entry.js +14 -0
  38. package/dist/overlay/overlay-ui.css +2 -0
  39. package/dist/overlay/overlay-ui.js +14 -0
  40. package/dist/overlay/types.d.ts +38 -0
  41. package/dist/overlay/types.js +1 -0
  42. package/dist/overlay/ui.d.ts +18 -0
  43. package/dist/overlay/ui.js +13 -0
  44. package/dist/readme-demo/ReadmeDemoApp.d.ts +15 -0
  45. package/dist/readme-demo/ReadmeDemoApp.js +184 -0
  46. package/dist/readme-demo/readme-demo-entry.d.ts +1 -0
  47. package/dist/readme-demo/readme-demo-entry.js +8 -0
  48. package/dist/styles.css +1165 -38
  49. package/dist/viewer/ViewerApp.js +26 -16
  50. package/dist/viewer/styles.css +2639 -0
  51. package/dist/viewer/viewer-entry.d.ts +1 -0
  52. package/dist/viewer/viewer-entry.js +1 -0
  53. package/dist/viewer/workspace/anlyx-logo-transparent.png +0 -0
  54. package/dist/viewer/workspace/workspace.css +6354 -0
  55. package/dist/workspace/ScanTreeMap.d.ts +6 -0
  56. package/dist/workspace/ScanTreeMap.js +838 -0
  57. package/dist/workspace/WorkspaceApp.d.ts +8 -0
  58. package/dist/workspace/WorkspaceApp.js +2293 -0
  59. package/dist/workspace/project-view-model.d.ts +63 -0
  60. package/dist/workspace/project-view-model.js +170 -0
  61. package/dist/workspace/workspace.css +6354 -0
  62. package/package.json +10 -3
package/dist/styles.css CHANGED
@@ -58,6 +58,50 @@ body {
58
58
  font-size: 14px;
59
59
  }
60
60
 
61
+ .anlyx-viewer-state__card {
62
+ width: min(520px, 100%);
63
+ padding: 26px;
64
+ border: 1px solid var(--anlyx-color-border);
65
+ border-radius: 12px;
66
+ background:
67
+ linear-gradient(180deg, rgb(255 255 255 / 96%), rgb(248 251 255 / 96%)),
68
+ radial-gradient(circle at 0% 0%, rgb(37 99 235 / 10%), transparent 34%);
69
+ box-shadow: var(--anlyx-shadow-panel);
70
+ }
71
+
72
+ .anlyx-viewer-state__eyebrow {
73
+ color: #2563eb;
74
+ font-size: 11px;
75
+ font-weight: 850;
76
+ letter-spacing: 0;
77
+ text-transform: uppercase;
78
+ }
79
+
80
+ .anlyx-viewer-state__card h1 {
81
+ margin: 8px 0 10px;
82
+ color: var(--anlyx-color-text-primary);
83
+ font-size: 22px;
84
+ line-height: 1.2;
85
+ }
86
+
87
+ .anlyx-viewer-state__card p {
88
+ margin: 8px 0 0;
89
+ color: var(--anlyx-color-text-secondary);
90
+ font-size: 13px;
91
+ line-height: 1.55;
92
+ }
93
+
94
+ .anlyx-viewer-state--error .anlyx-viewer-state__card {
95
+ border-color: #fecaca;
96
+ background:
97
+ linear-gradient(180deg, rgb(255 255 255 / 96%), rgb(255 247 247 / 96%)),
98
+ radial-gradient(circle at 0% 0%, rgb(239 68 68 / 9%), transparent 32%);
99
+ }
100
+
101
+ .anlyx-viewer-state--error .anlyx-viewer-state__eyebrow {
102
+ color: #dc2626;
103
+ }
104
+
61
105
  .anlyx-shell {
62
106
  box-sizing: border-box;
63
107
  display: flex;
@@ -198,7 +242,7 @@ body {
198
242
 
199
243
  .anlyx-tabs {
200
244
  display: grid;
201
- grid-template-columns: repeat(3, minmax(0, 1fr));
245
+ grid-template-columns: repeat(4, minmax(0, 1fr));
202
246
  gap: 3px;
203
247
  padding: 4px;
204
248
  border: 1px solid #edf1f7;
@@ -232,8 +276,8 @@ body {
232
276
  }
233
277
 
234
278
  .anlyx-tab {
235
- padding: 0 7px;
236
- font-size: 13px;
279
+ padding: 0 6px;
280
+ font-size: 12px;
237
281
  font-weight: 650;
238
282
  white-space: normal;
239
283
  }
@@ -247,6 +291,29 @@ body {
247
291
  gap: 6px;
248
292
  }
249
293
 
294
+ .anlyx-project-select {
295
+ display: grid;
296
+ grid-template-columns: auto minmax(0, 1fr);
297
+ align-items: center;
298
+ gap: 9px;
299
+ min-height: 42px;
300
+ padding: 0 12px;
301
+ border: 1px solid var(--anlyx-color-border);
302
+ border-radius: var(--anlyx-radius);
303
+ background: #ffffff;
304
+ color: var(--anlyx-color-text-primary);
305
+ font: inherit;
306
+ font-weight: 700;
307
+ text-align: left;
308
+ box-shadow: var(--anlyx-shadow-panel);
309
+ }
310
+
311
+ .anlyx-project-select span {
312
+ overflow: hidden;
313
+ text-overflow: ellipsis;
314
+ white-space: nowrap;
315
+ }
316
+
250
317
  .anlyx-search__label,
251
318
  .anlyx-section-heading,
252
319
  .anlyx-eyebrow {
@@ -288,8 +355,11 @@ body {
288
355
  }
289
356
 
290
357
  .anlyx-sidebar__list-region {
358
+ display: grid;
359
+ gap: 16px;
291
360
  min-height: 0;
292
361
  overflow: auto;
362
+ padding-right: 2px;
293
363
  }
294
364
 
295
365
  .anlyx-list {
@@ -300,6 +370,10 @@ body {
300
370
  list-style: none;
301
371
  }
302
372
 
373
+ .anlyx-list--compact {
374
+ gap: 4px;
375
+ }
376
+
303
377
  .anlyx-list-item {
304
378
  display: grid;
305
379
  gap: 7px;
@@ -376,6 +450,23 @@ body {
376
450
  line-height: 1.35;
377
451
  }
378
452
 
453
+ .anlyx-service-row {
454
+ display: grid;
455
+ grid-template-columns: auto minmax(0, 1fr);
456
+ align-items: center;
457
+ gap: 8px;
458
+ min-height: 30px;
459
+ padding: 0 8px;
460
+ color: var(--anlyx-color-text-secondary);
461
+ font-size: 12px;
462
+ }
463
+
464
+ .anlyx-service-row span {
465
+ overflow: hidden;
466
+ text-overflow: ellipsis;
467
+ white-space: nowrap;
468
+ }
469
+
379
470
  .anlyx-main {
380
471
  display: grid;
381
472
  overflow: hidden;
@@ -423,33 +514,740 @@ body {
423
514
  font-weight: 650;
424
515
  }
425
516
 
426
- .anlyx-toolbar-button:disabled {
427
- cursor: not-allowed;
428
- opacity: 0.48;
429
- }
517
+ .anlyx-toolbar-button:disabled {
518
+ cursor: not-allowed;
519
+ opacity: 0.48;
520
+ }
521
+
522
+ .anlyx-toolbar-select,
523
+ .anlyx-replay select {
524
+ min-height: 30px;
525
+ border: 1px solid var(--anlyx-color-border);
526
+ border-radius: 6px;
527
+ background: var(--anlyx-color-panel);
528
+ color: var(--anlyx-color-text-primary);
529
+ font: inherit;
530
+ }
531
+
532
+ .anlyx-workspace-header h1,
533
+ .anlyx-panel-heading h2,
534
+ .anlyx-canvas-placeholder h2 {
535
+ margin: 0;
536
+ color: #111827;
537
+ font-size: 22px;
538
+ line-height: 1.2;
539
+ letter-spacing: 0;
540
+ }
541
+
542
+ .anlyx-eyebrow {
543
+ margin: 0 0 6px;
544
+ }
545
+
546
+ .anlyx-flow-story {
547
+ display: grid;
548
+ overflow: hidden;
549
+ min-width: 0;
550
+ min-height: 0;
551
+ grid-template-rows: auto auto minmax(0, 1fr) auto;
552
+ background:
553
+ linear-gradient(90deg, rgb(37 99 235 / 4%) 1px, transparent 1px),
554
+ linear-gradient(rgb(37 99 235 / 4%) 1px, transparent 1px), #fbfcff;
555
+ background-size: 28px 28px;
556
+ }
557
+
558
+ .anlyx-flow-story__header {
559
+ display: flex;
560
+ align-items: center;
561
+ justify-content: space-between;
562
+ gap: 16px;
563
+ padding: 18px 22px;
564
+ border-bottom: 1px solid var(--anlyx-color-border);
565
+ background: rgb(255 255 255 / 88%);
566
+ backdrop-filter: blur(14px);
567
+ }
568
+
569
+ .anlyx-flow-story__header h1 {
570
+ margin: 0;
571
+ color: #111827;
572
+ font-size: 23px;
573
+ line-height: 1.18;
574
+ letter-spacing: 0;
575
+ }
576
+
577
+ .anlyx-flow-story__summary {
578
+ display: flex;
579
+ flex-wrap: wrap;
580
+ gap: 7px;
581
+ margin-top: 9px;
582
+ }
583
+
584
+ .anlyx-flow-story__summary span {
585
+ display: inline-flex;
586
+ align-items: center;
587
+ min-height: 24px;
588
+ padding: 0 9px;
589
+ border: 1px solid #dbe7fb;
590
+ border-radius: 999px;
591
+ background: #f8fbff;
592
+ color: #475569;
593
+ font-size: 12px;
594
+ font-weight: 750;
595
+ }
596
+
597
+ .anlyx-flow-story__actions {
598
+ display: flex;
599
+ flex-wrap: wrap;
600
+ align-items: center;
601
+ justify-content: flex-end;
602
+ gap: 8px;
603
+ }
604
+
605
+ .anlyx-interaction-chain {
606
+ display: grid;
607
+ min-width: 0;
608
+ grid-template-columns: repeat(4, minmax(0, 1fr));
609
+ gap: 10px;
610
+ padding: 12px 22px;
611
+ border-bottom: 1px solid var(--anlyx-color-border);
612
+ background: rgb(248 251 255 / 88%);
613
+ }
614
+
615
+ .anlyx-interaction-chain__item {
616
+ display: grid;
617
+ align-items: center;
618
+ min-width: 0;
619
+ grid-template-columns: auto minmax(0, 1fr);
620
+ gap: 9px;
621
+ padding: 10px;
622
+ border: 1px solid #dde8f7;
623
+ border-radius: 8px;
624
+ background: #ffffff;
625
+ box-shadow: 0 8px 18px rgb(15 23 42 / 5%);
626
+ }
627
+
628
+ .anlyx-interaction-chain__icon {
629
+ display: inline-flex;
630
+ align-items: center;
631
+ justify-content: center;
632
+ width: 30px;
633
+ height: 30px;
634
+ border-radius: 8px;
635
+ background: #eff6ff;
636
+ color: #2563eb;
637
+ }
638
+
639
+ .anlyx-interaction-chain__item span:not(.anlyx-interaction-chain__icon) {
640
+ display: block;
641
+ overflow: hidden;
642
+ color: #64748b;
643
+ font-size: 11px;
644
+ font-weight: 800;
645
+ line-height: 1.2;
646
+ text-overflow: ellipsis;
647
+ text-transform: uppercase;
648
+ white-space: nowrap;
649
+ }
650
+
651
+ .anlyx-interaction-chain__item strong {
652
+ display: block;
653
+ overflow: hidden;
654
+ margin-top: 3px;
655
+ color: #111827;
656
+ font-size: 12px;
657
+ line-height: 1.25;
658
+ text-overflow: ellipsis;
659
+ white-space: nowrap;
660
+ }
661
+
662
+ .anlyx-interaction-chain__item--page .anlyx-interaction-chain__icon {
663
+ background: #eff6ff;
664
+ color: #2563eb;
665
+ }
666
+
667
+ .anlyx-interaction-chain__item--api .anlyx-interaction-chain__icon {
668
+ background: #ecfeff;
669
+ color: #0891b2;
670
+ }
671
+
672
+ .anlyx-interaction-chain__item--backend .anlyx-interaction-chain__icon {
673
+ background: #fff7ed;
674
+ color: #ea580c;
675
+ }
676
+
677
+ .anlyx-interaction-chain__item--guard .anlyx-interaction-chain__icon {
678
+ background: #f0fdf4;
679
+ color: #16a34a;
680
+ }
681
+
682
+ .anlyx-flow-story__stage {
683
+ position: relative;
684
+ display: grid;
685
+ overflow: hidden;
686
+ min-width: 0;
687
+ min-height: 0;
688
+ grid-template-columns: minmax(280px, 360px) minmax(0, 1fr);
689
+ align-items: center;
690
+ gap: 28px;
691
+ padding: 30px 26px 26px;
692
+ }
693
+
694
+ .anlyx-page-preview {
695
+ align-self: center;
696
+ overflow: hidden;
697
+ min-width: 0;
698
+ border: 1px solid #dbe5f2;
699
+ border-radius: 12px;
700
+ background: #ffffff;
701
+ box-shadow:
702
+ 0 20px 50px rgb(15 23 42 / 12%),
703
+ var(--anlyx-shadow-panel);
704
+ }
705
+
706
+ .anlyx-page-preview__chrome {
707
+ display: flex;
708
+ align-items: center;
709
+ gap: 8px;
710
+ padding: 12px 14px;
711
+ border-bottom: 1px solid var(--anlyx-color-border);
712
+ background: #fbfcff;
713
+ font-size: 12px;
714
+ }
715
+
716
+ .anlyx-page-preview__chrome span {
717
+ overflow: hidden;
718
+ color: var(--anlyx-color-text-secondary);
719
+ text-overflow: ellipsis;
720
+ white-space: nowrap;
721
+ }
722
+
723
+ .anlyx-page-preview__screen {
724
+ display: grid;
725
+ gap: 13px;
726
+ min-height: 330px;
727
+ padding: 14px;
728
+ background:
729
+ linear-gradient(180deg, rgb(6 78 59 / 4%), transparent 42%),
730
+ linear-gradient(135deg, #f8fafc, #ffffff);
731
+ }
732
+
733
+ .anlyx-page-preview__topbar {
734
+ display: grid;
735
+ align-items: center;
736
+ grid-template-columns: repeat(3, 7px) 1fr;
737
+ gap: 6px;
738
+ min-height: 30px;
739
+ padding: 0 10px;
740
+ border-radius: 8px;
741
+ background: #064e3b;
742
+ color: #ffffff;
743
+ font-size: 10px;
744
+ letter-spacing: 0.08em;
745
+ }
746
+
747
+ .anlyx-page-preview__topbar span {
748
+ width: 7px;
749
+ height: 7px;
750
+ border-radius: 999px;
751
+ background: rgb(255 255 255 / 42%);
752
+ }
753
+
754
+ .anlyx-page-preview__topbar strong {
755
+ justify-self: center;
756
+ font-weight: 900;
757
+ }
758
+
759
+ .anlyx-page-preview__hero {
760
+ display: grid;
761
+ grid-template-columns: 1fr 92px;
762
+ gap: 12px;
763
+ min-height: 126px;
764
+ padding: 16px;
765
+ border-radius: 10px;
766
+ background:
767
+ linear-gradient(135deg, rgb(5 46 22 / 92%), rgb(6 78 59 / 78%)),
768
+ linear-gradient(90deg, #064e3b, #14532d);
769
+ color: #ffffff;
770
+ }
771
+
772
+ .anlyx-page-preview__hero span {
773
+ color: #bbf7d0;
774
+ font-size: 12px;
775
+ font-weight: 800;
776
+ }
777
+
778
+ .anlyx-page-preview__hero strong {
779
+ display: block;
780
+ margin-top: 8px;
781
+ font-size: 22px;
782
+ line-height: 1.05;
783
+ }
784
+
785
+ .anlyx-page-preview__hero p {
786
+ margin: 0;
787
+ margin-top: 8px;
788
+ color: rgb(255 255 255 / 82%);
789
+ font-size: 12px;
790
+ }
791
+
792
+ .anlyx-page-preview__reward {
793
+ display: grid;
794
+ place-items: center;
795
+ align-self: center;
796
+ justify-self: end;
797
+ width: 82px;
798
+ height: 82px;
799
+ border-radius: 18px;
800
+ background: linear-gradient(180deg, #ffffff, #f8fafc);
801
+ color: #064e3b;
802
+ box-shadow: 0 14px 28px rgb(0 0 0 / 18%);
803
+ }
804
+
805
+ .anlyx-page-preview__reward span {
806
+ width: 42px;
807
+ height: 32px;
808
+ border-radius: 999px 999px 8px 8px;
809
+ background: linear-gradient(180deg, #16a34a, #166534);
810
+ }
811
+
812
+ .anlyx-page-preview__reward strong {
813
+ margin-top: -10px;
814
+ font-size: 18px;
815
+ }
816
+
817
+ .anlyx-page-preview__facts,
818
+ .anlyx-page-preview__steps,
819
+ .anlyx-page-preview__api {
820
+ display: grid;
821
+ gap: 8px;
822
+ padding: 12px;
823
+ border: 1px solid #e2e8f0;
824
+ border-radius: 9px;
825
+ background: #ffffff;
826
+ color: #475569;
827
+ font-size: 12px;
828
+ }
829
+
830
+ .anlyx-page-preview__facts {
831
+ grid-template-columns: 1fr 1fr;
832
+ }
833
+
834
+ .anlyx-page-preview__steps span {
835
+ position: relative;
836
+ padding-left: 22px;
837
+ }
838
+
839
+ .anlyx-page-preview__steps span::before {
840
+ position: absolute;
841
+ top: 1px;
842
+ left: 0;
843
+ display: grid;
844
+ width: 15px;
845
+ height: 15px;
846
+ place-items: center;
847
+ border-radius: 999px;
848
+ background: #dcfce7;
849
+ color: #166534;
850
+ content: "";
851
+ }
852
+
853
+ .anlyx-page-preview__api {
854
+ grid-template-columns: auto minmax(0, 1fr);
855
+ align-items: center;
856
+ }
857
+
858
+ .anlyx-page-preview__api strong {
859
+ padding: 3px 7px;
860
+ border-radius: 999px;
861
+ background: #dbeafe;
862
+ color: #1d4ed8;
863
+ font-size: 11px;
864
+ }
865
+
866
+ .anlyx-page-preview__api span {
867
+ overflow: hidden;
868
+ text-overflow: ellipsis;
869
+ white-space: nowrap;
870
+ }
871
+
872
+ .anlyx-page-preview__meta {
873
+ display: flex;
874
+ flex-wrap: wrap;
875
+ align-items: center;
876
+ gap: 8px;
877
+ padding: 10px 14px;
878
+ border-top: 1px solid var(--anlyx-color-border);
879
+ color: var(--anlyx-color-text-secondary);
880
+ font-size: 12px;
881
+ font-weight: 650;
882
+ }
883
+
884
+ .anlyx-flow-story__request {
885
+ position: absolute;
886
+ top: 48%;
887
+ left: min(365px, 32%);
888
+ z-index: 5;
889
+ display: flex;
890
+ align-items: center;
891
+ gap: 7px;
892
+ color: var(--anlyx-color-request);
893
+ font-size: 12px;
894
+ font-weight: 800;
895
+ pointer-events: none;
896
+ }
897
+
898
+ .anlyx-flow-story__request i {
899
+ width: 72px;
900
+ height: 2px;
901
+ background: var(--anlyx-color-request);
902
+ box-shadow: 0 0 14px rgb(37 99 235 / 42%);
903
+ }
904
+
905
+ .anlyx-flow-story__diagram {
906
+ position: relative;
907
+ display: grid;
908
+ align-self: stretch;
909
+ min-width: 0;
910
+ min-height: 480px;
911
+ align-content: center;
912
+ gap: 22px;
913
+ padding: 34px 26px 54px;
914
+ border: 1px solid rgb(223 230 241 / 72%);
915
+ border-radius: 14px;
916
+ background:
917
+ linear-gradient(90deg, rgb(37 99 235 / 3%) 1px, transparent 1px),
918
+ linear-gradient(rgb(37 99 235 / 3%) 1px, transparent 1px), rgb(255 255 255 / 66%);
919
+ background-size: 20px 20px;
920
+ box-shadow: inset 0 1px 0 rgb(255 255 255 / 90%);
921
+ }
922
+
923
+ .anlyx-flow-story__diagram-head {
924
+ display: flex;
925
+ align-items: center;
926
+ justify-content: space-between;
927
+ gap: 12px;
928
+ }
929
+
930
+ .anlyx-flow-story__diagram-head div {
931
+ display: inline-grid;
932
+ gap: 2px;
933
+ padding: 8px 11px;
934
+ border: 1px solid #dbe7fb;
935
+ border-radius: 10px;
936
+ background: rgb(255 255 255 / 82%);
937
+ box-shadow: 0 10px 22px rgb(15 23 42 / 4%);
938
+ }
939
+
940
+ .anlyx-flow-story__diagram-head span {
941
+ color: #64748b;
942
+ font-size: 10px;
943
+ font-weight: 900;
944
+ text-transform: uppercase;
945
+ }
946
+
947
+ .anlyx-flow-story__diagram-head strong {
948
+ color: #0f172a;
949
+ font-size: 13px;
950
+ }
951
+
952
+ .anlyx-flow-story__diagram--empty {
953
+ place-items: center;
954
+ color: var(--anlyx-color-text-secondary);
955
+ }
956
+
957
+ .anlyx-flow-story__lane {
958
+ display: flex;
959
+ align-items: stretch;
960
+ min-width: 0;
961
+ overflow-x: auto;
962
+ padding: 4px 2px 12px;
963
+ }
964
+
965
+ .anlyx-flow-story__step-wrap {
966
+ display: contents;
967
+ }
968
+
969
+ .anlyx-flow-story__step,
970
+ .anlyx-flow-story__support-node {
971
+ position: relative;
972
+ display: grid;
973
+ min-width: 0;
974
+ border: 1px solid #cbd5e1;
975
+ background: rgb(255 255 255 / 96%);
976
+ color: var(--anlyx-color-text-primary);
977
+ font: inherit;
978
+ text-align: left;
979
+ cursor: pointer;
980
+ }
981
+
982
+ .anlyx-flow-story__step {
983
+ width: clamp(138px, 13vw, 186px);
984
+ min-height: 140px;
985
+ gap: 8px;
986
+ padding: 14px;
987
+ border-top: 3px solid var(--anlyx-color-request);
988
+ border-radius: 11px;
989
+ box-shadow: 0 16px 34px rgb(15 23 42 / 8%);
990
+ }
991
+
992
+ .anlyx-flow-story__step-number {
993
+ position: absolute;
994
+ top: 11px;
995
+ right: 12px;
996
+ color: #94a3b8;
997
+ font-size: 11px;
998
+ font-weight: 950;
999
+ }
1000
+
1001
+ .anlyx-flow-story__step--service {
1002
+ border-top-color: #6366f1;
1003
+ }
1004
+
1005
+ .anlyx-flow-story__step--repository {
1006
+ border-top-color: #7c3aed;
1007
+ }
1008
+
1009
+ .anlyx-flow-story__step--database {
1010
+ border-top-color: var(--anlyx-color-database);
1011
+ background: linear-gradient(180deg, #ffffff, #f0fdfa);
1012
+ }
1013
+
1014
+ .anlyx-flow-story__step--active,
1015
+ .anlyx-flow-story__support-node--active {
1016
+ box-shadow:
1017
+ 0 0 0 4px rgb(37 99 235 / 12%),
1018
+ 0 18px 38px rgb(37 99 235 / 16%);
1019
+ }
1020
+
1021
+ .anlyx-flow-story__step--selected,
1022
+ .anlyx-flow-story__support-node--selected {
1023
+ outline: 2px solid var(--anlyx-color-request);
1024
+ outline-offset: 2px;
1025
+ }
1026
+
1027
+ .anlyx-flow-story__step-icon {
1028
+ display: grid;
1029
+ width: 26px;
1030
+ height: 26px;
1031
+ place-items: center;
1032
+ border-radius: 8px;
1033
+ background: #eff6ff;
1034
+ color: var(--anlyx-color-request);
1035
+ }
1036
+
1037
+ .anlyx-flow-story__step--service .anlyx-flow-story__step-icon {
1038
+ background: #eef2ff;
1039
+ color: #4f46e5;
1040
+ }
1041
+
1042
+ .anlyx-flow-story__step--repository .anlyx-flow-story__step-icon {
1043
+ background: #f5f3ff;
1044
+ color: #7c3aed;
1045
+ }
1046
+
1047
+ .anlyx-flow-story__step--database .anlyx-flow-story__step-icon {
1048
+ background: #ccfbf1;
1049
+ color: #0f766e;
1050
+ }
1051
+
1052
+ .anlyx-flow-story__step-type,
1053
+ .anlyx-flow-story__support-node span {
1054
+ color: var(--anlyx-color-text-secondary);
1055
+ font-size: 10px;
1056
+ font-weight: 900;
1057
+ text-transform: uppercase;
1058
+ }
1059
+
1060
+ .anlyx-flow-story__step strong,
1061
+ .anlyx-flow-story__support-node strong {
1062
+ overflow: hidden;
1063
+ color: #0f172a;
1064
+ font-size: 12px;
1065
+ line-height: 1.28;
1066
+ overflow-wrap: anywhere;
1067
+ }
1068
+
1069
+ .anlyx-flow-story__step .anlyx-status-badge,
1070
+ .anlyx-flow-story__support-node .anlyx-status-badge {
1071
+ align-self: end;
1072
+ justify-self: start;
1073
+ }
1074
+
1075
+ .anlyx-flow-story__arrow {
1076
+ position: relative;
1077
+ flex: 1 1 28px;
1078
+ min-width: 24px;
1079
+ align-self: center;
1080
+ height: 2px;
1081
+ background: var(--anlyx-color-request);
1082
+ box-shadow: 0 0 12px rgb(37 99 235 / 36%);
1083
+ }
1084
+
1085
+ .anlyx-flow-story__arrow::after {
1086
+ position: absolute;
1087
+ top: -4px;
1088
+ right: -1px;
1089
+ width: 9px;
1090
+ height: 9px;
1091
+ border-top: 2px solid var(--anlyx-color-request);
1092
+ border-right: 2px solid var(--anlyx-color-request);
1093
+ content: "";
1094
+ transform: rotate(45deg);
1095
+ }
1096
+
1097
+ .anlyx-flow-story__support {
1098
+ position: relative;
1099
+ display: grid;
1100
+ max-width: 520px;
1101
+ gap: 10px;
1102
+ margin-left: min(260px, 22vw);
1103
+ padding: 14px;
1104
+ border: 1px dashed rgb(249 115 22 / 58%);
1105
+ border-radius: 14px;
1106
+ background: rgb(255 247 237 / 72%);
1107
+ }
1108
+
1109
+ .anlyx-flow-story__support::before {
1110
+ position: absolute;
1111
+ top: -54px;
1112
+ left: 28px;
1113
+ width: 2px;
1114
+ height: 54px;
1115
+ border-left: 2px dashed var(--anlyx-color-branch);
1116
+ content: "";
1117
+ }
1118
+
1119
+ .anlyx-flow-story__support-heading {
1120
+ display: flex;
1121
+ align-items: center;
1122
+ gap: 7px;
1123
+ color: #c2410c;
1124
+ font-size: 11px;
1125
+ font-weight: 900;
1126
+ text-transform: uppercase;
1127
+ }
1128
+
1129
+ .anlyx-flow-story__support-grid {
1130
+ display: grid;
1131
+ grid-template-columns: repeat(3, minmax(0, 1fr));
1132
+ gap: 10px;
1133
+ }
1134
+
1135
+ .anlyx-flow-story__support-node {
1136
+ gap: 6px;
1137
+ min-height: 100px;
1138
+ padding: 11px;
1139
+ border-color: #fed7aa;
1140
+ border-radius: 10px;
1141
+ background: #ffffff;
1142
+ box-shadow: 0 10px 24px rgb(249 115 22 / 8%);
1143
+ }
1144
+
1145
+ .anlyx-flow-story__support-node svg {
1146
+ color: var(--anlyx-color-branch);
1147
+ }
1148
+
1149
+ .anlyx-flow-story__map {
1150
+ overflow: hidden;
1151
+ min-width: 0;
1152
+ min-height: 0;
1153
+ border: 1px solid rgb(223 230 241 / 74%);
1154
+ border-radius: 10px;
1155
+ background: rgb(255 255 255 / 72%);
1156
+ }
1157
+
1158
+ .anlyx-flow-story__map .anlyx-workspace {
1159
+ height: 100%;
1160
+ background: transparent;
1161
+ }
1162
+
1163
+ .anlyx-flow-story__map .anlyx-workspace-header,
1164
+ .anlyx-flow-story__map .anlyx-flow-legend {
1165
+ display: none;
1166
+ }
1167
+
1168
+ .anlyx-flow-story__map .anlyx-endpoint-map {
1169
+ margin: 0;
1170
+ border: 0;
1171
+ border-radius: 0;
1172
+ background: transparent;
1173
+ box-shadow: none;
1174
+ }
1175
+
1176
+ .anlyx-flow-story__response {
1177
+ position: absolute;
1178
+ right: 52px;
1179
+ bottom: 40px;
1180
+ left: 45%;
1181
+ height: 26px;
1182
+ border-bottom: 2px dashed var(--anlyx-color-response);
1183
+ border-left: 2px dashed var(--anlyx-color-response);
1184
+ border-radius: 0 0 0 14px;
1185
+ color: var(--anlyx-color-response);
1186
+ pointer-events: none;
1187
+ }
1188
+
1189
+ .anlyx-flow-story__response span {
1190
+ position: absolute;
1191
+ right: 45%;
1192
+ bottom: -11px;
1193
+ padding: 2px 8px;
1194
+ border: 1px solid rgb(139 92 246 / 22%);
1195
+ border-radius: 999px;
1196
+ background: #f5f3ff;
1197
+ font-size: 11px;
1198
+ font-weight: 800;
1199
+ }
1200
+
1201
+ @media (max-width: 1320px) {
1202
+ .anlyx-interaction-chain {
1203
+ grid-template-columns: repeat(2, minmax(0, 1fr));
1204
+ }
1205
+
1206
+ .anlyx-flow-story__stage {
1207
+ grid-template-columns: minmax(240px, 320px) minmax(0, 1fr);
1208
+ gap: 20px;
1209
+ padding: 24px 20px 22px;
1210
+ }
1211
+
1212
+ .anlyx-flow-story__step {
1213
+ width: 148px;
1214
+ }
1215
+
1216
+ .anlyx-flow-story__support {
1217
+ margin-left: 180px;
1218
+ }
1219
+ }
1220
+
1221
+ @media (max-width: 1080px) {
1222
+ .anlyx-flow-story {
1223
+ overflow: auto;
1224
+ }
1225
+
1226
+ .anlyx-interaction-chain {
1227
+ grid-template-columns: 1fr;
1228
+ }
1229
+
1230
+ .anlyx-flow-story__stage {
1231
+ grid-template-columns: 1fr;
1232
+ overflow: visible;
1233
+ }
430
1234
 
431
- .anlyx-toolbar-select,
432
- .anlyx-replay select {
433
- min-height: 30px;
434
- border: 1px solid var(--anlyx-color-border);
435
- border-radius: 6px;
436
- background: var(--anlyx-color-panel);
437
- color: var(--anlyx-color-text-primary);
438
- font: inherit;
439
- }
1235
+ .anlyx-flow-story__request,
1236
+ .anlyx-flow-story__response {
1237
+ display: none;
1238
+ }
440
1239
 
441
- .anlyx-workspace-header h1,
442
- .anlyx-panel-heading h2,
443
- .anlyx-canvas-placeholder h2 {
444
- margin: 0;
445
- color: #111827;
446
- font-size: 22px;
447
- line-height: 1.2;
448
- letter-spacing: 0;
449
- }
1240
+ .anlyx-page-preview {
1241
+ max-width: 420px;
1242
+ }
450
1243
 
451
- .anlyx-eyebrow {
452
- margin: 0 0 6px;
1244
+ .anlyx-flow-story__support {
1245
+ margin-left: 0;
1246
+ }
1247
+
1248
+ .anlyx-flow-story__support::before {
1249
+ display: none;
1250
+ }
453
1251
  }
454
1252
 
455
1253
  .anlyx-canvas-placeholder {
@@ -799,9 +1597,40 @@ body {
799
1597
  .anlyx-endpoint-map-empty {
800
1598
  display: grid;
801
1599
  min-height: 420px;
802
- place-items: center;
1600
+ align-content: center;
1601
+ justify-items: center;
1602
+ gap: 8px;
803
1603
  padding: 24px;
804
1604
  color: var(--anlyx-color-text-secondary);
1605
+ text-align: center;
1606
+ }
1607
+
1608
+ .anlyx-endpoint-map-empty span {
1609
+ display: inline-flex;
1610
+ align-items: center;
1611
+ min-height: 24px;
1612
+ padding: 0 9px;
1613
+ border: 1px solid #fed7aa;
1614
+ border-radius: 999px;
1615
+ background: #fff7ed;
1616
+ color: #c2410c;
1617
+ font-size: 11px;
1618
+ font-weight: 850;
1619
+ text-transform: uppercase;
1620
+ }
1621
+
1622
+ .anlyx-endpoint-map-empty h2 {
1623
+ margin: 4px 0 0;
1624
+ color: var(--anlyx-color-text-primary);
1625
+ font-size: 18px;
1626
+ line-height: 1.25;
1627
+ }
1628
+
1629
+ .anlyx-endpoint-map-empty p {
1630
+ max-width: 520px;
1631
+ margin: 0;
1632
+ font-size: 13px;
1633
+ line-height: 1.5;
805
1634
  }
806
1635
 
807
1636
  .anlyx-page-storyboard {
@@ -852,6 +1681,60 @@ body {
852
1681
  min-width: 0;
853
1682
  }
854
1683
 
1684
+ .anlyx-page-evidence-board {
1685
+ display: grid;
1686
+ grid-template-columns: minmax(210px, 1.2fr) repeat(3, minmax(150px, 1fr));
1687
+ gap: 10px;
1688
+ align-items: stretch;
1689
+ min-width: 0;
1690
+ padding: 12px;
1691
+ border: 1px solid #cfe0f8;
1692
+ border-radius: var(--anlyx-radius);
1693
+ background:
1694
+ linear-gradient(180deg, rgb(255 255 255 / 94%), rgb(248 251 255 / 92%)),
1695
+ radial-gradient(circle at 0% 0%, rgb(37 99 235 / 12%), transparent 34%);
1696
+ box-shadow: var(--anlyx-shadow-panel);
1697
+ }
1698
+
1699
+ .anlyx-page-evidence-board__intro,
1700
+ .anlyx-page-evidence-metric {
1701
+ display: grid;
1702
+ gap: 5px;
1703
+ min-width: 0;
1704
+ padding: 12px;
1705
+ border: 1px solid rgb(219 231 251 / 88%);
1706
+ border-radius: 9px;
1707
+ background: rgb(255 255 255 / 78%);
1708
+ }
1709
+
1710
+ .anlyx-page-evidence-board__intro {
1711
+ border-left: 4px solid var(--anlyx-color-request);
1712
+ }
1713
+
1714
+ .anlyx-page-evidence-board__intro span,
1715
+ .anlyx-page-evidence-metric span {
1716
+ color: var(--anlyx-color-text-secondary);
1717
+ font-size: 11px;
1718
+ font-weight: 900;
1719
+ text-transform: uppercase;
1720
+ }
1721
+
1722
+ .anlyx-page-evidence-board__intro strong,
1723
+ .anlyx-page-evidence-metric strong {
1724
+ overflow-wrap: anywhere;
1725
+ color: var(--anlyx-color-text-primary);
1726
+ font-size: 18px;
1727
+ line-height: 1.15;
1728
+ }
1729
+
1730
+ .anlyx-page-evidence-metric em {
1731
+ overflow-wrap: anywhere;
1732
+ color: var(--anlyx-color-text-secondary);
1733
+ font-size: 12px;
1734
+ font-style: normal;
1735
+ font-weight: 650;
1736
+ }
1737
+
855
1738
  .anlyx-storyboard-side {
856
1739
  display: grid;
857
1740
  gap: 16px;
@@ -1016,14 +1899,47 @@ body {
1016
1899
  margin: 0;
1017
1900
  }
1018
1901
 
1019
- .anlyx-segment-card__body code,
1020
- .anlyx-api-call__endpoint {
1902
+ .anlyx-segment-card__body code {
1021
1903
  overflow-wrap: anywhere;
1022
1904
  color: var(--anlyx-color-text-secondary);
1023
1905
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
1024
1906
  font-size: 12px;
1025
1907
  }
1026
1908
 
1909
+ .anlyx-api-call__endpoint {
1910
+ display: grid;
1911
+ gap: 4px;
1912
+ min-width: 0;
1913
+ padding: 9px;
1914
+ border: 1px dashed #cbd5e1;
1915
+ border-radius: 8px;
1916
+ background: #f8fafc;
1917
+ }
1918
+
1919
+ .anlyx-api-call__endpoint span {
1920
+ color: var(--anlyx-color-text-secondary);
1921
+ font-size: 10px;
1922
+ font-weight: 900;
1923
+ text-transform: uppercase;
1924
+ }
1925
+
1926
+ .anlyx-api-call__endpoint strong,
1927
+ .anlyx-api-call__endpoint em {
1928
+ overflow-wrap: anywhere;
1929
+ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
1930
+ font-size: 12px;
1931
+ line-height: 1.35;
1932
+ }
1933
+
1934
+ .anlyx-api-call__endpoint strong {
1935
+ color: var(--anlyx-color-text-primary);
1936
+ }
1937
+
1938
+ .anlyx-api-call__endpoint em {
1939
+ color: var(--anlyx-color-text-secondary);
1940
+ font-style: normal;
1941
+ }
1942
+
1027
1943
  .anlyx-segment-card__meta,
1028
1944
  .anlyx-api-call__meta {
1029
1945
  display: flex;
@@ -1174,6 +2090,67 @@ body {
1174
2090
  padding-left: 18px;
1175
2091
  }
1176
2092
 
2093
+ .anlyx-evidence-list,
2094
+ .anlyx-call-list {
2095
+ display: grid;
2096
+ gap: 8px;
2097
+ padding: 0;
2098
+ list-style: none;
2099
+ }
2100
+
2101
+ .anlyx-evidence-list li,
2102
+ .anlyx-call-list li {
2103
+ display: grid;
2104
+ grid-template-columns: auto minmax(0, 1fr) auto;
2105
+ align-items: center;
2106
+ gap: 9px;
2107
+ min-width: 0;
2108
+ padding: 9px;
2109
+ border: 1px solid #e7edf6;
2110
+ border-radius: 8px;
2111
+ background: #fbfcff;
2112
+ }
2113
+
2114
+ .anlyx-evidence-list svg {
2115
+ color: var(--anlyx-color-confidence-high);
2116
+ }
2117
+
2118
+ .anlyx-evidence-list span,
2119
+ .anlyx-call-list span {
2120
+ display: grid;
2121
+ min-width: 0;
2122
+ gap: 2px;
2123
+ }
2124
+
2125
+ .anlyx-evidence-list strong {
2126
+ overflow: hidden;
2127
+ color: var(--anlyx-color-text-primary);
2128
+ font-size: 12px;
2129
+ text-overflow: ellipsis;
2130
+ white-space: nowrap;
2131
+ }
2132
+
2133
+ .anlyx-evidence-list em {
2134
+ overflow-wrap: anywhere;
2135
+ color: var(--anlyx-color-text-secondary);
2136
+ font-size: 11px;
2137
+ font-style: normal;
2138
+ line-height: 1.35;
2139
+ }
2140
+
2141
+ .anlyx-call-list li {
2142
+ grid-template-columns: minmax(0, 1fr) auto;
2143
+ }
2144
+
2145
+ .anlyx-call-list span {
2146
+ overflow: hidden;
2147
+ color: var(--anlyx-color-text-primary);
2148
+ font-size: 12px;
2149
+ font-weight: 650;
2150
+ text-overflow: ellipsis;
2151
+ white-space: nowrap;
2152
+ }
2153
+
1177
2154
  .anlyx-metadata {
1178
2155
  overflow: auto;
1179
2156
  max-width: 100%;
@@ -1186,22 +2163,33 @@ body {
1186
2163
  font-size: 12px;
1187
2164
  }
1188
2165
 
2166
+ .anlyx-shape-json {
2167
+ max-height: 220px;
2168
+ overflow-wrap: normal;
2169
+ white-space: pre;
2170
+ }
2171
+
1189
2172
  .anlyx-empty {
1190
2173
  padding: 20px;
1191
2174
  color: var(--anlyx-color-text-secondary);
1192
2175
  }
1193
2176
 
1194
2177
  .anlyx-replay {
1195
- display: flex;
1196
- align-items: center;
1197
- justify-content: space-between;
2178
+ display: grid;
1198
2179
  gap: 16px;
1199
- padding: 12px 20px;
2180
+ padding: 14px 20px;
1200
2181
  border-bottom: 1px solid var(--anlyx-color-border);
1201
2182
  background: rgb(255 255 255 / 86%);
1202
2183
  backdrop-filter: blur(14px);
1203
2184
  }
1204
2185
 
2186
+ .anlyx-replay__top {
2187
+ display: flex;
2188
+ align-items: center;
2189
+ justify-content: space-between;
2190
+ gap: 16px;
2191
+ }
2192
+
1205
2193
  .anlyx-process-view {
1206
2194
  display: grid;
1207
2195
  overflow: hidden;
@@ -1282,6 +2270,106 @@ body {
1282
2270
  font-size: 12px;
1283
2271
  }
1284
2272
 
2273
+ .anlyx-replay__focus {
2274
+ display: grid;
2275
+ align-items: center;
2276
+ min-width: 0;
2277
+ grid-template-columns: minmax(220px, 0.75fr) minmax(280px, 1fr);
2278
+ gap: 16px;
2279
+ padding: 12px;
2280
+ border: 1px solid #d9e6ff;
2281
+ border-radius: 8px;
2282
+ background:
2283
+ linear-gradient(90deg, rgb(37 99 235 / 8%), rgb(124 58 237 / 5%) 52%, rgb(20 184 166 / 7%)),
2284
+ #ffffff;
2285
+ box-shadow: inset 0 1px 0 rgb(255 255 255 / 70%);
2286
+ }
2287
+
2288
+ .anlyx-replay__focus strong {
2289
+ display: block;
2290
+ overflow: hidden;
2291
+ margin-top: 4px;
2292
+ color: var(--anlyx-color-text-primary);
2293
+ font-size: 13px;
2294
+ text-overflow: ellipsis;
2295
+ white-space: nowrap;
2296
+ }
2297
+
2298
+ .anlyx-replay__focus p {
2299
+ overflow: hidden;
2300
+ margin: 4px 0 0;
2301
+ color: var(--anlyx-color-text-secondary);
2302
+ font-size: 12px;
2303
+ font-weight: 650;
2304
+ line-height: 1.35;
2305
+ text-overflow: ellipsis;
2306
+ white-space: nowrap;
2307
+ }
2308
+
2309
+ .anlyx-replay__phase {
2310
+ color: #1d4ed8;
2311
+ font-size: 11px;
2312
+ font-weight: 800;
2313
+ letter-spacing: 0;
2314
+ text-transform: uppercase;
2315
+ }
2316
+
2317
+ .anlyx-replay__rail {
2318
+ display: grid;
2319
+ align-items: center;
2320
+ min-width: 0;
2321
+ grid-auto-columns: minmax(28px, 1fr);
2322
+ grid-auto-flow: column;
2323
+ gap: 6px;
2324
+ margin: 0;
2325
+ padding: 0;
2326
+ list-style: none;
2327
+ }
2328
+
2329
+ .anlyx-replay__rail li {
2330
+ position: relative;
2331
+ z-index: 0;
2332
+ display: flex;
2333
+ align-items: center;
2334
+ justify-content: center;
2335
+ min-width: 0;
2336
+ height: 24px;
2337
+ border: 1px solid #cbdcf8;
2338
+ border-radius: 999px;
2339
+ background: #f8fbff;
2340
+ color: #64748b;
2341
+ font-size: 10px;
2342
+ font-weight: 800;
2343
+ }
2344
+
2345
+ .anlyx-replay__rail li::before {
2346
+ position: absolute;
2347
+ z-index: 0;
2348
+ right: calc(50% + 12px);
2349
+ left: -10px;
2350
+ height: 2px;
2351
+ background: #dbeafe;
2352
+ content: "";
2353
+ }
2354
+
2355
+ .anlyx-replay__rail li span {
2356
+ position: relative;
2357
+ z-index: 1;
2358
+ }
2359
+
2360
+ .anlyx-replay__rail li:first-child::before {
2361
+ content: none;
2362
+ }
2363
+
2364
+ .anlyx-replay__rail-step--active {
2365
+ border-color: #2563eb !important;
2366
+ background: #2563eb !important;
2367
+ color: #ffffff !important;
2368
+ box-shadow:
2369
+ 0 0 0 4px rgb(37 99 235 / 12%),
2370
+ 0 10px 18px rgb(37 99 235 / 20%);
2371
+ }
2372
+
1285
2373
  .anlyx-process-timeline {
1286
2374
  display: grid;
1287
2375
  gap: 12px;
@@ -1418,7 +2506,10 @@ body {
1418
2506
 
1419
2507
  .anlyx-status-badge--get,
1420
2508
  .anlyx-status-badge--success,
1421
- .anlyx-status-badge--high {
2509
+ .anlyx-status-badge--high,
2510
+ .anlyx-status-badge--observed,
2511
+ .anlyx-status-badge--measured,
2512
+ .anlyx-status-badge--source-matched {
1422
2513
  border-color: #b7ead8;
1423
2514
  background: #eefdf7;
1424
2515
  color: var(--anlyx-color-method-get);
@@ -1433,7 +2524,8 @@ body {
1433
2524
  .anlyx-status-badge--put,
1434
2525
  .anlyx-status-badge--patch,
1435
2526
  .anlyx-status-badge--pending,
1436
- .anlyx-status-badge--medium {
2527
+ .anlyx-status-badge--medium,
2528
+ .anlyx-status-badge--manual {
1437
2529
  border-color: #fed7aa;
1438
2530
  background: #fff7ed;
1439
2531
  color: var(--anlyx-color-method-update);
@@ -1441,13 +2533,16 @@ body {
1441
2533
 
1442
2534
  .anlyx-status-badge--delete,
1443
2535
  .anlyx-status-badge--failed,
1444
- .anlyx-status-badge--low {
2536
+ .anlyx-status-badge--low,
2537
+ .anlyx-status-badge--agent-inferred,
2538
+ .anlyx-status-badge--not-proven {
1445
2539
  border-color: #fecaca;
1446
2540
  background: #fff1f2;
1447
2541
  color: var(--anlyx-color-method-delete);
1448
2542
  }
1449
2543
 
1450
- .anlyx-status-badge--unknown {
2544
+ .anlyx-status-badge--unknown,
2545
+ .anlyx-status-badge--neutral {
1451
2546
  border-color: #d9e1ee;
1452
2547
  background: #f8fafc;
1453
2548
  color: var(--anlyx-color-confidence-unknown);
@@ -1488,6 +2583,38 @@ body {
1488
2583
  .anlyx-storyboard-grid {
1489
2584
  grid-template-columns: 1fr;
1490
2585
  }
2586
+
2587
+ .anlyx-page-evidence-board {
2588
+ grid-template-columns: repeat(2, minmax(0, 1fr));
2589
+ }
2590
+
2591
+ .anlyx-replay__top {
2592
+ align-items: flex-start;
2593
+ flex-direction: column;
2594
+ }
2595
+
2596
+ .anlyx-replay__state {
2597
+ justify-content: flex-start;
2598
+ }
2599
+
2600
+ .anlyx-replay__focus {
2601
+ grid-template-columns: 1fr;
2602
+ }
2603
+
2604
+ .anlyx-replay__rail {
2605
+ grid-auto-flow: row;
2606
+ grid-template-columns: repeat(6, minmax(28px, 1fr));
2607
+ }
2608
+ }
2609
+
2610
+ @media (max-width: 760px) {
2611
+ .anlyx-page-evidence-board {
2612
+ grid-template-columns: 1fr;
2613
+ }
2614
+
2615
+ .anlyx-replay__rail {
2616
+ grid-template-columns: repeat(3, minmax(28px, 1fr));
2617
+ }
1491
2618
  }
1492
2619
 
1493
2620
  @keyframes anlyx-flow-travel {