@quanta-intellect/vessel-browser 0.1.58 → 0.1.60

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.
@@ -403,6 +403,11 @@
403
403
  transform: scale(0.9);
404
404
  }
405
405
 
406
+ .nav-btn-muted {
407
+ opacity: 0.5;
408
+ filter: grayscale(0.6);
409
+ }
410
+
406
411
  .nav-btn:disabled {
407
412
  opacity: 0.25;
408
413
  cursor: default;
@@ -682,10 +687,298 @@
682
687
  border-color: rgba(240, 198, 54, 0.25);
683
688
  }
684
689
 
690
+ /* ═══════════════════════════════════════
691
+ Download toast — progress & completion
692
+ ═══════════════════════════════════════ */
693
+
694
+ .download-toast-stack {
695
+ position: absolute;
696
+ bottom: 14px;
697
+ left: 14px;
698
+ z-index: 50;
699
+ display: flex;
700
+ flex-direction: column;
701
+ gap: 8px;
702
+ pointer-events: none;
703
+ max-width: min(340px, calc(100vw - 28px));
704
+ }
705
+
706
+ .download-toast {
707
+ padding: 10px 14px;
708
+ border: 1px solid rgba(138, 173, 107, 0.22);
709
+ border-radius: var(--radius-lg);
710
+ background: linear-gradient(
711
+ 180deg,
712
+ rgba(50, 50, 54, 0.97),
713
+ rgba(34, 34, 38, 0.97)
714
+ );
715
+ box-shadow:
716
+ 0 4px 12px rgba(0, 0, 0, 0.2),
717
+ 0 16px 40px rgba(0, 0, 0, 0.16);
718
+ backdrop-filter: blur(16px);
719
+ animation: toast-enter var(--duration-enter) var(--ease-out-expo) both;
720
+ }
721
+
722
+ .download-toast-leaving {
723
+ animation: toast-exit 300ms var(--ease-in-out) both;
724
+ }
725
+
726
+ .download-toast-header {
727
+ display: flex;
728
+ align-items: center;
729
+ gap: 8px;
730
+ }
731
+
732
+ .download-toast-filename {
733
+ color: var(--text-primary);
734
+ font-size: 12px;
735
+ font-weight: 600;
736
+ overflow: hidden;
737
+ text-overflow: ellipsis;
738
+ white-space: nowrap;
739
+ flex: 1;
740
+ min-width: 0;
741
+ }
742
+
743
+ .download-toast-done {
744
+ color: var(--accent-secondary, #8aad6b);
745
+ font-size: 13px;
746
+ font-weight: 700;
747
+ flex-shrink: 0;
748
+ }
749
+
750
+ .download-toast-failed {
751
+ color: #ff8e8e;
752
+ font-size: 13px;
753
+ font-weight: 700;
754
+ flex-shrink: 0;
755
+ }
756
+
757
+ .download-toast-bar-track {
758
+ margin-top: 8px;
759
+ height: 3px;
760
+ border-radius: 2px;
761
+ background: rgba(255, 255, 255, 0.08);
762
+ overflow: hidden;
763
+ }
764
+
765
+ .download-toast-bar-fill {
766
+ height: 100%;
767
+ border-radius: 2px;
768
+ background: var(--accent-secondary, #8aad6b);
769
+ transition: width 300ms var(--ease-in-out);
770
+ }
771
+
772
+ .download-toast-size {
773
+ margin-top: 4px;
774
+ color: var(--text-muted);
775
+ font-size: 11px;
776
+ font-family: var(--font-mono);
777
+ }
778
+
779
+ .download-toast-size-done {
780
+ color: var(--accent-secondary, #8aad6b);
781
+ }
782
+
783
+ /* ═══════════════════════════════════════
784
+ Flow progress — agent workflow steps
785
+ ═══════════════════════════════════════ */
786
+
787
+ .flow-progress {
788
+ position: absolute;
789
+ right: 14px;
790
+ bottom: 300px;
791
+ width: min(320px, calc(100vw - 28px));
792
+ z-index: 40;
793
+ padding: 14px;
794
+ border: 1px solid rgba(196, 160, 90, 0.18);
795
+ border-radius: var(--radius-lg);
796
+ background: linear-gradient(
797
+ 180deg,
798
+ rgba(50, 50, 54, 0.97),
799
+ rgba(34, 34, 38, 0.97)
800
+ );
801
+ box-shadow:
802
+ 0 4px 12px rgba(0, 0, 0, 0.2),
803
+ 0 16px 40px rgba(0, 0, 0, 0.16);
804
+ backdrop-filter: blur(16px);
805
+ animation: toast-enter var(--duration-enter) var(--ease-out-expo) both;
806
+ }
807
+
808
+ .flow-progress-header {
809
+ display: flex;
810
+ justify-content: space-between;
811
+ align-items: center;
812
+ gap: 8px;
813
+ margin-bottom: 8px;
814
+ }
815
+
816
+ .flow-progress-goal {
817
+ color: var(--text-primary);
818
+ font-size: 12px;
819
+ font-weight: 600;
820
+ overflow: hidden;
821
+ text-overflow: ellipsis;
822
+ white-space: nowrap;
823
+ flex: 1;
824
+ min-width: 0;
825
+ }
826
+
827
+ .flow-progress-pct {
828
+ color: var(--text-muted);
829
+ font-size: 11px;
830
+ font-family: var(--font-mono);
831
+ flex-shrink: 0;
832
+ }
833
+
834
+ .flow-progress-bar-track {
835
+ height: 3px;
836
+ border-radius: 2px;
837
+ background: rgba(255, 255, 255, 0.08);
838
+ overflow: hidden;
839
+ margin-bottom: 10px;
840
+ }
841
+
842
+ .flow-progress-bar-fill {
843
+ height: 100%;
844
+ border-radius: 2px;
845
+ background: var(--accent-primary);
846
+ transition: width 400ms var(--ease-out-expo);
847
+ }
848
+
849
+ .flow-steps {
850
+ display: flex;
851
+ flex-direction: column;
852
+ gap: 5px;
853
+ }
854
+
855
+ .flow-step {
856
+ display: flex;
857
+ align-items: center;
858
+ gap: 8px;
859
+ font-size: 11.5px;
860
+ line-height: 1.4;
861
+ }
862
+
863
+ .flow-step-dot {
864
+ width: 7px;
865
+ height: 7px;
866
+ border-radius: 50%;
867
+ flex-shrink: 0;
868
+ background: var(--text-muted);
869
+ opacity: 0.3;
870
+ }
871
+
872
+ .flow-step-label {
873
+ color: var(--text-secondary);
874
+ overflow: hidden;
875
+ text-overflow: ellipsis;
876
+ white-space: nowrap;
877
+ }
878
+
879
+ .flow-step-pending .flow-step-dot {
880
+ background: var(--text-muted);
881
+ opacity: 0.3;
882
+ }
883
+
884
+ .flow-step-active .flow-step-dot {
885
+ background: var(--accent-primary);
886
+ opacity: 1;
887
+ box-shadow: 0 0 6px rgba(196, 160, 90, 0.4);
888
+ }
889
+
890
+ .flow-step-active .flow-step-label {
891
+ color: var(--text-primary);
892
+ font-weight: 500;
893
+ }
894
+
895
+ .flow-step-done .flow-step-dot {
896
+ background: var(--accent-secondary, #8aad6b);
897
+ opacity: 1;
898
+ }
899
+
900
+ .flow-step-done .flow-step-label {
901
+ color: var(--text-muted);
902
+ text-decoration: line-through;
903
+ text-decoration-color: rgba(255, 255, 255, 0.15);
904
+ }
905
+
906
+ .flow-step-failed .flow-step-dot {
907
+ background: #ff6b5b;
908
+ opacity: 1;
909
+ }
910
+
911
+ .flow-step-failed .flow-step-label {
912
+ color: #ff8e8e;
913
+ }
914
+
915
+ .flow-step-skipped .flow-step-dot {
916
+ background: var(--text-muted);
917
+ opacity: 0.3;
918
+ }
919
+
920
+ .flow-step-skipped .flow-step-label {
921
+ color: var(--text-muted);
922
+ opacity: 0.5;
923
+ }
924
+
925
+ .flow-progress-hint {
926
+ margin-top: 8px;
927
+ font-size: 11px;
928
+ color: var(--text-muted);
929
+ line-height: 1.4;
930
+ overflow: hidden;
931
+ text-overflow: ellipsis;
932
+ white-space: nowrap;
933
+ }
934
+
685
935
  /* ═══════════════════════════════════════
686
936
  Agent transcript dock — floating panel
687
937
  ═══════════════════════════════════════ */
688
938
 
939
+ .agent-summary-hud {
940
+ position: absolute;
941
+ right: 14px;
942
+ bottom: 14px;
943
+ z-index: 40;
944
+ display: flex;
945
+ align-items: center;
946
+ gap: 8px;
947
+ padding: 8px 14px;
948
+ border: 1px solid rgba(196, 160, 90, 0.14);
949
+ border-radius: var(--radius-lg);
950
+ background: linear-gradient(
951
+ 180deg,
952
+ rgba(50, 50, 54, 0.94),
953
+ rgba(34, 34, 38, 0.94)
954
+ );
955
+ box-shadow:
956
+ 0 2px 8px rgba(0, 0, 0, 0.15),
957
+ 0 8px 24px rgba(0, 0, 0, 0.12);
958
+ backdrop-filter: blur(16px);
959
+ animation: toast-enter var(--duration-enter) var(--ease-out-expo) both;
960
+ max-width: min(420px, calc(100vw - 28px));
961
+ }
962
+
963
+ .agent-summary-live-dot {
964
+ width: 6px;
965
+ height: 6px;
966
+ border-radius: 50%;
967
+ background: var(--accent-primary);
968
+ box-shadow: 0 0 6px rgba(196, 160, 90, 0.5);
969
+ animation: agent-transcript-live-pulse 2s ease-in-out infinite;
970
+ flex-shrink: 0;
971
+ }
972
+
973
+ .agent-summary-text {
974
+ color: var(--text-secondary);
975
+ font-size: 11.5px;
976
+ line-height: 1.45;
977
+ overflow: hidden;
978
+ text-overflow: ellipsis;
979
+ white-space: nowrap;
980
+ }
981
+
689
982
  .agent-transcript-dock {
690
983
  position: absolute;
691
984
  right: 14px;
@@ -4113,6 +4406,100 @@
4113
4406
  justify-content: center;
4114
4407
  }
4115
4408
  }
4409
+
4410
+ /* ═══════════════════════════════════════
4411
+ History panel
4412
+ ═══════════════════════════════════════ */
4413
+
4414
+ .history-panel {
4415
+ display: flex;
4416
+ flex-direction: column;
4417
+ height: 100%;
4418
+ }
4419
+
4420
+ .history-panel-header {
4421
+ display: flex;
4422
+ justify-content: space-between;
4423
+ align-items: center;
4424
+ padding: 10px 14px;
4425
+ border-bottom: 1px solid var(--border-subtle);
4426
+ }
4427
+
4428
+ .history-panel-title {
4429
+ font-size: 12px;
4430
+ font-weight: 600;
4431
+ color: var(--text-primary);
4432
+ }
4433
+
4434
+ .history-clear-btn {
4435
+ font-size: 11px;
4436
+ color: var(--text-muted);
4437
+ background: none;
4438
+ border: 1px solid var(--border-subtle);
4439
+ border-radius: var(--radius-md);
4440
+ padding: 2px 10px;
4441
+ cursor: pointer;
4442
+ transition: color var(--duration-fast), border-color var(--duration-fast);
4443
+ }
4444
+
4445
+ .history-clear-btn:hover {
4446
+ color: #ff8e8e;
4447
+ border-color: rgba(255, 108, 91, 0.3);
4448
+ }
4449
+
4450
+ .history-list {
4451
+ flex: 1;
4452
+ overflow-y: auto;
4453
+ padding: 6px 0;
4454
+ }
4455
+
4456
+ .history-entry {
4457
+ display: flex;
4458
+ flex-direction: column;
4459
+ gap: 2px;
4460
+ width: 100%;
4461
+ text-align: left;
4462
+ padding: 8px 14px;
4463
+ background: none;
4464
+ border: none;
4465
+ cursor: pointer;
4466
+ transition: background var(--duration-fast);
4467
+ }
4468
+
4469
+ .history-entry:hover {
4470
+ background: var(--bg-tertiary);
4471
+ }
4472
+
4473
+ .history-entry-title {
4474
+ font-size: 12px;
4475
+ font-weight: 500;
4476
+ color: var(--text-primary);
4477
+ overflow: hidden;
4478
+ text-overflow: ellipsis;
4479
+ white-space: nowrap;
4480
+ }
4481
+
4482
+ .history-entry-url {
4483
+ font-size: 11px;
4484
+ font-family: var(--font-mono);
4485
+ color: var(--text-muted);
4486
+ overflow: hidden;
4487
+ text-overflow: ellipsis;
4488
+ white-space: nowrap;
4489
+ }
4490
+
4491
+ .history-entry-time {
4492
+ font-size: 10px;
4493
+ color: var(--text-muted);
4494
+ opacity: 0.7;
4495
+ }
4496
+
4497
+ .history-empty {
4498
+ padding: 20px 14px;
4499
+ font-size: 12px;
4500
+ color: var(--text-muted);
4501
+ text-align: center;
4502
+ }
4116
4503
  .devtools-panel {
4117
4504
  width: 100%;
4118
4505
  height: 100%;
@@ -4671,6 +5058,28 @@
4671
5058
  --font-reader: Charter, Georgia, serif;
4672
5059
  }
4673
5060
 
5061
+ [data-theme="light"] {
5062
+ --bg-primary: #f8f7f5;
5063
+ --bg-secondary: #efeeec;
5064
+ --bg-tertiary: #e5e4e2;
5065
+ --bg-elevated: #dbd9d7;
5066
+
5067
+ --text-primary: #1c1c1e;
5068
+ --text-secondary: #555558;
5069
+ --text-muted: #8e8e93;
5070
+
5071
+ --accent-primary: #8a6d2f;
5072
+ --accent-secondary: #5a7a42;
5073
+ --accent-warm: #8a5e3a;
5074
+
5075
+ --border-subtle: #d4d3d1;
5076
+ --border-visible: #c0bfbd;
5077
+
5078
+ --loading-bar: #8a6d2f;
5079
+ --error: #b04040;
5080
+ --success: #408040;
5081
+ }
5082
+
4674
5083
  *,
4675
5084
  *::before,
4676
5085
  *::after {
@@ -4817,6 +5226,89 @@ button:active:not(:disabled) {
4817
5226
  }
4818
5227
  }
4819
5228
 
5229
+ /* ═══════════════════════════════════════
5230
+ Find bar (Ctrl+F)
5231
+ ═══════════════════════════════════════ */
5232
+
5233
+ .find-bar {
5234
+ position: absolute;
5235
+ top: calc(32px + var(--tab-height) + var(--address-bar-height) + 4px);
5236
+ right: 14px;
5237
+ z-index: 60;
5238
+ display: flex;
5239
+ align-items: center;
5240
+ gap: 6px;
5241
+ padding: 6px 10px;
5242
+ border: 1px solid var(--border-visible);
5243
+ border-radius: var(--radius-lg);
5244
+ background: linear-gradient(
5245
+ 180deg,
5246
+ rgba(50, 50, 54, 0.97),
5247
+ rgba(34, 34, 38, 0.97)
5248
+ );
5249
+ box-shadow:
5250
+ 0 4px 12px rgba(0, 0, 0, 0.2),
5251
+ 0 16px 40px rgba(0, 0, 0, 0.16);
5252
+ backdrop-filter: blur(16px);
5253
+ animation: toast-enter var(--duration-enter) var(--ease-out-expo) both;
5254
+ }
5255
+
5256
+ .find-bar-input {
5257
+ width: 200px;
5258
+ height: 28px;
5259
+ padding: 0 8px;
5260
+ background: var(--bg-tertiary);
5261
+ border: 1px solid var(--border-subtle);
5262
+ border-radius: var(--radius-md);
5263
+ color: var(--text-primary);
5264
+ font-size: 13px;
5265
+ font-family: var(--font-mono);
5266
+ outline: none;
5267
+ transition: border-color var(--duration-fast) var(--ease-in-out);
5268
+ }
5269
+
5270
+ .find-bar-input:focus {
5271
+ border-color: var(--accent-primary);
5272
+ }
5273
+
5274
+ .find-bar-count {
5275
+ color: var(--text-muted);
5276
+ font-size: 11px;
5277
+ font-family: var(--font-mono);
5278
+ white-space: nowrap;
5279
+ min-width: 60px;
5280
+ text-align: center;
5281
+ }
5282
+
5283
+ .find-bar-btn {
5284
+ width: 28px;
5285
+ height: 28px;
5286
+ border: none;
5287
+ border-radius: var(--radius-md);
5288
+ background: transparent;
5289
+ color: var(--text-secondary);
5290
+ font-size: 11px;
5291
+ cursor: pointer;
5292
+ display: flex;
5293
+ align-items: center;
5294
+ justify-content: center;
5295
+ transition: background var(--duration-fast), color var(--duration-fast);
5296
+ }
5297
+
5298
+ .find-bar-btn:hover {
5299
+ background: var(--bg-tertiary);
5300
+ color: var(--text-primary);
5301
+ }
5302
+
5303
+ .find-bar-close {
5304
+ font-size: 16px;
5305
+ color: var(--text-muted);
5306
+ }
5307
+
5308
+ .find-bar-close:hover {
5309
+ color: var(--text-primary);
5310
+ }
5311
+
4820
5312
  /* ═══════════════════════════════════════
4821
5313
  Scroll fade indicators
4822
5314
  ═══════════════════════════════════════ */