react-public-components 1.1.19 → 1.2.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.
package/dist/index.css CHANGED
@@ -1,3 +1,17 @@
1
+ /* src/index.less */
2
+ @keyframes rpc-spin {
3
+ 0% {
4
+ transform: rotate(0deg);
5
+ }
6
+ 100% {
7
+ transform: rotate(360deg);
8
+ }
9
+ }
10
+ .rpc_loading_icon {
11
+ display: inline-block;
12
+ animation: rpc-spin 0.85s infinite linear;
13
+ }
14
+
1
15
  /* CollapseBox/index.less */
2
16
  .collapsible-wrapper {
3
17
  position: relative;
@@ -193,4 +207,4586 @@
193
207
  offset-distance: 100%;
194
208
  }
195
209
  }
210
+
211
+ /* ColorPicker/index.less */
212
+ .react-public-color-picker-trigger {
213
+ display: inline-flex;
214
+ align-items: center;
215
+ gap: 8px;
216
+ padding: 4px;
217
+ border: 1px solid #d9d9d9;
218
+ border-radius: 6px;
219
+ background: #ffffff;
220
+ cursor: pointer;
221
+ user-select: none;
222
+ transition: all 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
223
+ box-sizing: border-box;
224
+ }
225
+ .react-public-color-picker-trigger:hover:not(.react-public-color-picker-disabled) {
226
+ border-color: #4096ff;
227
+ }
228
+ .react-public-color-picker-trigger.react-public-color-picker-size-small {
229
+ height: 24px;
230
+ padding: 2px 6px;
231
+ font-size: 12px;
232
+ }
233
+ .react-public-color-picker-trigger.react-public-color-picker-size-middle {
234
+ height: 32px;
235
+ padding: 4px 8px;
236
+ font-size: 14px;
237
+ }
238
+ .react-public-color-picker-trigger.react-public-color-picker-size-large {
239
+ height: 40px;
240
+ padding: 6px 12px;
241
+ font-size: 16px;
242
+ }
243
+ .react-public-color-picker-trigger.react-public-color-picker-disabled {
244
+ background: #f5f5f5;
245
+ border-color: #d9d9d9;
246
+ cursor: not-allowed;
247
+ opacity: 0.65;
248
+ }
249
+ .react-public-color-picker-color-block {
250
+ position: relative;
251
+ width: 18px;
252
+ height: 18px;
253
+ border-radius: 4px;
254
+ box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.15);
255
+ overflow: hidden;
256
+ background-image:
257
+ conic-gradient(
258
+ #eee 0 25%,
259
+ #fff 0 50%,
260
+ #eee 0 75%,
261
+ #fff 0 100%);
262
+ background-size: 8px 8px;
263
+ }
264
+ .react-public-color-picker-color-inner {
265
+ width: 100%;
266
+ height: 100%;
267
+ border-radius: inherit;
268
+ }
269
+ .react-public-color-picker-clear-icon {
270
+ color: #bfbfbf;
271
+ font-size: 12px;
272
+ transition: color 0.2s;
273
+ display: inline-flex;
274
+ align-items: center;
275
+ }
276
+ .react-public-color-picker-clear-icon:hover {
277
+ color: #595959;
278
+ }
279
+ .react-public-color-picker-popover {
280
+ position: absolute;
281
+ z-index: 1050;
282
+ padding: 12px;
283
+ background: #ffffff;
284
+ border-radius: 8px;
285
+ box-shadow:
286
+ 0 6px 16px 0 rgba(0, 0, 0, 0.08),
287
+ 0 3px 6px -4px rgba(0, 0, 0, 0.12),
288
+ 0 9px 28px 8px rgba(0, 0, 0, 0.05);
289
+ width: max-content;
290
+ min-width: 250px;
291
+ max-width: 90vw;
292
+ box-sizing: border-box;
293
+ user-select: none;
294
+ animation: react-public-color-picker-fade-in 0.2s ease;
295
+ }
296
+ @keyframes react-public-color-picker-fade-in {
297
+ from {
298
+ opacity: 0;
299
+ transform: scale(0.95);
300
+ }
301
+ to {
302
+ opacity: 1;
303
+ transform: scale(1);
304
+ }
305
+ }
306
+ .react-public-color-picker-panel-header {
307
+ display: flex;
308
+ align-items: center;
309
+ justify-content: space-between;
310
+ margin-bottom: 12px;
311
+ width: 100%;
312
+ }
313
+ .react-public-color-picker-panel-clear-btn {
314
+ width: 24px;
315
+ height: 24px;
316
+ border: 1px solid #d9d9d9;
317
+ border-radius: 4px;
318
+ background: #ffffff;
319
+ display: flex;
320
+ align-items: center;
321
+ justify-content: center;
322
+ cursor: pointer;
323
+ transition: all 0.2s ease;
324
+ margin-left: auto;
325
+ }
326
+ .react-public-color-picker-panel-clear-btn:hover {
327
+ border-color: #ff4d4f;
328
+ background: #fff1f0;
329
+ }
330
+ .react-public-color-picker-mode-segmented {
331
+ display: flex;
332
+ background: #f5f5f5;
333
+ padding: 2px;
334
+ border-radius: 6px;
335
+ flex: 1;
336
+ margin-right: 8px;
337
+ }
338
+ .react-public-color-picker-mode-option {
339
+ flex: 1;
340
+ text-align: center;
341
+ padding: 4px 0;
342
+ font-size: 12px;
343
+ border-radius: 4px;
344
+ cursor: pointer;
345
+ color: #595959;
346
+ transition: all 0.2s;
347
+ }
348
+ .react-public-color-picker-mode-option.active {
349
+ background: #ffffff;
350
+ color: #1677ff;
351
+ font-weight: 500;
352
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
353
+ }
354
+ .react-public-color-picker-gradient-slider {
355
+ position: relative;
356
+ height: 14px;
357
+ border-radius: 7px;
358
+ margin-bottom: 12px;
359
+ cursor: pointer;
360
+ background-image:
361
+ conic-gradient(
362
+ #eee 0 25%,
363
+ #fff 0 50%,
364
+ #eee 0 75%,
365
+ #fff 0 100%);
366
+ background-size: 8px 8px;
367
+ }
368
+ .react-public-color-picker-gradient-bg {
369
+ position: absolute;
370
+ inset: 0;
371
+ border-radius: inherit;
372
+ }
373
+ .react-public-color-picker-gradient-stop-handle {
374
+ position: absolute;
375
+ top: 50%;
376
+ width: 14px;
377
+ height: 14px;
378
+ border: 2px solid #ffffff;
379
+ border-radius: 50%;
380
+ box-shadow: 0 0 3px rgba(0, 0, 0, 0.4);
381
+ transform: translate(-50%, -50%);
382
+ cursor: grab;
383
+ box-sizing: border-box;
384
+ transition: border-color 0.15s;
385
+ }
386
+ .react-public-color-picker-gradient-stop-handle.active {
387
+ border-color: #1677ff;
388
+ box-shadow: 0 0 0 2px rgba(22, 119, 255, 0.3), 0 0 4px rgba(0, 0, 0, 0.4);
389
+ }
390
+ .react-public-color-picker-arrow {
391
+ position: absolute;
392
+ width: 8px;
393
+ height: 8px;
394
+ background: #ffffff;
395
+ transform: rotate(45deg);
396
+ box-shadow: -2px -2px 5px rgba(0, 0, 0, 0.03);
397
+ }
398
+ .react-public-color-picker-popover-bottomLeft .react-public-color-picker-arrow {
399
+ top: -4px;
400
+ left: 16px;
401
+ }
402
+ .react-public-color-picker-popover-bottomRight .react-public-color-picker-arrow {
403
+ top: -4px;
404
+ right: 16px;
405
+ }
406
+ .react-public-color-picker-popover-topLeft .react-public-color-picker-arrow {
407
+ bottom: -4px;
408
+ left: 16px;
409
+ }
410
+ .react-public-color-picker-popover-topRight .react-public-color-picker-arrow {
411
+ bottom: -4px;
412
+ right: 16px;
413
+ }
414
+ .react-public-color-picker-panel-body {
415
+ width: 240px;
416
+ box-sizing: border-box;
417
+ }
418
+ .react-public-color-picker-palette {
419
+ position: relative;
420
+ width: 100%;
421
+ height: 150px;
422
+ border-radius: 6px;
423
+ cursor: crosshair;
424
+ overflow: hidden;
425
+ margin-bottom: 12px;
426
+ }
427
+ .react-public-color-picker-saturation-bg {
428
+ position: absolute;
429
+ inset: 0;
430
+ background:
431
+ linear-gradient(
432
+ to right,
433
+ #fff,
434
+ transparent);
435
+ }
436
+ .react-public-color-picker-brightness-bg {
437
+ position: absolute;
438
+ inset: 0;
439
+ background:
440
+ linear-gradient(
441
+ to top,
442
+ #000,
443
+ transparent);
444
+ }
445
+ .react-public-color-picker-handler {
446
+ position: absolute;
447
+ width: 14px;
448
+ height: 14px;
449
+ border: 2px solid #ffffff;
450
+ border-radius: 50%;
451
+ box-shadow: 0 0 4px rgba(0, 0, 0, 0.4);
452
+ transform: translate(-50%, -50%);
453
+ pointer-events: none;
454
+ box-sizing: border-box;
455
+ }
456
+ .react-public-color-picker-slider-container {
457
+ display: flex;
458
+ align-items: center;
459
+ gap: 12px;
460
+ margin-bottom: 12px;
461
+ }
462
+ .react-public-color-picker-slider-group {
463
+ flex: 1;
464
+ display: flex;
465
+ flex-direction: column;
466
+ gap: 10px;
467
+ }
468
+ .react-public-color-picker-side-block {
469
+ position: relative;
470
+ width: 26px;
471
+ height: 26px;
472
+ border-radius: 6px;
473
+ box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.15);
474
+ overflow: hidden;
475
+ flex-shrink: 0;
476
+ background-image:
477
+ conic-gradient(
478
+ #eee 0 25%,
479
+ #fff 0 50%,
480
+ #eee 0 75%,
481
+ #fff 0 100%);
482
+ background-size: 8px 8px;
483
+ }
484
+ .react-public-color-picker-slider {
485
+ position: relative;
486
+ height: 10px;
487
+ border-radius: 5px;
488
+ cursor: pointer;
489
+ }
490
+ .react-public-color-picker-hue-slider {
491
+ background:
492
+ linear-gradient(
493
+ to right,
494
+ #ff0000 0%,
495
+ #ffff00 17%,
496
+ #00ff00 33%,
497
+ #00ffff 50%,
498
+ #0000ff 67%,
499
+ #ff00ff 83%,
500
+ #ff0000 100%);
501
+ }
502
+ .react-public-color-picker-alpha-slider {
503
+ background-image:
504
+ conic-gradient(
505
+ #eee 0 25%,
506
+ #fff 0 50%,
507
+ #eee 0 75%,
508
+ #fff 0 100%);
509
+ background-size: 8px 8px;
510
+ }
511
+ .react-public-color-picker-alpha-bg {
512
+ position: absolute;
513
+ inset: 0;
514
+ border-radius: inherit;
515
+ }
516
+ .react-public-color-picker-slider-handler {
517
+ position: absolute;
518
+ top: 50%;
519
+ width: 14px;
520
+ height: 14px;
521
+ border: 2px solid #ffffff;
522
+ border-radius: 50%;
523
+ background: transparent;
524
+ box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
525
+ transform: translate(-50%, -50%);
526
+ pointer-events: none;
527
+ box-sizing: border-box;
528
+ }
529
+ .react-public-color-picker-inputs {
530
+ display: flex;
531
+ align-items: center;
532
+ gap: 6px;
533
+ width: 100%;
534
+ box-sizing: border-box;
535
+ }
536
+ .react-public-color-picker-format-select {
537
+ width: 58px;
538
+ height: 28px;
539
+ padding: 0 2px;
540
+ border: 1px solid #d9d9d9;
541
+ border-radius: 4px;
542
+ background: #fff;
543
+ font-size: 12px;
544
+ cursor: pointer;
545
+ outline: none;
546
+ flex-shrink: 0;
547
+ }
548
+ .react-public-color-picker-format-select:focus {
549
+ border-color: #4096ff;
550
+ }
551
+ .react-public-color-picker-input-field {
552
+ flex: 1;
553
+ min-width: 0;
554
+ height: 28px;
555
+ padding: 0 6px;
556
+ border: 1px solid #d9d9d9;
557
+ border-radius: 4px;
558
+ font-size: 12px;
559
+ outline: none;
560
+ box-sizing: border-box;
561
+ }
562
+ .react-public-color-picker-input-field:focus {
563
+ border-color: #4096ff;
564
+ }
565
+ .react-public-color-picker-alpha-input {
566
+ width: 44px;
567
+ height: 28px;
568
+ padding: 0 2px;
569
+ border: 1px solid #d9d9d9;
570
+ border-radius: 4px;
571
+ font-size: 12px;
572
+ text-align: center;
573
+ outline: none;
574
+ box-sizing: border-box;
575
+ flex-shrink: 0;
576
+ }
577
+ .react-public-color-picker-alpha-input:focus {
578
+ border-color: #4096ff;
579
+ }
580
+ .react-public-color-picker-presets {
581
+ padding-top: 4px;
582
+ }
583
+ .react-public-color-picker-presets-standalone {
584
+ border-top: 1px solid #f0f0f0;
585
+ padding-top: 10px;
586
+ margin-top: 4px;
587
+ }
588
+ .react-public-color-picker-preset-title {
589
+ font-size: 12px;
590
+ color: #595959;
591
+ margin-bottom: 6px;
592
+ display: flex;
593
+ align-items: center;
594
+ gap: 4px;
595
+ cursor: pointer;
596
+ user-select: none;
597
+ }
598
+ .react-public-color-picker-preset-title:hover {
599
+ color: #1677ff;
600
+ }
601
+ .react-public-color-picker-preset-colors {
602
+ display: flex;
603
+ flex-wrap: wrap;
604
+ gap: 6px;
605
+ max-width: 220px;
606
+ margin-bottom: 6px;
607
+ }
608
+ .react-public-color-picker-preset-item {
609
+ position: relative;
610
+ width: 18px;
611
+ height: 18px;
612
+ border-radius: 4px;
613
+ cursor: pointer;
614
+ overflow: hidden;
615
+ box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.15);
616
+ transition: transform 0.1s ease;
617
+ background-image:
618
+ conic-gradient(
619
+ #eee 0 25%,
620
+ #fff 0 50%,
621
+ #eee 0 75%,
622
+ #fff 0 100%);
623
+ background-size: 8px 8px;
624
+ }
625
+ .react-public-color-picker-preset-item:hover {
626
+ transform: scale(1.15);
627
+ }
628
+ .react-public-color-picker-preset-item-inner {
629
+ width: 100%;
630
+ height: 100%;
631
+ }
632
+
633
+ /* CopyButton/index.less */
634
+ .rpc_copy_button {
635
+ display: inline-flex;
636
+ align-items: center;
637
+ justify-content: center;
638
+ gap: 6px;
639
+ box-sizing: border-box;
640
+ font-size: 14px;
641
+ line-height: 1.5714;
642
+ font-family: inherit;
643
+ cursor: pointer;
644
+ user-select: none;
645
+ transition: all 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
646
+ position: relative;
647
+ white-space: nowrap;
648
+ }
649
+ .rpc_copy_button_button {
650
+ height: 32px;
651
+ padding: 4px 15px;
652
+ border-radius: 6px;
653
+ border: 1px solid #d9d9d9;
654
+ background: #ffffff;
655
+ color: #262626;
656
+ }
657
+ .rpc_copy_button_button:hover:not(.rpc_copy_button_button_disabled) {
658
+ color: #4096ff;
659
+ border-color: #4096ff;
660
+ }
661
+ .rpc_copy_button_button:active:not(.rpc_copy_button_button_disabled) {
662
+ color: #0958d9;
663
+ border-color: #0958d9;
664
+ }
665
+ .rpc_copy_button_button.rpc_copy_button_primary {
666
+ background: #1677ff;
667
+ border-color: #1677ff;
668
+ color: #ffffff;
669
+ }
670
+ .rpc_copy_button_button.rpc_copy_button_primary:hover:not(.rpc_copy_button_disabled) {
671
+ background: #4096ff;
672
+ border-color: #4096ff;
673
+ color: #ffffff;
674
+ }
675
+ .rpc_copy_button_button.rpc_copy_button_copied {
676
+ color: #52c41a;
677
+ border-color: #b7eb8f;
678
+ background: #f6ffed;
679
+ }
680
+ .rpc_copy_button_button.rpc_copy_button_copied.rpc_copy_button_primary {
681
+ background: #52c41a;
682
+ border-color: #52c41a;
683
+ color: #ffffff;
684
+ }
685
+ .rpc_copy_button_icon {
686
+ padding: 4px;
687
+ border: none;
688
+ background: transparent;
689
+ color: #8c8c8c;
690
+ border-radius: 4px;
691
+ }
692
+ .rpc_copy_button_icon:hover:not(.rpc_copy_button_icon_disabled) {
693
+ color: #1677ff;
694
+ background: rgba(0, 0, 0, 0.04);
695
+ }
696
+ .rpc_copy_button_icon.rpc_copy_button_copied {
697
+ color: #52c41a;
698
+ }
699
+ .rpc_copy_button_inline {
700
+ padding: 0 4px;
701
+ border: none;
702
+ background: transparent;
703
+ color: #1677ff;
704
+ }
705
+ .rpc_copy_button_inline:hover:not(.rpc_copy_button_inline_disabled) {
706
+ color: #4096ff;
707
+ text-decoration: underline;
708
+ }
709
+ .rpc_copy_button_inline.rpc_copy_button_copied {
710
+ color: #52c41a;
711
+ }
712
+ .rpc_copy_button_disabled {
713
+ cursor: not-allowed;
714
+ opacity: 0.5;
715
+ pointer-events: none;
716
+ }
717
+ .rpc_copy_button_icon_wrap {
718
+ display: inline-flex;
719
+ align-items: center;
720
+ transition: transform 0.2s ease;
721
+ }
722
+ .rpc_copy_button_tooltip {
723
+ position: absolute;
724
+ bottom: calc(100% + 6px);
725
+ left: 50%;
726
+ transform: translateX(-50%) translateY(4px);
727
+ background: rgba(0, 0, 0, 0.85);
728
+ color: #ffffff;
729
+ padding: 4px 8px;
730
+ border-radius: 4px;
731
+ font-size: 12px;
732
+ line-height: 1.4;
733
+ white-space: nowrap;
734
+ pointer-events: none;
735
+ opacity: 0;
736
+ transition: all 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
737
+ z-index: 1000;
738
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
739
+ }
740
+ .rpc_copy_button_tooltip::after {
741
+ content: "";
742
+ position: absolute;
743
+ top: 100%;
744
+ left: 50%;
745
+ transform: translateX(-50%);
746
+ border: 4px solid transparent;
747
+ border-top-color: rgba(0, 0, 0, 0.85);
748
+ }
749
+ .rpc_copy_button:hover .rpc_copy_button_tooltip_hover,
750
+ .rpc_copy_button_tooltip_visible {
751
+ opacity: 1;
752
+ transform: translateX(-50%) translateY(0);
753
+ }
754
+
755
+ /* TextEllipsis/index.less */
756
+ .rpc_text_ellipsis {
757
+ position: relative;
758
+ box-sizing: border-box;
759
+ line-height: 1.5714;
760
+ color: inherit;
761
+ display: inline-flex;
762
+ max-width: 100%;
763
+ vertical-align: bottom;
764
+ }
765
+ .rpc_text_ellipsis_content_wrap {
766
+ display: inline-block;
767
+ max-width: 100%;
768
+ vertical-align: bottom;
769
+ }
770
+ .rpc_text_ellipsis_single_line {
771
+ overflow: hidden;
772
+ text-overflow: ellipsis;
773
+ white-space: nowrap;
774
+ display: block;
775
+ }
776
+ .rpc_text_ellipsis_multi_line {
777
+ display: -webkit-box;
778
+ -webkit-box-orient: vertical;
779
+ overflow: hidden;
780
+ text-overflow: ellipsis;
781
+ word-break: break-all;
782
+ }
783
+ .rpc_text_ellipsis_expanded {
784
+ display: block;
785
+ overflow: visible;
786
+ -webkit-line-clamp: unset !important;
787
+ white-space: normal;
788
+ }
789
+ .rpc_text_ellipsis_action_btn {
790
+ display: inline-flex;
791
+ align-items: center;
792
+ margin-left: 6px;
793
+ color: #1677ff;
794
+ cursor: pointer;
795
+ font-size: 13px;
796
+ user-select: none;
797
+ transition: color 0.2s ease;
798
+ white-space: nowrap;
799
+ }
800
+ .rpc_text_ellipsis_action_btn:hover {
801
+ color: #4096ff;
802
+ text-decoration: underline;
803
+ }
804
+ .rpc_text_ellipsis_prefix {
805
+ margin-right: 4px;
806
+ display: inline-flex;
807
+ align-items: center;
808
+ flex-shrink: 0;
809
+ }
810
+ .rpc_text_ellipsis_suffix {
811
+ margin-left: 4px;
812
+ display: inline-flex;
813
+ align-items: center;
814
+ flex-shrink: 0;
815
+ }
816
+ .rpc_text_ellipsis_tooltip {
817
+ position: absolute;
818
+ bottom: calc(100% + 8px);
819
+ left: 50%;
820
+ transform: translateX(-50%) translateY(4px);
821
+ background: rgba(0, 0, 0, 0.85);
822
+ color: #ffffff;
823
+ padding: 6px 10px;
824
+ border-radius: 6px;
825
+ font-size: 12px;
826
+ line-height: 1.5;
827
+ max-width: 320px;
828
+ word-break: break-all;
829
+ white-space: normal;
830
+ pointer-events: none;
831
+ opacity: 0;
832
+ transition: all 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
833
+ z-index: 1000;
834
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
835
+ }
836
+ .rpc_text_ellipsis_tooltip::after {
837
+ content: "";
838
+ position: absolute;
839
+ top: 100%;
840
+ left: 50%;
841
+ transform: translateX(-50%);
842
+ border: 4px solid transparent;
843
+ border-top-color: rgba(0, 0, 0, 0.85);
844
+ }
845
+ .rpc_text_ellipsis:hover .rpc_text_ellipsis_tooltip_visible {
846
+ opacity: 1;
847
+ transform: translateX(-50%) translateY(0);
848
+ }
849
+
850
+ /* DebounceSelect/index.less */
851
+ .rpc_debounce_select {
852
+ position: relative;
853
+ box-sizing: border-box;
854
+ display: inline-block;
855
+ width: 100%;
856
+ min-width: 160px;
857
+ font-size: 14px;
858
+ font-family: inherit;
859
+ color: #262626;
860
+ }
861
+ .rpc_debounce_select_selector {
862
+ display: flex;
863
+ align-items: center;
864
+ flex-wrap: wrap;
865
+ gap: 4px;
866
+ min-height: 34px;
867
+ padding: 3px 11px;
868
+ background: #ffffff;
869
+ border: 1px solid #d9d9d9;
870
+ border-radius: 6px;
871
+ cursor: text;
872
+ transition: all 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
873
+ box-sizing: border-box;
874
+ }
875
+ .rpc_debounce_select_selector:hover:not(.rpc_debounce_select_selector_disabled) {
876
+ border-color: #4096ff;
877
+ }
878
+ .rpc_debounce_select_selector_focused {
879
+ border-color: #1677ff;
880
+ box-shadow: 0 0 0 2px rgba(22, 119, 255, 0.15);
881
+ }
882
+ .rpc_debounce_select_selector_disabled {
883
+ background: #f5f5f5;
884
+ border-color: #d9d9d9;
885
+ cursor: not-allowed;
886
+ color: rgba(0, 0, 0, 0.25);
887
+ }
888
+ .rpc_debounce_select_input {
889
+ flex: 1;
890
+ min-width: 60px;
891
+ border: none;
892
+ outline: none;
893
+ background: transparent;
894
+ font-size: 14px;
895
+ color: inherit;
896
+ padding: 0;
897
+ margin: 0;
898
+ }
899
+ .rpc_debounce_select_input::placeholder {
900
+ color: #bfbfbf;
901
+ }
902
+ .rpc_debounce_select_input:disabled {
903
+ cursor: not-allowed;
904
+ }
905
+ .rpc_debounce_select_tag {
906
+ display: inline-flex;
907
+ align-items: center;
908
+ gap: 4px;
909
+ padding: 1px 8px;
910
+ background: #f5f5f5;
911
+ border: 1px solid #e8e8e8;
912
+ border-radius: 4px;
913
+ font-size: 12px;
914
+ color: #262626;
915
+ user-select: none;
916
+ }
917
+ .rpc_debounce_select_tag_close {
918
+ font-size: 10px;
919
+ color: #8c8c8c;
920
+ cursor: pointer;
921
+ display: inline-flex;
922
+ align-items: center;
923
+ }
924
+ .rpc_debounce_select_tag_close:hover {
925
+ color: #ff4d4f;
926
+ }
927
+ .rpc_debounce_select_actions {
928
+ display: inline-flex;
929
+ align-items: center;
930
+ gap: 6px;
931
+ margin-left: auto;
932
+ color: #8c8c8c;
933
+ font-size: 12px;
934
+ flex-shrink: 0;
935
+ }
936
+ .rpc_debounce_select_clear_btn {
937
+ cursor: pointer;
938
+ display: inline-flex;
939
+ align-items: center;
940
+ transition: color 0.2s;
941
+ }
942
+ .rpc_debounce_select_clear_btn:hover {
943
+ color: #595959;
944
+ }
945
+ .rpc_debounce_select_dropdown {
946
+ position: absolute;
947
+ top: calc(100% + 4px);
948
+ left: 0;
949
+ right: 0;
950
+ background: #ffffff;
951
+ border-radius: 8px;
952
+ box-shadow: 0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 3px 6px -4px rgba(0, 0, 0, 0.12);
953
+ border: 1px solid #f0f0f0;
954
+ max-height: 256px;
955
+ overflow-y: auto;
956
+ z-index: 1050;
957
+ padding: 4px;
958
+ box-sizing: border-box;
959
+ animation: rpcSelectFadeIn 0.15s ease-out;
960
+ }
961
+ .rpc_debounce_select_item {
962
+ padding: 7px 12px;
963
+ border-radius: 4px;
964
+ cursor: pointer;
965
+ font-size: 14px;
966
+ line-height: 1.5;
967
+ color: #262626;
968
+ display: flex;
969
+ align-items: center;
970
+ justify-content: space-between;
971
+ transition: background 0.15s ease;
972
+ }
973
+ .rpc_debounce_select_item:hover {
974
+ background: #f5f5f5;
975
+ }
976
+ .rpc_debounce_select_item_selected {
977
+ font-weight: 600;
978
+ color: #1677ff;
979
+ background: #e6f4ff;
980
+ }
981
+ .rpc_debounce_select_item_selected:hover {
982
+ background: #bae0ff;
983
+ }
984
+ .rpc_debounce_select_item_disabled {
985
+ cursor: not-allowed;
986
+ color: #bfbfbf;
987
+ background: transparent !important;
988
+ }
989
+ .rpc_debounce_select_empty {
990
+ padding: 18px 0;
991
+ text-align: center;
992
+ color: #8c8c8c;
993
+ font-size: 13px;
994
+ }
995
+ @keyframes rpcSelectFadeIn {
996
+ from {
997
+ opacity: 0;
998
+ transform: translateY(-4px);
999
+ }
1000
+ to {
1001
+ opacity: 1;
1002
+ transform: translateY(0);
1003
+ }
1004
+ }
1005
+
1006
+ /* CountUp/index.less */
1007
+ .rpc_count_up {
1008
+ display: inline-flex;
1009
+ align-items: baseline;
1010
+ font-variant-numeric: tabular-nums;
1011
+ font-family: inherit;
1012
+ color: inherit;
1013
+ line-height: 1;
1014
+ }
1015
+ .rpc_count_up_prefix {
1016
+ margin-right: 2px;
1017
+ font-size: 0.85em;
1018
+ opacity: 0.85;
1019
+ }
1020
+ .rpc_count_up_suffix {
1021
+ margin-left: 2px;
1022
+ font-size: 0.85em;
1023
+ opacity: 0.85;
1024
+ }
1025
+ .rpc_count_up_value {
1026
+ font-weight: inherit;
1027
+ }
1028
+
1029
+ /* ContextMenu/index.less */
1030
+ .rpc_context_menu {
1031
+ display: inline-block;
1032
+ width: 100%;
1033
+ }
1034
+ .rpc_context_menu_panel {
1035
+ position: fixed;
1036
+ min-width: 160px;
1037
+ background: #ffffff;
1038
+ border-radius: 8px;
1039
+ box-shadow:
1040
+ 0 6px 16px 0 rgba(0, 0, 0, 0.08),
1041
+ 0 3px 6px -4px rgba(0, 0, 0, 0.12),
1042
+ 0 9px 28px 8px rgba(0, 0, 0, 0.05);
1043
+ border: 1px solid #f0f0f0;
1044
+ padding: 4px;
1045
+ z-index: 2000;
1046
+ box-sizing: border-box;
1047
+ animation: rpcMenuFadeIn 0.12s ease-out;
1048
+ user-select: none;
1049
+ font-family: inherit;
1050
+ }
1051
+ .rpc_context_menu_item {
1052
+ display: flex;
1053
+ align-items: center;
1054
+ padding: 7px 12px;
1055
+ font-size: 13px;
1056
+ line-height: 1.5;
1057
+ color: #262626;
1058
+ border-radius: 4px;
1059
+ cursor: pointer;
1060
+ position: relative;
1061
+ transition: background 0.15s ease, color 0.15s ease;
1062
+ }
1063
+ .rpc_context_menu_item:hover:not(.rpc_context_menu_item_disabled) {
1064
+ background: #f5f5f5;
1065
+ color: #1677ff;
1066
+ }
1067
+ .rpc_context_menu_item_icon {
1068
+ margin-right: 8px;
1069
+ display: inline-flex;
1070
+ align-items: center;
1071
+ font-size: 14px;
1072
+ }
1073
+ .rpc_context_menu_item_label {
1074
+ flex: 1;
1075
+ }
1076
+ .rpc_context_menu_item_shortcut {
1077
+ margin-left: 16px;
1078
+ color: #8c8c8c;
1079
+ font-size: 11px;
1080
+ font-family: monospace;
1081
+ }
1082
+ .rpc_context_menu_item_arrow {
1083
+ margin-left: 8px;
1084
+ font-size: 10px;
1085
+ color: #8c8c8c;
1086
+ }
1087
+ .rpc_context_menu_item_danger {
1088
+ color: #ff4d4f;
1089
+ }
1090
+ .rpc_context_menu_item_danger:hover:not(.rpc_context_menu_item_disabled) {
1091
+ background: #fff1f0;
1092
+ color: #ff4d4f;
1093
+ }
1094
+ .rpc_context_menu_item_disabled {
1095
+ cursor: not-allowed;
1096
+ color: #bfbfbf !important;
1097
+ background: transparent !important;
1098
+ }
1099
+ .rpc_context_menu_divider {
1100
+ height: 1px;
1101
+ margin: 4px 0;
1102
+ background: #f0f0f0;
1103
+ }
1104
+ .rpc_context_menu_submenu {
1105
+ position: absolute;
1106
+ top: 0;
1107
+ left: 100%;
1108
+ min-width: 150px;
1109
+ background: #ffffff;
1110
+ border-radius: 8px;
1111
+ box-shadow: 0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 3px 6px -4px rgba(0, 0, 0, 0.12);
1112
+ border: 1px solid #f0f0f0;
1113
+ padding: 4px;
1114
+ display: none;
1115
+ z-index: 2001;
1116
+ }
1117
+ .rpc_context_menu_submenu_left {
1118
+ left: auto;
1119
+ right: 100%;
1120
+ }
1121
+ .rpc_context_menu_item:hover > .rpc_context_menu_submenu {
1122
+ display: block;
1123
+ animation: rpcMenuFadeIn 0.12s ease-out;
1124
+ }
1125
+ @keyframes rpcMenuFadeIn {
1126
+ from {
1127
+ opacity: 0;
1128
+ transform: scale(0.95);
1129
+ }
1130
+ to {
1131
+ opacity: 1;
1132
+ transform: scale(1);
1133
+ }
1134
+ }
1135
+
1136
+ /* Fullscreen/index.less */
1137
+ .rpc_fullscreen_container {
1138
+ position: relative;
1139
+ box-sizing: border-box;
1140
+ }
1141
+ .rpc_fullscreen_container_web_fullscreen {
1142
+ position: fixed !important;
1143
+ top: 0 !important;
1144
+ left: 0 !important;
1145
+ right: 0 !important;
1146
+ bottom: 0 !important;
1147
+ width: 100vw !important;
1148
+ height: 100vh !important;
1149
+ z-index: 9999 !important;
1150
+ background: #ffffff;
1151
+ overflow: auto !important;
1152
+ border-radius: 0 !important;
1153
+ margin: 0 !important;
1154
+ }
1155
+ .rpc_fullscreen_container_action_btn {
1156
+ position: absolute;
1157
+ display: inline-flex;
1158
+ align-items: center;
1159
+ justify-content: center;
1160
+ width: 32px;
1161
+ height: 32px;
1162
+ padding: 0;
1163
+ border-radius: 6px;
1164
+ background: rgba(255, 255, 255, 0.85);
1165
+ backdrop-filter: blur(8px);
1166
+ border: 1px solid rgba(0, 0, 0, 0.08);
1167
+ color: #595959;
1168
+ cursor: pointer;
1169
+ font-size: 15px;
1170
+ z-index: 10;
1171
+ box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);
1172
+ transition: all 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
1173
+ }
1174
+ .rpc_fullscreen_container_action_btn:hover {
1175
+ color: #1677ff;
1176
+ background: #ffffff;
1177
+ border-color: #1677ff;
1178
+ box-shadow: 0 4px 12px rgba(22, 119, 255, 0.15);
1179
+ }
1180
+ .rpc_fullscreen_container_action_btn_top_right {
1181
+ top: 12px;
1182
+ right: 12px;
1183
+ }
1184
+ .rpc_fullscreen_container_action_btn_top_left {
1185
+ top: 12px;
1186
+ left: 12px;
1187
+ }
1188
+ .rpc_fullscreen_container_action_btn_bottom_right {
1189
+ bottom: 12px;
1190
+ right: 12px;
1191
+ }
1192
+ .rpc_fullscreen_container_action_btn_bottom_left {
1193
+ bottom: 12px;
1194
+ left: 12px;
1195
+ }
1196
+ .rpc_fullscreen_btn {
1197
+ display: inline-flex;
1198
+ align-items: center;
1199
+ justify-content: center;
1200
+ gap: 6px;
1201
+ height: 32px;
1202
+ padding: 4px 15px;
1203
+ border-radius: 6px;
1204
+ border: 1px solid #d9d9d9;
1205
+ background: #ffffff;
1206
+ color: #262626;
1207
+ cursor: pointer;
1208
+ font-size: 14px;
1209
+ line-height: 1.5714;
1210
+ user-select: none;
1211
+ transition: all 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
1212
+ }
1213
+ .rpc_fullscreen_btn:hover {
1214
+ color: #4096ff;
1215
+ border-color: #4096ff;
1216
+ }
1217
+ .rpc_fullscreen_btn_active {
1218
+ color: #1677ff;
1219
+ border-color: #1677ff;
1220
+ background: #e6f4ff;
1221
+ }
1222
+ .rpc_fullscreen_btn_icon_only {
1223
+ padding: 4px;
1224
+ width: 32px;
1225
+ height: 32px;
1226
+ }
1227
+
1228
+ /* ImageCropper/index.less */
1229
+ .rpc_image_cropper {
1230
+ position: relative;
1231
+ box-sizing: border-box;
1232
+ user-select: none;
1233
+ background: #141414;
1234
+ overflow: hidden;
1235
+ border-radius: 8px;
1236
+ display: flex;
1237
+ flex-direction: column;
1238
+ align-items: center;
1239
+ justify-content: center;
1240
+ }
1241
+ .rpc_image_cropper_canvas_wrap {
1242
+ position: relative;
1243
+ width: 100%;
1244
+ height: 360px;
1245
+ display: flex;
1246
+ align-items: center;
1247
+ justify-content: center;
1248
+ cursor: grab;
1249
+ overflow: hidden;
1250
+ }
1251
+ .rpc_image_cropper_canvas_wrap:active {
1252
+ cursor: grabbing;
1253
+ }
1254
+ .rpc_image_cropper_canvas {
1255
+ display: block;
1256
+ max-width: 100%;
1257
+ max-height: 100%;
1258
+ }
1259
+ .rpc_image_cropper_mask {
1260
+ position: absolute;
1261
+ top: 0;
1262
+ left: 0;
1263
+ right: 0;
1264
+ bottom: 0;
1265
+ pointer-events: none;
1266
+ box-sizing: border-box;
1267
+ }
1268
+ .rpc_image_cropper_crop_box {
1269
+ position: absolute;
1270
+ box-sizing: border-box;
1271
+ border: 2px solid #1677ff;
1272
+ box-shadow: 0 0 0 9999px rgba(0, 0, 0, 0.55);
1273
+ pointer-events: none;
1274
+ }
1275
+ .rpc_image_cropper_crop_box_round {
1276
+ border-radius: 50%;
1277
+ }
1278
+ .rpc_image_cropper_crop_box_grid {
1279
+ position: absolute;
1280
+ top: 0;
1281
+ left: 0;
1282
+ right: 0;
1283
+ bottom: 0;
1284
+ }
1285
+ .rpc_image_cropper_crop_box_grid::before,
1286
+ .rpc_image_cropper_crop_box_grid::after {
1287
+ content: "";
1288
+ position: absolute;
1289
+ background: rgba(255, 255, 255, 0.35);
1290
+ }
1291
+ .rpc_image_cropper_crop_box_grid::before {
1292
+ top: 33.33%;
1293
+ left: 0;
1294
+ right: 0;
1295
+ height: 33.33%;
1296
+ border-top: 1px dashed rgba(255, 255, 255, 0.5);
1297
+ border-bottom: 1px dashed rgba(255, 255, 255, 0.5);
1298
+ }
1299
+ .rpc_image_cropper_crop_box_grid::after {
1300
+ left: 33.33%;
1301
+ top: 0;
1302
+ bottom: 0;
1303
+ width: 33.33%;
1304
+ border-left: 1px dashed rgba(255, 255, 255, 0.5);
1305
+ border-right: 1px dashed rgba(255, 255, 255, 0.5);
1306
+ }
1307
+ .rpc_image_cropper_toolbar {
1308
+ display: flex;
1309
+ align-items: center;
1310
+ justify-content: center;
1311
+ gap: 12px;
1312
+ padding: 12px 16px;
1313
+ background: #1f1f1f;
1314
+ width: 100%;
1315
+ box-sizing: border-box;
1316
+ border-top: 1px solid #303030;
1317
+ }
1318
+ .rpc_image_cropper_btn {
1319
+ display: inline-flex;
1320
+ align-items: center;
1321
+ justify-content: center;
1322
+ gap: 6px;
1323
+ height: 32px;
1324
+ padding: 0 12px;
1325
+ border-radius: 6px;
1326
+ background: #2a2a2a;
1327
+ border: 1px solid #434343;
1328
+ color: #ffffff;
1329
+ font-size: 13px;
1330
+ cursor: pointer;
1331
+ transition: all 0.2s;
1332
+ }
1333
+ .rpc_image_cropper_btn:hover {
1334
+ background: #3a3a3a;
1335
+ border-color: #1677ff;
1336
+ color: #1677ff;
1337
+ }
1338
+ .rpc_image_cropper_btn_primary {
1339
+ background: #1677ff;
1340
+ border-color: #1677ff;
1341
+ }
1342
+ .rpc_image_cropper_btn_primary:hover {
1343
+ background: #4096ff;
1344
+ border-color: #4096ff;
1345
+ color: #ffffff;
1346
+ }
1347
+ .rpc_cropper_modal {
1348
+ position: fixed;
1349
+ top: 0;
1350
+ left: 0;
1351
+ right: 0;
1352
+ bottom: 0;
1353
+ background: rgba(0, 0, 0, 0.65);
1354
+ display: flex;
1355
+ align-items: center;
1356
+ justify-content: center;
1357
+ z-index: 2100;
1358
+ padding: 20px;
1359
+ box-sizing: border-box;
1360
+ animation: rpcCropperFadeIn 0.2s ease-out;
1361
+ }
1362
+ .rpc_cropper_modal_card {
1363
+ background: #ffffff;
1364
+ border-radius: 12px;
1365
+ box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
1366
+ width: 100%;
1367
+ max-width: 580px;
1368
+ overflow: hidden;
1369
+ display: flex;
1370
+ flex-direction: column;
1371
+ }
1372
+ .rpc_cropper_modal_header {
1373
+ display: flex;
1374
+ align-items: center;
1375
+ justify-content: space-between;
1376
+ padding: 16px 20px;
1377
+ border-bottom: 1px solid #f0f0f0;
1378
+ font-size: 16px;
1379
+ font-weight: 600;
1380
+ color: #1f1f1f;
1381
+ }
1382
+ .rpc_cropper_modal_close {
1383
+ cursor: pointer;
1384
+ color: #8c8c8c;
1385
+ font-size: 16px;
1386
+ }
1387
+ .rpc_cropper_modal_close:hover {
1388
+ color: #262626;
1389
+ }
1390
+ .rpc_cropper_modal_footer {
1391
+ display: flex;
1392
+ justify-content: flex-end;
1393
+ gap: 12px;
1394
+ padding: 14px 20px;
1395
+ border-top: 1px solid #f0f0f0;
1396
+ background: #fafafa;
1397
+ }
1398
+ @keyframes rpcCropperFadeIn {
1399
+ from {
1400
+ opacity: 0;
1401
+ transform: scale(0.96);
1402
+ }
1403
+ to {
1404
+ opacity: 1;
1405
+ transform: scale(1);
1406
+ }
1407
+ }
1408
+
1409
+ /* ScrollTracker/index.less */
1410
+ .rpc_scroll_tracker {
1411
+ position: fixed;
1412
+ left: 0;
1413
+ right: 0;
1414
+ z-index: 1060;
1415
+ pointer-events: none;
1416
+ height: 3px;
1417
+ background: transparent;
1418
+ }
1419
+ .rpc_scroll_tracker_top {
1420
+ top: 0;
1421
+ }
1422
+ .rpc_scroll_tracker_bottom {
1423
+ bottom: 0;
1424
+ }
1425
+ .rpc_scroll_tracker_bar {
1426
+ height: 100%;
1427
+ background: #1677ff;
1428
+ transition: width 0.08s ease-out;
1429
+ box-shadow: 0 0 8px rgba(22, 119, 255, 0.5);
1430
+ }
1431
+ .rpc_scroll_tracker_percentage {
1432
+ position: absolute;
1433
+ right: 12px;
1434
+ top: 8px;
1435
+ background: rgba(0, 0, 0, 0.75);
1436
+ color: #ffffff;
1437
+ font-size: 11px;
1438
+ font-family: monospace;
1439
+ padding: 2px 6px;
1440
+ border-radius: 4px;
1441
+ pointer-events: auto;
1442
+ }
1443
+ .rpc_sticky_header {
1444
+ position: sticky;
1445
+ z-index: 1000;
1446
+ box-sizing: border-box;
1447
+ transition: all 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
1448
+ }
1449
+ .rpc_sticky_header_stuck {
1450
+ background: rgba(255, 255, 255, 0.88) !important;
1451
+ backdrop-filter: blur(12px) !important;
1452
+ -webkit-backdrop-filter: blur(12px) !important;
1453
+ box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
1454
+ border-bottom: 1px solid rgba(0, 0, 0, 0.06);
1455
+ }
1456
+
1457
+ /* FilePreviewer/index.less */
1458
+ .rpc_file_previewer_modal {
1459
+ position: fixed;
1460
+ top: 0;
1461
+ left: 0;
1462
+ right: 0;
1463
+ bottom: 0;
1464
+ background: rgba(0, 0, 0, 0.72);
1465
+ backdrop-filter: blur(8px);
1466
+ display: flex;
1467
+ align-items: center;
1468
+ justify-content: center;
1469
+ z-index: 2200;
1470
+ padding: 24px;
1471
+ box-sizing: border-box;
1472
+ animation: rpcPreviewerFadeIn 0.2s ease-out;
1473
+ }
1474
+ .rpc_file_previewer_modal_card {
1475
+ background: #ffffff;
1476
+ border-radius: 12px;
1477
+ box-shadow: 0 12px 48px rgba(0, 0, 0, 0.25);
1478
+ width: 100%;
1479
+ max-width: 840px;
1480
+ height: 80vh;
1481
+ max-height: 640px;
1482
+ display: flex;
1483
+ flex-direction: column;
1484
+ overflow: hidden;
1485
+ box-sizing: border-box;
1486
+ }
1487
+ .rpc_file_previewer_modal_header {
1488
+ display: flex;
1489
+ align-items: center;
1490
+ justify-content: space-between;
1491
+ padding: 14px 20px;
1492
+ border-bottom: 1px solid #f0f0f0;
1493
+ background: #ffffff;
1494
+ z-index: 10;
1495
+ }
1496
+ .rpc_file_previewer_modal_title {
1497
+ display: flex;
1498
+ align-items: center;
1499
+ gap: 8px;
1500
+ font-size: 15px;
1501
+ font-weight: 600;
1502
+ color: #1f1f1f;
1503
+ overflow: hidden;
1504
+ text-overflow: ellipsis;
1505
+ white-space: nowrap;
1506
+ max-width: 70%;
1507
+ }
1508
+ .rpc_file_previewer_modal_actions {
1509
+ display: flex;
1510
+ align-items: center;
1511
+ gap: 12px;
1512
+ }
1513
+ .rpc_file_previewer_modal_action_btn {
1514
+ display: inline-flex;
1515
+ align-items: center;
1516
+ justify-content: center;
1517
+ width: 32px;
1518
+ height: 32px;
1519
+ border-radius: 6px;
1520
+ border: 1px solid #e8e8e8;
1521
+ background: #ffffff;
1522
+ color: #595959;
1523
+ cursor: pointer;
1524
+ font-size: 14px;
1525
+ transition: all 0.2s;
1526
+ }
1527
+ .rpc_file_previewer_modal_action_btn:hover {
1528
+ color: #1677ff;
1529
+ border-color: #1677ff;
1530
+ background: #f0f5ff;
1531
+ }
1532
+ .rpc_file_previewer_modal_body {
1533
+ flex: 1;
1534
+ background: #0f0f0f;
1535
+ display: flex;
1536
+ align-items: center;
1537
+ justify-content: center;
1538
+ overflow: hidden;
1539
+ position: relative;
1540
+ }
1541
+ .rpc_file_previewer_modal_image {
1542
+ max-width: 100%;
1543
+ max-height: 100%;
1544
+ object-fit: contain;
1545
+ user-select: none;
1546
+ transition: transform 0.2s ease-out;
1547
+ }
1548
+ .rpc_file_previewer_modal_media {
1549
+ max-width: 100%;
1550
+ max-height: 100%;
1551
+ outline: none;
1552
+ }
1553
+ .rpc_file_previewer_modal_audio_wrap {
1554
+ background: #1f1f1f;
1555
+ padding: 32px 48px;
1556
+ border-radius: 12px;
1557
+ display: flex;
1558
+ flex-direction: column;
1559
+ align-items: center;
1560
+ gap: 16px;
1561
+ color: #ffffff;
1562
+ box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
1563
+ }
1564
+ .rpc_file_previewer_modal_iframe {
1565
+ width: 100%;
1566
+ height: 100%;
1567
+ border: none;
1568
+ background: #ffffff;
1569
+ }
1570
+ .rpc_file_previewer_modal_text_wrap {
1571
+ width: 100%;
1572
+ height: 100%;
1573
+ background: #1e1e1e;
1574
+ color: #d4d4d4;
1575
+ padding: 20px;
1576
+ box-sizing: border-box;
1577
+ overflow: auto;
1578
+ font-family: monospace;
1579
+ font-size: 13px;
1580
+ line-height: 1.6;
1581
+ white-space: pre-wrap;
1582
+ }
1583
+ .rpc_file_previewer_modal_fallback_card {
1584
+ background: #ffffff;
1585
+ padding: 40px;
1586
+ border-radius: 12px;
1587
+ text-align: center;
1588
+ display: flex;
1589
+ flex-direction: column;
1590
+ align-items: center;
1591
+ gap: 16px;
1592
+ max-width: 400px;
1593
+ box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
1594
+ }
1595
+ @keyframes rpcPreviewerFadeIn {
1596
+ from {
1597
+ opacity: 0;
1598
+ transform: scale(0.96);
1599
+ }
1600
+ to {
1601
+ opacity: 1;
1602
+ transform: scale(1);
1603
+ }
1604
+ }
1605
+
1606
+ /* FloatingActionBar/index.less */
1607
+ .rpc_floating_action_bar {
1608
+ position: fixed;
1609
+ left: 50%;
1610
+ transform: translateX(-50%) translateY(20px);
1611
+ z-index: 1050;
1612
+ display: inline-flex;
1613
+ align-items: center;
1614
+ gap: 16px;
1615
+ padding: 10px 20px;
1616
+ background: rgba(255, 255, 255, 0.92);
1617
+ backdrop-filter: blur(16px);
1618
+ -webkit-backdrop-filter: blur(16px);
1619
+ border: 1px solid rgba(0, 0, 0, 0.08);
1620
+ border-radius: 32px;
1621
+ box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12), 0 4px 12px rgba(0, 0, 0, 0.06);
1622
+ box-sizing: border-box;
1623
+ user-select: none;
1624
+ opacity: 0;
1625
+ pointer-events: none;
1626
+ transition: all 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
1627
+ }
1628
+ .rpc_floating_action_bar_visible {
1629
+ opacity: 1;
1630
+ pointer-events: auto;
1631
+ transform: translateX(-50%) translateY(0);
1632
+ }
1633
+ .rpc_floating_action_bar_count_badge {
1634
+ display: inline-flex;
1635
+ align-items: center;
1636
+ gap: 6px;
1637
+ font-size: 14px;
1638
+ color: #262626;
1639
+ font-weight: 500;
1640
+ }
1641
+ .rpc_floating_action_bar_count_number {
1642
+ color: #1677ff;
1643
+ font-weight: 700;
1644
+ font-variant-numeric: tabular-nums;
1645
+ }
1646
+ .rpc_floating_action_bar_divider {
1647
+ width: 1px;
1648
+ height: 18px;
1649
+ background: #e8e8e8;
1650
+ }
1651
+ .rpc_floating_action_bar_actions {
1652
+ display: inline-flex;
1653
+ align-items: center;
1654
+ gap: 10px;
1655
+ }
1656
+ .rpc_floating_action_bar_btn {
1657
+ display: inline-flex;
1658
+ align-items: center;
1659
+ justify-content: center;
1660
+ gap: 6px;
1661
+ height: 32px;
1662
+ padding: 4px 14px;
1663
+ border-radius: 16px;
1664
+ border: 1px solid #d9d9d9;
1665
+ background: #ffffff;
1666
+ color: #262626;
1667
+ font-size: 13px;
1668
+ cursor: pointer;
1669
+ transition: all 0.2s;
1670
+ }
1671
+ .rpc_floating_action_bar_btn:hover {
1672
+ border-color: #1677ff;
1673
+ color: #1677ff;
1674
+ }
1675
+ .rpc_floating_action_bar_btn_primary {
1676
+ background: #1677ff;
1677
+ border-color: #1677ff;
1678
+ color: #ffffff;
1679
+ }
1680
+ .rpc_floating_action_bar_btn_primary:hover {
1681
+ background: #4096ff;
1682
+ border-color: #4096ff;
1683
+ color: #ffffff;
1684
+ }
1685
+ .rpc_floating_action_bar_btn_danger {
1686
+ color: #ff4d4f;
1687
+ border-color: #ffa39e;
1688
+ background: #fff1f0;
1689
+ }
1690
+ .rpc_floating_action_bar_btn_danger:hover {
1691
+ background: #ff4d4f;
1692
+ border-color: #ff4d4f;
1693
+ color: #ffffff;
1694
+ }
1695
+ .rpc_floating_action_bar_clear_btn {
1696
+ color: #8c8c8c;
1697
+ font-size: 13px;
1698
+ cursor: pointer;
1699
+ transition: color 0.2s;
1700
+ }
1701
+ .rpc_floating_action_bar_clear_btn:hover {
1702
+ color: #1677ff;
1703
+ text-decoration: underline;
1704
+ }
1705
+
1706
+ /* TagInput/index.less */
1707
+ .rpc_tag_input {
1708
+ position: relative;
1709
+ box-sizing: border-box;
1710
+ display: inline-flex;
1711
+ flex-wrap: wrap;
1712
+ align-items: center;
1713
+ gap: 6px;
1714
+ min-height: 34px;
1715
+ padding: 4px 8px;
1716
+ background: #ffffff;
1717
+ border: 1px solid #d9d9d9;
1718
+ border-radius: 6px;
1719
+ font-size: 14px;
1720
+ line-height: 1.5;
1721
+ color: #262626;
1722
+ cursor: text;
1723
+ transition: all 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
1724
+ width: 100%;
1725
+ }
1726
+ .rpc_tag_input:hover:not(.rpc_tag_input_disabled) {
1727
+ border-color: #4096ff;
1728
+ }
1729
+ .rpc_tag_input_focused {
1730
+ border-color: #1677ff;
1731
+ box-shadow: 0 0 0 2px rgba(22, 119, 255, 0.15);
1732
+ }
1733
+ .rpc_tag_input_disabled {
1734
+ background: #f5f5f5;
1735
+ cursor: not-allowed;
1736
+ border-color: #d9d9d9;
1737
+ color: rgba(0, 0, 0, 0.25);
1738
+ }
1739
+ .rpc_tag_input_error {
1740
+ border-color: #ff4d4f !important;
1741
+ }
1742
+ .rpc_tag_input_error:focus-within,
1743
+ .rpc_tag_input_error_focused {
1744
+ box-shadow: 0 0 0 2px rgba(255, 77, 79, 0.15) !important;
1745
+ }
1746
+ .rpc_tag_input_tag {
1747
+ display: inline-flex;
1748
+ align-items: center;
1749
+ gap: 4px;
1750
+ padding: 2px 8px;
1751
+ background: #f5f5f5;
1752
+ border: 1px solid #e8e8e8;
1753
+ border-radius: 4px;
1754
+ font-size: 12px;
1755
+ line-height: 1.4;
1756
+ color: #262626;
1757
+ user-select: none;
1758
+ transition: all 0.15s;
1759
+ }
1760
+ .rpc_tag_input_tag:hover {
1761
+ background: #e6f4ff;
1762
+ border-color: #91caff;
1763
+ color: #0958d9;
1764
+ }
1765
+ .rpc_tag_input_tag_close {
1766
+ font-size: 10px;
1767
+ color: #8c8c8c;
1768
+ cursor: pointer;
1769
+ display: inline-flex;
1770
+ align-items: center;
1771
+ transition: color 0.15s;
1772
+ }
1773
+ .rpc_tag_input_tag_close:hover {
1774
+ color: #ff4d4f;
1775
+ }
1776
+ .rpc_tag_input_input {
1777
+ flex: 1;
1778
+ min-width: 80px;
1779
+ border: none;
1780
+ outline: none;
1781
+ background: transparent;
1782
+ font-size: 13px;
1783
+ color: inherit;
1784
+ padding: 2px 4px;
1785
+ margin: 0;
1786
+ }
1787
+ .rpc_tag_input_input::placeholder {
1788
+ color: #bfbfbf;
1789
+ }
1790
+ .rpc_tag_input_input:disabled {
1791
+ cursor: not-allowed;
1792
+ }
1793
+ .rpc_tag_input_error_tip {
1794
+ position: absolute;
1795
+ top: calc(100% + 4px);
1796
+ left: 0;
1797
+ color: #ff4d4f;
1798
+ font-size: 12px;
1799
+ line-height: 1.4;
1800
+ white-space: nowrap;
1801
+ animation: rpcTagFadeIn 0.15s ease-out;
1802
+ }
1803
+ @keyframes rpcTagFadeIn {
1804
+ from {
1805
+ opacity: 0;
1806
+ transform: translateY(-3px);
1807
+ }
1808
+ to {
1809
+ opacity: 1;
1810
+ transform: translateY(0);
1811
+ }
1812
+ }
1813
+
1814
+ /* PasswordStrength/index.less */
1815
+ .rpc_password_strength {
1816
+ display: flex;
1817
+ flex-direction: column;
1818
+ gap: 8px;
1819
+ box-sizing: border-box;
1820
+ font-size: 13px;
1821
+ color: #262626;
1822
+ }
1823
+ .rpc_password_strength_bars {
1824
+ display: flex;
1825
+ gap: 6px;
1826
+ width: 100%;
1827
+ height: 5px;
1828
+ }
1829
+ .rpc_password_strength_bar_segment {
1830
+ flex: 1;
1831
+ height: 100%;
1832
+ background: #f0f0f0;
1833
+ border-radius: 3px;
1834
+ transition: background 0.3s ease;
1835
+ }
1836
+ .rpc_password_strength_bar_segment_active_weak {
1837
+ background: #ff4d4f;
1838
+ }
1839
+ .rpc_password_strength_bar_segment_active_medium {
1840
+ background: #fa8c16;
1841
+ }
1842
+ .rpc_password_strength_bar_segment_active_good {
1843
+ background: #1677ff;
1844
+ }
1845
+ .rpc_password_strength_bar_segment_active_strong {
1846
+ background: #52c41a;
1847
+ }
1848
+ .rpc_password_strength_label {
1849
+ display: flex;
1850
+ justify-content: space-between;
1851
+ align-items: center;
1852
+ font-size: 12px;
1853
+ color: #8c8c8c;
1854
+ }
1855
+ .rpc_password_strength_level_text {
1856
+ font-weight: 600;
1857
+ }
1858
+ .rpc_password_strength_rules {
1859
+ display: grid;
1860
+ grid-template-columns: 1fr 1fr;
1861
+ gap: 6px;
1862
+ padding: 10px 12px;
1863
+ background: #fafafa;
1864
+ border: 1px solid #f0f0f0;
1865
+ border-radius: 6px;
1866
+ font-size: 12px;
1867
+ }
1868
+ .rpc_password_strength_rule_item {
1869
+ display: flex;
1870
+ align-items: center;
1871
+ gap: 6px;
1872
+ color: #8c8c8c;
1873
+ transition: color 0.2s;
1874
+ }
1875
+ .rpc_password_strength_rule_item_passed {
1876
+ color: #52c41a;
1877
+ font-weight: 500;
1878
+ }
1879
+
1880
+ /* JsonEditor/index.less */
1881
+ .rpc_json_editor {
1882
+ position: relative;
1883
+ box-sizing: border-box;
1884
+ display: flex;
1885
+ flex-direction: column;
1886
+ background: #1e1e1e;
1887
+ color: #d4d4d4;
1888
+ border-radius: 8px;
1889
+ border: 1px solid #333333;
1890
+ font-family:
1891
+ "Fira Code",
1892
+ Consolas,
1893
+ Monaco,
1894
+ "Courier New",
1895
+ monospace;
1896
+ font-size: 13px;
1897
+ line-height: 1.6;
1898
+ overflow: hidden;
1899
+ }
1900
+ .rpc_json_editor_toolbar {
1901
+ display: flex;
1902
+ align-items: center;
1903
+ justify-content: space-between;
1904
+ padding: 8px 14px;
1905
+ background: #252526;
1906
+ border-bottom: 1px solid #333333;
1907
+ user-select: none;
1908
+ }
1909
+ .rpc_json_editor_title {
1910
+ font-size: 12px;
1911
+ color: #9cdcfe;
1912
+ font-weight: 500;
1913
+ display: flex;
1914
+ align-items: center;
1915
+ gap: 6px;
1916
+ }
1917
+ .rpc_json_editor_actions {
1918
+ display: flex;
1919
+ align-items: center;
1920
+ gap: 8px;
1921
+ }
1922
+ .rpc_json_editor_btn {
1923
+ padding: 3px 10px;
1924
+ border-radius: 4px;
1925
+ background: #333333;
1926
+ border: 1px solid #444444;
1927
+ color: #cccccc;
1928
+ font-size: 12px;
1929
+ cursor: pointer;
1930
+ transition: all 0.15s;
1931
+ }
1932
+ .rpc_json_editor_btn:hover {
1933
+ background: #444444;
1934
+ color: #ffffff;
1935
+ border-color: #1677ff;
1936
+ }
1937
+ .rpc_json_editor_body {
1938
+ position: relative;
1939
+ display: flex;
1940
+ flex: 1;
1941
+ min-height: 180px;
1942
+ overflow: hidden;
1943
+ }
1944
+ .rpc_json_editor_line_numbers {
1945
+ padding: 12px 10px;
1946
+ background: #1e1e1e;
1947
+ color: #858585;
1948
+ text-align: right;
1949
+ user-select: none;
1950
+ border-right: 1px solid #2d2d2d;
1951
+ font-size: 12px;
1952
+ min-width: 32px;
1953
+ box-sizing: border-box;
1954
+ }
1955
+ .rpc_json_editor_textarea {
1956
+ flex: 1;
1957
+ padding: 12px 14px;
1958
+ background: transparent;
1959
+ color: #d4d4d4;
1960
+ border: none;
1961
+ outline: none;
1962
+ resize: none;
1963
+ font-family: inherit;
1964
+ font-size: inherit;
1965
+ line-height: inherit;
1966
+ tab-size: 2;
1967
+ white-space: pre;
1968
+ overflow: auto;
1969
+ box-sizing: border-box;
1970
+ }
1971
+ .rpc_json_editor_textarea::selection {
1972
+ background: #264f78;
1973
+ }
1974
+ .rpc_json_editor_status_bar {
1975
+ display: flex;
1976
+ align-items: center;
1977
+ justify-content: space-between;
1978
+ padding: 4px 14px;
1979
+ background: #007acc;
1980
+ color: #ffffff;
1981
+ font-size: 11px;
1982
+ line-height: 1.4;
1983
+ }
1984
+ .rpc_json_editor_status_bar_error {
1985
+ background: #d32f2f;
1986
+ }
1987
+
1988
+ /* InfiniteScrollList/index.less */
1989
+ .rpc_infinite_scroll_list {
1990
+ position: relative;
1991
+ box-sizing: border-box;
1992
+ }
1993
+ .rpc_infinite_scroll_list_container {
1994
+ overflow-y: auto;
1995
+ -webkit-overflow-scrolling: touch;
1996
+ }
1997
+ .rpc_infinite_scroll_list_footer {
1998
+ padding: 16px 0;
1999
+ text-align: center;
2000
+ color: #8c8c8c;
2001
+ font-size: 13px;
2002
+ display: flex;
2003
+ align-items: center;
2004
+ justify-content: center;
2005
+ gap: 8px;
2006
+ }
2007
+ .rpc_infinite_scroll_list_end {
2008
+ color: #bfbfbf;
2009
+ font-size: 12px;
2010
+ display: flex;
2011
+ align-items: center;
2012
+ justify-content: center;
2013
+ gap: 12px;
2014
+ }
2015
+ .rpc_infinite_scroll_list_end::before,
2016
+ .rpc_infinite_scroll_list_end::after {
2017
+ content: "";
2018
+ width: 48px;
2019
+ height: 1px;
2020
+ background: #f0f0f0;
2021
+ }
2022
+
2023
+ /* Marquee/index.less */
2024
+ .rpc_marquee {
2025
+ position: relative;
2026
+ display: flex;
2027
+ overflow: hidden;
2028
+ user-select: none;
2029
+ width: 100%;
2030
+ box-sizing: border-box;
2031
+ }
2032
+ .rpc_marquee_container {
2033
+ display: flex;
2034
+ flex-direction: row;
2035
+ width: max-content;
2036
+ will-change: transform;
2037
+ }
2038
+ .rpc_marquee_vertical {
2039
+ flex-direction: column;
2040
+ height: 100%;
2041
+ }
2042
+ .rpc_marquee_vertical .rpc_marquee_container {
2043
+ flex-direction: column;
2044
+ height: max-content;
2045
+ width: 100%;
2046
+ }
2047
+ .rpc_marquee_content {
2048
+ display: flex;
2049
+ flex-shrink: 0;
2050
+ align-items: center;
2051
+ justify-content: space-around;
2052
+ gap: var(--rpc-marquee-gap, 24px);
2053
+ min-width: 100%;
2054
+ }
2055
+ .rpc_marquee_vertical .rpc_marquee_content {
2056
+ flex-direction: column;
2057
+ min-height: 100%;
2058
+ min-width: unset;
2059
+ }
2060
+ .rpc_marquee_pause_on_hover:hover .rpc_marquee_container {
2061
+ animation-play-state: paused !important;
2062
+ }
2063
+ .rpc_marquee_gradient::before,
2064
+ .rpc_marquee_gradient::after {
2065
+ content: "";
2066
+ position: absolute;
2067
+ top: 0;
2068
+ bottom: 0;
2069
+ width: 48px;
2070
+ z-index: 2;
2071
+ pointer-events: none;
2072
+ }
2073
+ .rpc_marquee_gradient::before {
2074
+ left: 0;
2075
+ background:
2076
+ linear-gradient(
2077
+ to right,
2078
+ var(--rpc-marquee-gradient-color, #ffffff),
2079
+ transparent);
2080
+ }
2081
+ .rpc_marquee_gradient::after {
2082
+ right: 0;
2083
+ background:
2084
+ linear-gradient(
2085
+ to left,
2086
+ var(--rpc-marquee-gradient-color, #ffffff),
2087
+ transparent);
2088
+ }
2089
+ @keyframes rpcMarqueeLeft {
2090
+ 0% {
2091
+ transform: translateX(0%);
2092
+ }
2093
+ 100% {
2094
+ transform: translateX(-50%);
2095
+ }
2096
+ }
2097
+ @keyframes rpcMarqueeRight {
2098
+ 0% {
2099
+ transform: translateX(-50%);
2100
+ }
2101
+ 100% {
2102
+ transform: translateX(0%);
2103
+ }
2104
+ }
2105
+ @keyframes rpcMarqueeUp {
2106
+ 0% {
2107
+ transform: translateY(0%);
2108
+ }
2109
+ 100% {
2110
+ transform: translateY(-50%);
2111
+ }
2112
+ }
2113
+ @keyframes rpcMarqueeDown {
2114
+ 0% {
2115
+ transform: translateY(-50%);
2116
+ }
2117
+ 100% {
2118
+ transform: translateY(0%);
2119
+ }
2120
+ }
2121
+
2122
+ /* SpotlightCard/index.less */
2123
+ .rpc_spotlight_card {
2124
+ position: relative;
2125
+ box-sizing: border-box;
2126
+ border-radius: 12px;
2127
+ background: #ffffff;
2128
+ border: 1px solid #f0f0f0;
2129
+ overflow: hidden;
2130
+ transition: border-color 0.2s, box-shadow 0.2s;
2131
+ }
2132
+ .rpc_spotlight_card_spotlight {
2133
+ position: absolute;
2134
+ top: 0;
2135
+ left: 0;
2136
+ right: 0;
2137
+ bottom: 0;
2138
+ pointer-events: none;
2139
+ opacity: 0;
2140
+ transition: opacity 0.3s ease;
2141
+ z-index: 1;
2142
+ }
2143
+ .rpc_spotlight_card:hover .rpc_spotlight_card_spotlight {
2144
+ opacity: 1;
2145
+ }
2146
+ .rpc_spotlight_card_content {
2147
+ position: relative;
2148
+ z-index: 2;
2149
+ }
2150
+ .rpc_spotlight_card_dark {
2151
+ background: #18181b;
2152
+ border-color: #27272a;
2153
+ color: #ffffff;
2154
+ }
2155
+
2156
+ /* SensitiveMask/index.less */
2157
+ .rpc_sensitive_mask {
2158
+ display: inline-flex;
2159
+ align-items: center;
2160
+ gap: 6px;
2161
+ box-sizing: border-box;
2162
+ font-family: inherit;
2163
+ font-size: 14px;
2164
+ color: inherit;
2165
+ vertical-align: middle;
2166
+ }
2167
+ .rpc_sensitive_mask_text {
2168
+ font-variant-numeric: tabular-nums;
2169
+ font-family: monospace, inherit;
2170
+ }
2171
+ .rpc_sensitive_mask_action_btn {
2172
+ display: inline-flex;
2173
+ align-items: center;
2174
+ color: #8c8c8c;
2175
+ cursor: pointer;
2176
+ font-size: 14px;
2177
+ transition: color 0.15s;
2178
+ }
2179
+ .rpc_sensitive_mask_action_btn:hover {
2180
+ color: #1677ff;
2181
+ }
2182
+
2183
+ /* DiffViewer/index.less */
2184
+ .rpc_diff_viewer {
2185
+ position: relative;
2186
+ box-sizing: border-box;
2187
+ border-radius: 8px;
2188
+ border: 1px solid #d9d9d9;
2189
+ background: #ffffff;
2190
+ font-family:
2191
+ "Fira Code",
2192
+ Consolas,
2193
+ Monaco,
2194
+ "Courier New",
2195
+ monospace;
2196
+ font-size: 12px;
2197
+ line-height: 1.6;
2198
+ overflow: hidden;
2199
+ }
2200
+ .rpc_diff_viewer_header {
2201
+ display: flex;
2202
+ align-items: center;
2203
+ justify-content: space-between;
2204
+ padding: 8px 16px;
2205
+ background: #f5f5f5;
2206
+ border-bottom: 1px solid #e8e8e8;
2207
+ font-family: sans-serif;
2208
+ }
2209
+ .rpc_diff_viewer_title {
2210
+ font-weight: 600;
2211
+ color: #1f1f1f;
2212
+ font-size: 13px;
2213
+ }
2214
+ .rpc_diff_viewer_mode_toggle {
2215
+ display: inline-flex;
2216
+ border: 1px solid #d9d9d9;
2217
+ border-radius: 4px;
2218
+ overflow: hidden;
2219
+ background: #ffffff;
2220
+ }
2221
+ .rpc_diff_viewer_mode_btn {
2222
+ padding: 2px 10px;
2223
+ border: none;
2224
+ background: transparent;
2225
+ font-size: 12px;
2226
+ cursor: pointer;
2227
+ color: #595959;
2228
+ }
2229
+ .rpc_diff_viewer_mode_btn_active {
2230
+ background: #1677ff;
2231
+ color: #ffffff;
2232
+ }
2233
+ .rpc_diff_viewer_table {
2234
+ width: 100%;
2235
+ border-collapse: collapse;
2236
+ table-layout: fixed;
2237
+ }
2238
+ .rpc_diff_viewer_row:hover {
2239
+ background: rgba(0, 0, 0, 0.02);
2240
+ }
2241
+ .rpc_diff_viewer_row_added {
2242
+ background: #e6ffed !important;
2243
+ color: #135200;
2244
+ }
2245
+ .rpc_diff_viewer_row_removed {
2246
+ background: #ffeef0 !important;
2247
+ color: #a8071a;
2248
+ }
2249
+ .rpc_diff_viewer_row_empty {
2250
+ background: #f9f9f9;
2251
+ }
2252
+ .rpc_diff_viewer_gutter {
2253
+ width: 40px;
2254
+ padding: 0 8px;
2255
+ text-align: right;
2256
+ user-select: none;
2257
+ color: #8c8c8c;
2258
+ border-right: 1px solid #f0f0f0;
2259
+ font-size: 11px;
2260
+ }
2261
+ .rpc_diff_viewer_marker {
2262
+ width: 20px;
2263
+ text-align: center;
2264
+ user-select: none;
2265
+ font-weight: 600;
2266
+ }
2267
+ .rpc_diff_viewer_code {
2268
+ padding: 0 10px;
2269
+ white-space: pre-wrap;
2270
+ word-break: break-all;
2271
+ }
2272
+
2273
+ /* CronPicker/index.less */
2274
+ .rpc_cron_picker {
2275
+ box-sizing: border-box;
2276
+ background: #ffffff;
2277
+ border: 1px solid #d9d9d9;
2278
+ border-radius: 8px;
2279
+ padding: 16px;
2280
+ font-size: 14px;
2281
+ color: #262626;
2282
+ }
2283
+ .rpc_cron_picker_tabs {
2284
+ display: flex;
2285
+ gap: 6px;
2286
+ margin-bottom: 16px;
2287
+ border-bottom: 1px solid #f0f0f0;
2288
+ padding-bottom: 8px;
2289
+ flex-wrap: wrap;
2290
+ }
2291
+ .rpc_cron_picker_tab_btn {
2292
+ padding: 4px 12px;
2293
+ border-radius: 4px;
2294
+ border: 1px solid transparent;
2295
+ background: transparent;
2296
+ color: #595959;
2297
+ cursor: pointer;
2298
+ font-size: 13px;
2299
+ transition: all 0.15s;
2300
+ }
2301
+ .rpc_cron_picker_tab_btn:hover {
2302
+ color: #1677ff;
2303
+ }
2304
+ .rpc_cron_picker_tab_btn_active {
2305
+ background: #e6f4ff;
2306
+ color: #1677ff;
2307
+ font-weight: 600;
2308
+ border-color: #91caff;
2309
+ }
2310
+ .rpc_cron_picker_panel {
2311
+ display: flex;
2312
+ flex-direction: column;
2313
+ gap: 12px;
2314
+ min-height: 80px;
2315
+ }
2316
+ .rpc_cron_picker_field_row {
2317
+ display: flex;
2318
+ align-items: center;
2319
+ gap: 10px;
2320
+ flex-wrap: wrap;
2321
+ }
2322
+ .rpc_cron_picker_select,
2323
+ .rpc_cron_picker_input {
2324
+ padding: 5px 10px;
2325
+ border: 1px solid #d9d9d9;
2326
+ border-radius: 6px;
2327
+ font-size: 13px;
2328
+ outline: none;
2329
+ background: #ffffff;
2330
+ }
2331
+ .rpc_cron_picker_select:focus,
2332
+ .rpc_cron_picker_input:focus {
2333
+ border-color: #1677ff;
2334
+ }
2335
+ .rpc_cron_picker_footer {
2336
+ margin-top: 16px;
2337
+ padding-top: 14px;
2338
+ border-top: 1px dashed #e8e8e8;
2339
+ display: flex;
2340
+ flex-direction: column;
2341
+ gap: 8px;
2342
+ }
2343
+ .rpc_cron_picker_cron_badge {
2344
+ display: inline-flex;
2345
+ align-items: center;
2346
+ gap: 8px;
2347
+ }
2348
+ .rpc_cron_picker_cron_code {
2349
+ font-family: monospace;
2350
+ font-size: 14px;
2351
+ font-weight: 600;
2352
+ color: #1677ff;
2353
+ background: #f0f5ff;
2354
+ padding: 2px 8px;
2355
+ border-radius: 4px;
2356
+ border: 1px solid #adc6ff;
2357
+ }
2358
+ .rpc_cron_picker_human_desc {
2359
+ font-size: 13px;
2360
+ color: #52c41a;
2361
+ display: flex;
2362
+ align-items: center;
2363
+ gap: 6px;
2364
+ }
2365
+
2366
+ /* GuidedTour/index.less */
2367
+ .rpc_guided_tour {
2368
+ position: fixed;
2369
+ top: 0;
2370
+ left: 0;
2371
+ right: 0;
2372
+ bottom: 0;
2373
+ z-index: 2500;
2374
+ pointer-events: auto;
2375
+ box-sizing: border-box;
2376
+ }
2377
+ .rpc_guided_tour_mask {
2378
+ position: absolute;
2379
+ top: 0;
2380
+ left: 0;
2381
+ right: 0;
2382
+ bottom: 0;
2383
+ pointer-events: none;
2384
+ }
2385
+ .rpc_guided_tour_highlight_box {
2386
+ position: absolute;
2387
+ border-radius: 6px;
2388
+ box-shadow: 0 0 0 9999px rgba(0, 0, 0, 0.65);
2389
+ transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
2390
+ pointer-events: none;
2391
+ border: 2px solid #1677ff;
2392
+ }
2393
+ .rpc_guided_tour_popover {
2394
+ position: absolute;
2395
+ width: 320px;
2396
+ background: #ffffff;
2397
+ border-radius: 10px;
2398
+ box-shadow: 0 10px 32px rgba(0, 0, 0, 0.2);
2399
+ padding: 18px 20px;
2400
+ z-index: 2510;
2401
+ box-sizing: border-box;
2402
+ transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
2403
+ animation: rpcTourFadeIn 0.2s ease-out;
2404
+ font-family: inherit;
2405
+ }
2406
+ .rpc_guided_tour_header {
2407
+ display: flex;
2408
+ align-items: center;
2409
+ justify-content: space-between;
2410
+ margin-bottom: 8px;
2411
+ }
2412
+ .rpc_guided_tour_title {
2413
+ font-size: 15px;
2414
+ font-weight: 600;
2415
+ color: #1f1f1f;
2416
+ }
2417
+ .rpc_guided_tour_description {
2418
+ font-size: 13px;
2419
+ line-height: 1.6;
2420
+ color: #595959;
2421
+ margin-bottom: 16px;
2422
+ }
2423
+ .rpc_guided_tour_footer {
2424
+ display: flex;
2425
+ align-items: center;
2426
+ justify-content: space-between;
2427
+ }
2428
+ .rpc_guided_tour_progress {
2429
+ font-size: 12px;
2430
+ color: #8c8c8c;
2431
+ }
2432
+ .rpc_guided_tour_actions {
2433
+ display: flex;
2434
+ gap: 8px;
2435
+ }
2436
+ .rpc_guided_tour_btn {
2437
+ padding: 4px 12px;
2438
+ border-radius: 6px;
2439
+ font-size: 12px;
2440
+ cursor: pointer;
2441
+ border: 1px solid #d9d9d9;
2442
+ background: #ffffff;
2443
+ color: #595959;
2444
+ transition: all 0.15s;
2445
+ }
2446
+ .rpc_guided_tour_btn:hover {
2447
+ border-color: #1677ff;
2448
+ color: #1677ff;
2449
+ }
2450
+ .rpc_guided_tour_btn_primary {
2451
+ background: #1677ff;
2452
+ border-color: #1677ff;
2453
+ color: #ffffff;
2454
+ }
2455
+ .rpc_guided_tour_btn_primary:hover {
2456
+ background: #4096ff;
2457
+ border-color: #4096ff;
2458
+ color: #ffffff;
2459
+ }
2460
+ @keyframes rpcTourFadeIn {
2461
+ from {
2462
+ opacity: 0;
2463
+ transform: scale(0.95);
2464
+ }
2465
+ to {
2466
+ opacity: 1;
2467
+ transform: scale(1);
2468
+ }
2469
+ }
2470
+
2471
+ /* NumericRangeInput/index.less */
2472
+ .rpc_numeric_range_input {
2473
+ display: inline-flex;
2474
+ flex-direction: column;
2475
+ gap: 8px;
2476
+ box-sizing: border-box;
2477
+ vertical-align: middle;
2478
+ }
2479
+ .rpc_numeric_range_input_container {
2480
+ display: inline-flex;
2481
+ align-items: center;
2482
+ background: #ffffff;
2483
+ border: 1px solid #d9d9d9;
2484
+ border-radius: 6px;
2485
+ padding: 4px 8px;
2486
+ transition: all 0.2s;
2487
+ box-sizing: border-box;
2488
+ }
2489
+ .rpc_numeric_range_input_container:hover {
2490
+ border-color: #4096ff;
2491
+ }
2492
+ .rpc_numeric_range_input_container_focused {
2493
+ border-color: #1677ff;
2494
+ box-shadow: 0 0 0 2px rgba(22, 119, 255, 0.15);
2495
+ }
2496
+ .rpc_numeric_range_input_container_error {
2497
+ border-color: #ff4d4f !important;
2498
+ }
2499
+ .rpc_numeric_range_input_container_error_focused {
2500
+ box-shadow: 0 0 0 2px rgba(255, 77, 79, 0.15) !important;
2501
+ }
2502
+ .rpc_numeric_range_input_container_disabled {
2503
+ background: #f5f5f5;
2504
+ border-color: #d9d9d9;
2505
+ cursor: not-allowed;
2506
+ }
2507
+ .rpc_numeric_range_input_container_disabled input {
2508
+ cursor: not-allowed;
2509
+ color: rgba(0, 0, 0, 0.25);
2510
+ }
2511
+ .rpc_numeric_range_input_input {
2512
+ width: 72px;
2513
+ border: none;
2514
+ outline: none;
2515
+ background: transparent;
2516
+ font-size: 13px;
2517
+ color: #262626;
2518
+ text-align: center;
2519
+ box-sizing: border-box;
2520
+ font-family: inherit;
2521
+ }
2522
+ .rpc_numeric_range_input_input::placeholder {
2523
+ color: #bfbfbf;
2524
+ }
2525
+ .rpc_numeric_range_input_separator {
2526
+ margin: 0 6px;
2527
+ color: #8c8c8c;
2528
+ user-select: none;
2529
+ font-size: 13px;
2530
+ }
2531
+ .rpc_numeric_range_input_prefix,
2532
+ .rpc_numeric_range_input_suffix {
2533
+ color: #8c8c8c;
2534
+ font-size: 13px;
2535
+ user-select: none;
2536
+ }
2537
+ .rpc_numeric_range_input_shortcuts {
2538
+ display: flex;
2539
+ align-items: center;
2540
+ gap: 6px;
2541
+ flex-wrap: wrap;
2542
+ }
2543
+ .rpc_numeric_range_input_shortcut_item {
2544
+ padding: 2px 8px;
2545
+ background: #f5f5f5;
2546
+ border-radius: 4px;
2547
+ color: #595959;
2548
+ font-size: 12px;
2549
+ cursor: pointer;
2550
+ user-select: none;
2551
+ transition: all 0.15s;
2552
+ }
2553
+ .rpc_numeric_range_input_shortcut_item:hover {
2554
+ background: #e6f4ff;
2555
+ color: #1677ff;
2556
+ }
2557
+
2558
+ /* MetricCard/index.less */
2559
+ .rpc_metric_card {
2560
+ box-sizing: border-box;
2561
+ background: #ffffff;
2562
+ border: 1px solid #f0f0f0;
2563
+ border-radius: 10px;
2564
+ padding: 18px 20px;
2565
+ display: flex;
2566
+ flex-direction: column;
2567
+ gap: 12px;
2568
+ transition: all 0.2s;
2569
+ box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02);
2570
+ }
2571
+ .rpc_metric_card:hover {
2572
+ box-shadow: 0 6px 16px rgba(0, 0, 0, 0.06);
2573
+ border-color: #e6f4ff;
2574
+ }
2575
+ .rpc_metric_card_header {
2576
+ display: flex;
2577
+ align-items: center;
2578
+ justify-content: space-between;
2579
+ }
2580
+ .rpc_metric_card_title {
2581
+ font-size: 13px;
2582
+ color: #8c8c8c;
2583
+ font-weight: 500;
2584
+ }
2585
+ .rpc_metric_card_body {
2586
+ display: flex;
2587
+ align-items: baseline;
2588
+ justify-content: space-between;
2589
+ gap: 12px;
2590
+ }
2591
+ .rpc_metric_card_value_wrap {
2592
+ display: flex;
2593
+ align-items: baseline;
2594
+ gap: 4px;
2595
+ }
2596
+ .rpc_metric_card_prefix,
2597
+ .rpc_metric_card_suffix {
2598
+ font-size: 16px;
2599
+ color: #595959;
2600
+ font-weight: 500;
2601
+ }
2602
+ .rpc_metric_card_value {
2603
+ font-size: 28px;
2604
+ font-weight: 700;
2605
+ color: #1f1f1f;
2606
+ font-family:
2607
+ -apple-system,
2608
+ BlinkMacSystemFont,
2609
+ "Segoe UI",
2610
+ Roboto,
2611
+ sans-serif;
2612
+ line-height: 1;
2613
+ }
2614
+ .rpc_metric_card_trend {
2615
+ display: inline-flex;
2616
+ align-items: center;
2617
+ gap: 2px;
2618
+ font-size: 12px;
2619
+ font-weight: 600;
2620
+ }
2621
+ .rpc_metric_card_trend_up {
2622
+ color: #52c41a;
2623
+ }
2624
+ .rpc_metric_card_trend_down {
2625
+ color: #ff4d4f;
2626
+ }
2627
+ .rpc_metric_card_sparkline {
2628
+ width: 100%;
2629
+ height: 36px;
2630
+ overflow: hidden;
2631
+ }
2632
+ .rpc_metric_card_footer {
2633
+ font-size: 12px;
2634
+ color: #8c8c8c;
2635
+ border-top: 1px solid #f5f5f5;
2636
+ padding-top: 10px;
2637
+ margin-top: 2px;
2638
+ }
2639
+
2640
+ /* AudioPlayer/index.less */
2641
+ .rpc_audio_player {
2642
+ display: inline-flex;
2643
+ align-items: center;
2644
+ gap: 12px;
2645
+ padding: 10px 16px;
2646
+ background: #ffffff;
2647
+ border: 1px solid #e8e8e8;
2648
+ border-radius: 24px;
2649
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
2650
+ box-sizing: border-box;
2651
+ user-select: none;
2652
+ width: 100%;
2653
+ max-width: 480px;
2654
+ }
2655
+ .rpc_audio_player_play_btn {
2656
+ display: inline-flex;
2657
+ align-items: center;
2658
+ justify-content: center;
2659
+ width: 34px;
2660
+ height: 34px;
2661
+ border-radius: 50%;
2662
+ background: #1677ff;
2663
+ color: #ffffff;
2664
+ cursor: pointer;
2665
+ font-size: 18px;
2666
+ transition: all 0.2s;
2667
+ flex-shrink: 0;
2668
+ }
2669
+ .rpc_audio_player_play_btn:hover {
2670
+ background: #4096ff;
2671
+ transform: scale(1.05);
2672
+ }
2673
+ .rpc_audio_player_info {
2674
+ display: flex;
2675
+ flex-direction: column;
2676
+ gap: 4px;
2677
+ flex: 1;
2678
+ min-width: 0;
2679
+ }
2680
+ .rpc_audio_player_title_row {
2681
+ display: flex;
2682
+ justify-content: space-between;
2683
+ align-items: center;
2684
+ font-size: 12px;
2685
+ }
2686
+ .rpc_audio_player_title {
2687
+ font-weight: 500;
2688
+ color: #262626;
2689
+ overflow: hidden;
2690
+ text-overflow: ellipsis;
2691
+ white-space: nowrap;
2692
+ }
2693
+ .rpc_audio_player_time {
2694
+ color: #8c8c8c;
2695
+ font-family: monospace;
2696
+ font-size: 11px;
2697
+ }
2698
+ .rpc_audio_player_progress_bar {
2699
+ position: relative;
2700
+ width: 100%;
2701
+ height: 6px;
2702
+ background: #f0f0f0;
2703
+ border-radius: 3px;
2704
+ cursor: pointer;
2705
+ overflow: hidden;
2706
+ }
2707
+ .rpc_audio_player_progress_fill {
2708
+ position: absolute;
2709
+ top: 0;
2710
+ left: 0;
2711
+ bottom: 0;
2712
+ background: #1677ff;
2713
+ border-radius: 3px;
2714
+ transition: width 0.1s linear;
2715
+ }
2716
+ .rpc_audio_player_extra {
2717
+ display: flex;
2718
+ align-items: center;
2719
+ gap: 8px;
2720
+ flex-shrink: 0;
2721
+ }
2722
+ .rpc_audio_player_speed_btn {
2723
+ padding: 2px 6px;
2724
+ border-radius: 4px;
2725
+ border: 1px solid #d9d9d9;
2726
+ background: #fafafa;
2727
+ font-size: 11px;
2728
+ color: #595959;
2729
+ cursor: pointer;
2730
+ }
2731
+ .rpc_audio_player_speed_btn:hover {
2732
+ border-color: #1677ff;
2733
+ color: #1677ff;
2734
+ }
2735
+ .rpc_audio_player_download_btn {
2736
+ color: #8c8c8c;
2737
+ cursor: pointer;
2738
+ font-size: 15px;
2739
+ transition: color 0.15s;
2740
+ }
2741
+ .rpc_audio_player_download_btn:hover {
2742
+ color: #1677ff;
2743
+ }
2744
+
2745
+ /* QrCodeCard/index.less */
2746
+ .rpc_qrcode_card {
2747
+ display: inline-flex;
2748
+ flex-direction: column;
2749
+ align-items: center;
2750
+ padding: 20px;
2751
+ background: #ffffff;
2752
+ border: 1px solid #f0f0f0;
2753
+ border-radius: 12px;
2754
+ box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04);
2755
+ box-sizing: border-box;
2756
+ user-select: none;
2757
+ }
2758
+ .rpc_qrcode_card_wrap {
2759
+ position: relative;
2760
+ display: inline-flex;
2761
+ align-items: center;
2762
+ justify-content: center;
2763
+ border: 1px solid #f0f0f0;
2764
+ border-radius: 8px;
2765
+ padding: 8px;
2766
+ background: #ffffff;
2767
+ }
2768
+ .rpc_qrcode_card_canvas {
2769
+ display: block;
2770
+ }
2771
+ .rpc_qrcode_card_logo {
2772
+ position: absolute;
2773
+ top: 50%;
2774
+ left: 50%;
2775
+ transform: translate(-50%, -50%);
2776
+ width: 32px;
2777
+ height: 32px;
2778
+ border-radius: 6px;
2779
+ border: 2px solid #ffffff;
2780
+ box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
2781
+ background: #ffffff;
2782
+ object-fit: cover;
2783
+ }
2784
+ .rpc_qrcode_card_mask {
2785
+ position: absolute;
2786
+ top: 0;
2787
+ left: 0;
2788
+ right: 0;
2789
+ bottom: 0;
2790
+ background: rgba(255, 255, 255, 0.94);
2791
+ backdrop-filter: blur(3px);
2792
+ border-radius: 8px;
2793
+ display: flex;
2794
+ flex-direction: column;
2795
+ align-items: center;
2796
+ justify-content: center;
2797
+ gap: 8px;
2798
+ font-size: 13px;
2799
+ color: #595959;
2800
+ cursor: pointer;
2801
+ z-index: 10;
2802
+ transition: all 0.2s ease-in-out;
2803
+ }
2804
+ .rpc_qrcode_card_mask_loading {
2805
+ cursor: default;
2806
+ gap: 10px;
2807
+ }
2808
+ .rpc_qrcode_card_mask_text {
2809
+ font-size: 13px;
2810
+ font-weight: 500;
2811
+ color: #595959;
2812
+ letter-spacing: 0.2px;
2813
+ }
2814
+ .rpc_qrcode_card_refresh_btn {
2815
+ display: inline-flex;
2816
+ align-items: center;
2817
+ gap: 4px;
2818
+ padding: 4px 12px;
2819
+ border-radius: 4px;
2820
+ background: #1677ff;
2821
+ color: #ffffff;
2822
+ border: none;
2823
+ font-size: 12px;
2824
+ cursor: pointer;
2825
+ margin-top: 4px;
2826
+ }
2827
+ .rpc_qrcode_card_info {
2828
+ margin-top: 14px;
2829
+ text-align: center;
2830
+ display: flex;
2831
+ flex-direction: column;
2832
+ gap: 4px;
2833
+ }
2834
+ .rpc_qrcode_card_title {
2835
+ font-size: 14px;
2836
+ font-weight: 600;
2837
+ color: #1f1f1f;
2838
+ }
2839
+ .rpc_qrcode_card_description {
2840
+ font-size: 12px;
2841
+ color: #8c8c8c;
2842
+ }
2843
+ .rpc_qrcode_card_download {
2844
+ margin-top: 10px;
2845
+ color: #1677ff;
2846
+ font-size: 12px;
2847
+ cursor: pointer;
2848
+ text-decoration: underline;
2849
+ }
2850
+ .rpc_qrcode_card_download:hover {
2851
+ color: #4096ff;
2852
+ }
2853
+
2854
+ /* ActivityLog/index.less */
2855
+ .rpc_activity_log {
2856
+ display: flex;
2857
+ flex-direction: column;
2858
+ position: relative;
2859
+ box-sizing: border-box;
2860
+ }
2861
+ .rpc_activity_log_item {
2862
+ display: flex;
2863
+ gap: 14px;
2864
+ position: relative;
2865
+ padding-bottom: 20px;
2866
+ }
2867
+ .rpc_activity_log_item:last-child {
2868
+ padding-bottom: 0;
2869
+ }
2870
+ .rpc_activity_log_item:last-child .rpc_activity_log_line {
2871
+ display: none;
2872
+ }
2873
+ .rpc_activity_log_avatar_col {
2874
+ display: flex;
2875
+ flex-direction: column;
2876
+ align-items: center;
2877
+ position: relative;
2878
+ }
2879
+ .rpc_activity_log_avatar {
2880
+ width: 32px;
2881
+ height: 32px;
2882
+ border-radius: 50%;
2883
+ background: #e6f4ff;
2884
+ color: #1677ff;
2885
+ display: flex;
2886
+ align-items: center;
2887
+ justify-content: center;
2888
+ font-size: 13px;
2889
+ font-weight: 600;
2890
+ flex-shrink: 0;
2891
+ z-index: 2;
2892
+ overflow: hidden;
2893
+ }
2894
+ .rpc_activity_log_avatar img {
2895
+ width: 100%;
2896
+ height: 100%;
2897
+ object-fit: cover;
2898
+ }
2899
+ .rpc_activity_log_line {
2900
+ position: absolute;
2901
+ top: 32px;
2902
+ bottom: 0;
2903
+ left: 50%;
2904
+ transform: translateX(-50%);
2905
+ width: 2px;
2906
+ background: #f0f0f0;
2907
+ }
2908
+ .rpc_activity_log_content {
2909
+ flex: 1;
2910
+ display: flex;
2911
+ flex-direction: column;
2912
+ gap: 6px;
2913
+ min-width: 0;
2914
+ }
2915
+ .rpc_activity_log_header {
2916
+ display: flex;
2917
+ align-items: center;
2918
+ justify-content: space-between;
2919
+ gap: 8px;
2920
+ font-size: 13px;
2921
+ }
2922
+ .rpc_activity_log_operator_row {
2923
+ display: flex;
2924
+ align-items: center;
2925
+ gap: 6px;
2926
+ flex-wrap: wrap;
2927
+ }
2928
+ .rpc_activity_log_operator {
2929
+ font-weight: 600;
2930
+ color: #1f1f1f;
2931
+ }
2932
+ .rpc_activity_log_role {
2933
+ font-size: 11px;
2934
+ padding: 1px 6px;
2935
+ border-radius: 4px;
2936
+ background: #f5f5f5;
2937
+ color: #8c8c8c;
2938
+ }
2939
+ .rpc_activity_log_action {
2940
+ color: #595959;
2941
+ }
2942
+ .rpc_activity_log_target {
2943
+ color: #1677ff;
2944
+ font-weight: 500;
2945
+ }
2946
+ .rpc_activity_log_time {
2947
+ font-size: 12px;
2948
+ color: #bfbfbf;
2949
+ flex-shrink: 0;
2950
+ }
2951
+ .rpc_activity_log_detail {
2952
+ background: #fafafa;
2953
+ border: 1px solid #f0f0f0;
2954
+ border-radius: 6px;
2955
+ padding: 8px 12px;
2956
+ font-size: 12px;
2957
+ color: #595959;
2958
+ line-height: 1.6;
2959
+ }
2960
+ .rpc_activity_log_toggle_btn {
2961
+ color: #1677ff;
2962
+ font-size: 12px;
2963
+ cursor: pointer;
2964
+ align-self: flex-start;
2965
+ user-select: none;
2966
+ }
2967
+ .rpc_activity_log_toggle_btn:hover {
2968
+ color: #4096ff;
2969
+ }
2970
+
2971
+ /* DragSortList/index.less */
2972
+ .rpc_drag_sort_list {
2973
+ display: flex;
2974
+ flex-direction: column;
2975
+ gap: 8px;
2976
+ box-sizing: border-box;
2977
+ user-select: none;
2978
+ }
2979
+ .rpc_drag_sort_list_item {
2980
+ display: flex;
2981
+ align-items: center;
2982
+ padding: 10px 14px;
2983
+ background: #ffffff;
2984
+ border: 1px solid #e8e8e8;
2985
+ border-radius: 6px;
2986
+ cursor: grab;
2987
+ transition:
2988
+ transform 0.2s,
2989
+ box-shadow 0.2s,
2990
+ border-color 0.2s;
2991
+ box-sizing: border-box;
2992
+ }
2993
+ .rpc_drag_sort_list_item:hover {
2994
+ border-color: #91caff;
2995
+ }
2996
+ .rpc_drag_sort_list_item:active {
2997
+ cursor: grabbing;
2998
+ }
2999
+ .rpc_drag_sort_list_item_dragging {
3000
+ opacity: 0.4;
3001
+ border: 1px dashed #1677ff !important;
3002
+ background: #e6f4ff !important;
3003
+ }
3004
+ .rpc_drag_sort_list_item_over {
3005
+ border-top: 2px solid #1677ff;
3006
+ }
3007
+ .rpc_drag_sort_list_handle {
3008
+ margin-right: 12px;
3009
+ color: #bfbfbf;
3010
+ font-size: 16px;
3011
+ cursor: grab;
3012
+ user-select: none;
3013
+ }
3014
+
3015
+ /* TiltCard/index.less */
3016
+ .rpc_tilt_card {
3017
+ position: relative;
3018
+ box-sizing: border-box;
3019
+ border-radius: 12px;
3020
+ background: #ffffff;
3021
+ border: 1px solid #f0f0f0;
3022
+ transform-style: preserve-3d;
3023
+ will-change: transform;
3024
+ transition: transform 0.15s ease-out, box-shadow 0.15s ease-out;
3025
+ overflow: hidden;
3026
+ box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04);
3027
+ }
3028
+ .rpc_tilt_card:hover {
3029
+ box-shadow: 0 16px 32px rgba(0, 0, 0, 0.12);
3030
+ }
3031
+ .rpc_tilt_card_content {
3032
+ position: relative;
3033
+ z-index: 2;
3034
+ transform: translateZ(20px);
3035
+ }
3036
+ .rpc_tilt_card_glare {
3037
+ position: absolute;
3038
+ top: 0;
3039
+ left: 0;
3040
+ right: 0;
3041
+ bottom: 0;
3042
+ pointer-events: none;
3043
+ z-index: 3;
3044
+ border-radius: inherit;
3045
+ }
3046
+
3047
+ /* VirtualList/index.less */
3048
+ .rpc_virtual_list {
3049
+ position: relative;
3050
+ overflow-y: auto;
3051
+ -webkit-overflow-scrolling: touch;
3052
+ box-sizing: border-box;
3053
+ border: 1px solid #f0f0f0;
3054
+ border-radius: 8px;
3055
+ background: #ffffff;
3056
+ }
3057
+ .rpc_virtual_list_content {
3058
+ position: relative;
3059
+ width: 100%;
3060
+ box-sizing: border-box;
3061
+ }
3062
+ .rpc_virtual_list_item {
3063
+ box-sizing: border-box;
3064
+ display: flex;
3065
+ align-items: center;
3066
+ border-bottom: 1px solid #f9f9f9;
3067
+ padding: 0 16px;
3068
+ }
3069
+ .rpc_virtual_list_item:hover {
3070
+ background: #fafafa;
3071
+ }
3072
+
3073
+ /* Watermark/index.less */
3074
+ .rpc_watermark_wrapper {
3075
+ position: relative;
3076
+ width: 100%;
3077
+ height: 100%;
3078
+ min-height: 100px;
3079
+ box-sizing: border-box;
3080
+ }
3081
+ .rpc_watermark_wrapper .rpc_watermark_layer {
3082
+ position: absolute !important;
3083
+ top: 0 !important;
3084
+ left: 0 !important;
3085
+ right: 0 !important;
3086
+ bottom: 0 !important;
3087
+ width: 100% !important;
3088
+ height: 100% !important;
3089
+ pointer-events: none !important;
3090
+ z-index: 9999 !important;
3091
+ background-repeat: repeat !important;
3092
+ display: block !important;
3093
+ visibility: visible !important;
3094
+ opacity: 1 !important;
3095
+ }
3096
+
3097
+ /* VideoPlayer/index.less */
3098
+ .rpc_video_player {
3099
+ position: relative;
3100
+ background: #000000;
3101
+ border-radius: 10px;
3102
+ overflow: hidden;
3103
+ user-select: none;
3104
+ display: inline-flex;
3105
+ align-items: center;
3106
+ justify-content: center;
3107
+ box-sizing: border-box;
3108
+ }
3109
+ .rpc_video_player_video {
3110
+ display: block;
3111
+ width: 100%;
3112
+ height: 100%;
3113
+ object-fit: contain;
3114
+ }
3115
+ .rpc_video_player_big_play_btn {
3116
+ position: absolute;
3117
+ top: 50%;
3118
+ left: 50%;
3119
+ transform: translate(-50%, -50%);
3120
+ width: 56px;
3121
+ height: 56px;
3122
+ border-radius: 50%;
3123
+ background: rgba(0, 0, 0, 0.6);
3124
+ color: #ffffff;
3125
+ display: flex;
3126
+ align-items: center;
3127
+ justify-content: center;
3128
+ font-size: 28px;
3129
+ cursor: pointer;
3130
+ backdrop-filter: blur(4px);
3131
+ transition: all 0.2s;
3132
+ z-index: 5;
3133
+ }
3134
+ .rpc_video_player_big_play_btn:hover {
3135
+ background: #1677ff;
3136
+ transform: translate(-50%, -50%) scale(1.1);
3137
+ }
3138
+ .rpc_video_player_controls {
3139
+ position: absolute;
3140
+ left: 0;
3141
+ right: 0;
3142
+ bottom: 0;
3143
+ padding: 8px 16px;
3144
+ background:
3145
+ linear-gradient(
3146
+ to top,
3147
+ rgba(0, 0, 0, 0.8) 0%,
3148
+ transparent 100%);
3149
+ display: flex;
3150
+ flex-direction: column;
3151
+ gap: 6px;
3152
+ color: #ffffff;
3153
+ z-index: 10;
3154
+ transition: opacity 0.3s ease;
3155
+ }
3156
+ .rpc_video_player_controls_hidden {
3157
+ opacity: 0;
3158
+ pointer-events: none;
3159
+ }
3160
+ .rpc_video_player_progress_wrap {
3161
+ width: 100%;
3162
+ height: 6px;
3163
+ background: rgba(255, 255, 255, 0.25);
3164
+ border-radius: 3px;
3165
+ cursor: pointer;
3166
+ position: relative;
3167
+ transition: height 0.15s;
3168
+ }
3169
+ .rpc_video_player_progress_wrap:hover {
3170
+ height: 8px;
3171
+ }
3172
+ .rpc_video_player_progress_fill {
3173
+ position: absolute;
3174
+ top: 0;
3175
+ left: 0;
3176
+ bottom: 0;
3177
+ background: #1677ff;
3178
+ border-radius: 3px;
3179
+ }
3180
+ .rpc_video_player_bar_row {
3181
+ display: flex;
3182
+ align-items: center;
3183
+ justify-content: space-between;
3184
+ font-size: 13px;
3185
+ }
3186
+ .rpc_video_player_left_btns,
3187
+ .rpc_video_player_right_btns {
3188
+ display: flex;
3189
+ align-items: center;
3190
+ gap: 12px;
3191
+ }
3192
+ .rpc_video_player_btn {
3193
+ background: transparent;
3194
+ border: none;
3195
+ color: #ffffff;
3196
+ font-size: 16px;
3197
+ cursor: pointer;
3198
+ display: inline-flex;
3199
+ align-items: center;
3200
+ padding: 2px 4px;
3201
+ opacity: 0.85;
3202
+ transition: opacity 0.15s;
3203
+ }
3204
+ .rpc_video_player_btn:hover {
3205
+ opacity: 1;
3206
+ }
3207
+ .rpc_video_player_time {
3208
+ font-size: 12px;
3209
+ font-family: monospace;
3210
+ opacity: 0.9;
3211
+ }
3212
+ .rpc_video_player_speed_btn {
3213
+ font-size: 12px;
3214
+ padding: 1px 6px;
3215
+ border: 1px solid rgba(255, 255, 255, 0.4);
3216
+ border-radius: 4px;
3217
+ }
3218
+
3219
+ /* PdfViewer/index.less */
3220
+ .rpc_pdf_viewer {
3221
+ display: flex;
3222
+ flex-direction: column;
3223
+ background: #525659;
3224
+ border-radius: 8px;
3225
+ overflow: hidden;
3226
+ box-sizing: border-box;
3227
+ border: 1px solid #333333;
3228
+ }
3229
+ .rpc_pdf_viewer_toolbar {
3230
+ display: flex;
3231
+ align-items: center;
3232
+ justify-content: space-between;
3233
+ padding: 8px 16px;
3234
+ background: #323639;
3235
+ color: #f1f1f1;
3236
+ font-size: 13px;
3237
+ user-select: none;
3238
+ }
3239
+ .rpc_pdf_viewer_title {
3240
+ font-weight: 500;
3241
+ overflow: hidden;
3242
+ text-overflow: ellipsis;
3243
+ white-space: nowrap;
3244
+ }
3245
+ .rpc_pdf_viewer_actions {
3246
+ display: flex;
3247
+ align-items: center;
3248
+ gap: 10px;
3249
+ }
3250
+ .rpc_pdf_viewer_btn {
3251
+ display: inline-flex;
3252
+ align-items: center;
3253
+ gap: 4px;
3254
+ padding: 3px 8px;
3255
+ border-radius: 4px;
3256
+ border: 1px solid #4a4d50;
3257
+ background: #202124;
3258
+ color: #e8eaed;
3259
+ font-size: 12px;
3260
+ cursor: pointer;
3261
+ transition: all 0.15s;
3262
+ }
3263
+ .rpc_pdf_viewer_btn:hover {
3264
+ background: #4a4d50;
3265
+ color: #ffffff;
3266
+ }
3267
+ .rpc_pdf_viewer_body {
3268
+ flex: 1;
3269
+ position: relative;
3270
+ background: #525659;
3271
+ overflow: auto;
3272
+ display: flex;
3273
+ align-items: center;
3274
+ justify-content: center;
3275
+ }
3276
+ .rpc_pdf_viewer_frame {
3277
+ width: 100%;
3278
+ height: 100%;
3279
+ border: none;
3280
+ display: block;
3281
+ transition: transform 0.2s ease;
3282
+ }
3283
+
3284
+ /* BadgeRibbon/index.less */
3285
+ .rpc_badge_ribbon_wrapper {
3286
+ position: relative;
3287
+ display: inline-block;
3288
+ box-sizing: border-box;
3289
+ }
3290
+ .rpc_badge_ribbon_wrapper .rpc_badge_ribbon {
3291
+ position: absolute;
3292
+ top: 14px;
3293
+ height: 22px;
3294
+ line-height: 22px;
3295
+ padding: 0 10px;
3296
+ color: #ffffff;
3297
+ font-size: 11px;
3298
+ font-weight: 600;
3299
+ white-space: nowrap;
3300
+ background: #ff4d4f;
3301
+ box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
3302
+ z-index: 10;
3303
+ user-select: none;
3304
+ }
3305
+ .rpc_badge_ribbon_wrapper .rpc_badge_ribbon_end {
3306
+ right: -8px;
3307
+ border-radius: 2px 0 0 2px;
3308
+ }
3309
+ .rpc_badge_ribbon_wrapper .rpc_badge_ribbon_end::after {
3310
+ content: "";
3311
+ position: absolute;
3312
+ top: 100%;
3313
+ right: 0;
3314
+ border: 4px solid transparent;
3315
+ border-top-color: rgba(0, 0, 0, 0.4);
3316
+ border-right-color: rgba(0, 0, 0, 0.4);
3317
+ }
3318
+ .rpc_badge_ribbon_wrapper .rpc_badge_ribbon_start {
3319
+ left: -8px;
3320
+ border-radius: 0 2px 2px 0;
3321
+ }
3322
+ .rpc_badge_ribbon_wrapper .rpc_badge_ribbon_start::after {
3323
+ content: "";
3324
+ position: absolute;
3325
+ top: 100%;
3326
+ left: 0;
3327
+ border: 4px solid transparent;
3328
+ border-top-color: rgba(0, 0, 0, 0.4);
3329
+ border-left-color: rgba(0, 0, 0, 0.4);
3330
+ }
3331
+
3332
+ /* ShimmerSkeleton/index.less */
3333
+ .rpc_shimmer_skeleton {
3334
+ display: block;
3335
+ box-sizing: border-box;
3336
+ }
3337
+ .rpc_shimmer_skeleton_bar {
3338
+ background: #f0f0f0;
3339
+ background:
3340
+ linear-gradient(
3341
+ 90deg,
3342
+ #f0f0f0 25%,
3343
+ #e0e0e0 50%,
3344
+ #f0f0f0 75%);
3345
+ background-size: 200% 100%;
3346
+ border-radius: 4px;
3347
+ animation: rpcShimmerWave 1.6s infinite ease-in-out;
3348
+ }
3349
+ .rpc_shimmer_skeleton_avatar {
3350
+ width: 48px;
3351
+ height: 48px;
3352
+ border-radius: 50%;
3353
+ background: #f0f0f0;
3354
+ background:
3355
+ linear-gradient(
3356
+ 90deg,
3357
+ #f0f0f0 25%,
3358
+ #e0e0e0 50%,
3359
+ #f0f0f0 75%);
3360
+ background-size: 200% 100%;
3361
+ animation: rpcShimmerWave 1.6s infinite ease-in-out;
3362
+ }
3363
+ .rpc_shimmer_skeleton_card {
3364
+ padding: 16px;
3365
+ border: 1px solid #f0f0f0;
3366
+ border-radius: 8px;
3367
+ display: flex;
3368
+ flex-direction: column;
3369
+ gap: 12px;
3370
+ }
3371
+ .rpc_shimmer_skeleton_list_item {
3372
+ display: flex;
3373
+ align-items: center;
3374
+ gap: 14px;
3375
+ padding: 12px 0;
3376
+ border-bottom: 1px solid #f5f5f5;
3377
+ }
3378
+ @keyframes rpcShimmerWave {
3379
+ 0% {
3380
+ background-position: 200% 0;
3381
+ }
3382
+ 100% {
3383
+ background-position: -200% 0;
3384
+ }
3385
+ }
3386
+
3387
+ /* FlipCard/index.less */
3388
+ .rpc_flip_card {
3389
+ perspective: 1000px;
3390
+ box-sizing: border-box;
3391
+ display: inline-block;
3392
+ }
3393
+ .rpc_flip_card_inner {
3394
+ position: relative;
3395
+ width: 100%;
3396
+ height: 100%;
3397
+ transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
3398
+ transform-style: preserve-3d;
3399
+ }
3400
+ .rpc_flip_card_flipped_horizontal {
3401
+ transform: rotateY(180deg);
3402
+ }
3403
+ .rpc_flip_card_flipped_vertical {
3404
+ transform: rotateX(180deg);
3405
+ }
3406
+ .rpc_flip_card_front,
3407
+ .rpc_flip_card_back {
3408
+ position: absolute;
3409
+ top: 0;
3410
+ left: 0;
3411
+ width: 100%;
3412
+ height: 100%;
3413
+ -webkit-backface-visibility: hidden;
3414
+ backface-visibility: hidden;
3415
+ border-radius: 12px;
3416
+ box-sizing: border-box;
3417
+ overflow: hidden;
3418
+ }
3419
+ .rpc_flip_card_back_horizontal {
3420
+ transform: rotateY(180deg);
3421
+ }
3422
+ .rpc_flip_card_back_vertical {
3423
+ transform: rotateX(180deg);
3424
+ }
3425
+
3426
+ /* KanbanBoard/index.less */
3427
+ .rpc_kanban_board {
3428
+ display: flex;
3429
+ gap: 16px;
3430
+ overflow-x: auto;
3431
+ padding-bottom: 8px;
3432
+ box-sizing: border-box;
3433
+ user-select: none;
3434
+ }
3435
+ .rpc_kanban_board_column {
3436
+ flex: 1;
3437
+ min-width: 280px;
3438
+ max-width: 360px;
3439
+ background: #f7f8fa;
3440
+ border-radius: 10px;
3441
+ display: flex;
3442
+ flex-direction: column;
3443
+ padding: 12px;
3444
+ box-sizing: border-box;
3445
+ border: 1px solid #ebedf0;
3446
+ transition: background-color 0.2s;
3447
+ }
3448
+ .rpc_kanban_board_column_dragover {
3449
+ background: #e6f4ff;
3450
+ border-color: #91caff;
3451
+ }
3452
+ .rpc_kanban_board_column_header {
3453
+ display: flex;
3454
+ align-items: center;
3455
+ justify-content: space-between;
3456
+ padding-bottom: 10px;
3457
+ margin-bottom: 8px;
3458
+ border-bottom: 1px solid #f0f0f0;
3459
+ }
3460
+ .rpc_kanban_board_column_title_wrap {
3461
+ display: flex;
3462
+ align-items: center;
3463
+ gap: 8px;
3464
+ font-weight: 600;
3465
+ font-size: 14px;
3466
+ color: #1f1f1f;
3467
+ }
3468
+ .rpc_kanban_board_column_dot {
3469
+ width: 8px;
3470
+ height: 8px;
3471
+ border-radius: 50%;
3472
+ }
3473
+ .rpc_kanban_board_column_count {
3474
+ font-size: 12px;
3475
+ color: #8c8c8c;
3476
+ background: #e8e8e8;
3477
+ padding: 1px 6px;
3478
+ border-radius: 10px;
3479
+ font-weight: normal;
3480
+ }
3481
+ .rpc_kanban_board_column_body {
3482
+ flex: 1;
3483
+ display: flex;
3484
+ flex-direction: column;
3485
+ gap: 10px;
3486
+ min-height: 120px;
3487
+ }
3488
+ .rpc_kanban_board_card {
3489
+ background: #ffffff;
3490
+ border-radius: 8px;
3491
+ padding: 12px;
3492
+ box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05);
3493
+ border: 1px solid #e8e8e8;
3494
+ cursor: grab;
3495
+ transition: all 0.15s ease;
3496
+ }
3497
+ .rpc_kanban_board_card:hover {
3498
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
3499
+ border-color: #d9d9d9;
3500
+ }
3501
+ .rpc_kanban_board_card_dragging {
3502
+ opacity: 0.4;
3503
+ border-style: dashed;
3504
+ }
3505
+
3506
+ /* TreeFilterPanel/index.less */
3507
+ .rpc_tree_filter_panel {
3508
+ background: #ffffff;
3509
+ border: 1px solid #f0f0f0;
3510
+ border-radius: 8px;
3511
+ padding: 16px;
3512
+ box-sizing: border-box;
3513
+ user-select: none;
3514
+ display: flex;
3515
+ flex-direction: column;
3516
+ gap: 12px;
3517
+ }
3518
+ .rpc_tree_filter_panel_row {
3519
+ display: flex;
3520
+ align-items: flex-start;
3521
+ font-size: 13px;
3522
+ line-height: 1.6;
3523
+ }
3524
+ .rpc_tree_filter_panel_label {
3525
+ width: 80px;
3526
+ flex-shrink: 0;
3527
+ color: #8c8c8c;
3528
+ font-weight: 500;
3529
+ padding-top: 2px;
3530
+ }
3531
+ .rpc_tree_filter_panel_options {
3532
+ flex: 1;
3533
+ display: flex;
3534
+ flex-wrap: wrap;
3535
+ gap: 8px;
3536
+ }
3537
+ .rpc_tree_filter_panel_item {
3538
+ padding: 2px 10px;
3539
+ border-radius: 4px;
3540
+ cursor: pointer;
3541
+ color: #595959;
3542
+ transition: all 0.15s;
3543
+ }
3544
+ .rpc_tree_filter_panel_item:hover {
3545
+ color: #1677ff;
3546
+ }
3547
+ .rpc_tree_filter_panel_item_active {
3548
+ background: #e6f4ff;
3549
+ color: #1677ff;
3550
+ font-weight: 500;
3551
+ }
3552
+ .rpc_tree_filter_panel_footer {
3553
+ display: flex;
3554
+ align-items: center;
3555
+ justify-content: space-between;
3556
+ padding-top: 10px;
3557
+ border-top: 1px dashed #f0f0f0;
3558
+ font-size: 12px;
3559
+ color: #8c8c8c;
3560
+ }
3561
+ .rpc_tree_filter_panel_clear_btn {
3562
+ color: #1677ff;
3563
+ cursor: pointer;
3564
+ background: none;
3565
+ border: none;
3566
+ padding: 0;
3567
+ font-size: 12px;
3568
+ }
3569
+ .rpc_tree_filter_panel_clear_btn:hover {
3570
+ text-decoration: underline;
3571
+ }
3572
+
3573
+ /* EnvBadge/index.less */
3574
+ .rpc_env_badge {
3575
+ position: fixed;
3576
+ z-index: 99999;
3577
+ user-select: none;
3578
+ box-sizing: border-box;
3579
+ }
3580
+ .rpc_env_badge_top_right {
3581
+ top: 18px;
3582
+ right: 18px;
3583
+ }
3584
+ .rpc_env_badge_top_left {
3585
+ top: 18px;
3586
+ left: 18px;
3587
+ }
3588
+ .rpc_env_badge_bottom_right {
3589
+ bottom: 18px;
3590
+ right: 18px;
3591
+ }
3592
+ .rpc_env_badge_tag {
3593
+ display: inline-flex;
3594
+ align-items: center;
3595
+ gap: 6px;
3596
+ padding: 4px 12px;
3597
+ border-radius: 20px;
3598
+ font-size: 12px;
3599
+ font-weight: 700;
3600
+ color: #ffffff;
3601
+ cursor: pointer;
3602
+ box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
3603
+ backdrop-filter: blur(8px);
3604
+ transition: transform 0.2s, box-shadow 0.2s;
3605
+ }
3606
+ .rpc_env_badge_tag:hover {
3607
+ transform: scale(1.06);
3608
+ box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25);
3609
+ }
3610
+ .rpc_env_badge_tag_dev {
3611
+ background: #52c41a;
3612
+ }
3613
+ .rpc_env_badge_tag_test,
3614
+ .rpc_env_badge_tag_uat {
3615
+ background: #fa8c16;
3616
+ }
3617
+ .rpc_env_badge_tag_staging {
3618
+ background: #722ed1;
3619
+ }
3620
+ .rpc_env_badge_tag_prod {
3621
+ background: #f5222d;
3622
+ animation: rpcEnvProdPulse 2s infinite ease-in-out;
3623
+ }
3624
+ .rpc_env_badge_popover {
3625
+ position: absolute;
3626
+ top: 100%;
3627
+ right: 0;
3628
+ margin-top: 10px;
3629
+ width: 280px;
3630
+ background: #ffffff;
3631
+ border-radius: 10px;
3632
+ box-shadow: 0 8px 30px rgba(0, 0, 0, 0.15);
3633
+ border: 1px solid #f0f0f0;
3634
+ padding: 14px;
3635
+ box-sizing: border-box;
3636
+ color: #262626;
3637
+ font-size: 13px;
3638
+ }
3639
+ .rpc_env_badge_pop_header {
3640
+ display: flex;
3641
+ align-items: center;
3642
+ justify-content: space-between;
3643
+ font-weight: 600;
3644
+ margin-bottom: 10px;
3645
+ padding-bottom: 8px;
3646
+ border-bottom: 1px solid #f0f0f0;
3647
+ }
3648
+ .rpc_env_badge_pop_row {
3649
+ display: flex;
3650
+ align-items: center;
3651
+ justify-content: space-between;
3652
+ margin-bottom: 6px;
3653
+ font-size: 12px;
3654
+ }
3655
+ .rpc_env_badge_pop_row span:first-child {
3656
+ color: #8c8c8c;
3657
+ }
3658
+ .rpc_env_badge_pop_row span:last-child {
3659
+ font-family: monospace;
3660
+ color: #1f1f1f;
3661
+ font-weight: 500;
3662
+ }
3663
+ .rpc_env_badge_switch_wrap {
3664
+ margin-top: 10px;
3665
+ padding-top: 8px;
3666
+ border-top: 1px dashed #f0f0f0;
3667
+ display: flex;
3668
+ gap: 6px;
3669
+ flex-wrap: wrap;
3670
+ }
3671
+ .rpc_env_badge_switch_btn {
3672
+ font-size: 11px;
3673
+ padding: 2px 8px;
3674
+ border-radius: 4px;
3675
+ border: 1px solid #d9d9d9;
3676
+ background: #f5f5f5;
3677
+ color: #595959;
3678
+ cursor: pointer;
3679
+ text-decoration: none;
3680
+ transition: all 0.15s;
3681
+ }
3682
+ .rpc_env_badge_switch_btn:hover {
3683
+ border-color: #1677ff;
3684
+ color: #1677ff;
3685
+ background: #e6f4ff;
3686
+ }
3687
+ @keyframes rpcEnvProdPulse {
3688
+ 0%, 100% {
3689
+ opacity: 1;
3690
+ }
3691
+ 50% {
3692
+ opacity: 0.85;
3693
+ }
3694
+ }
3695
+
3696
+ /* StatusTimeline/index.less */
3697
+ .rpc_status_timeline {
3698
+ display: flex;
3699
+ flex-direction: column;
3700
+ box-sizing: border-box;
3701
+ user-select: none;
3702
+ }
3703
+ .rpc_status_timeline_item {
3704
+ display: flex;
3705
+ gap: 14px;
3706
+ position: relative;
3707
+ padding-bottom: 24px;
3708
+ }
3709
+ .rpc_status_timeline_item:last-child {
3710
+ padding-bottom: 0;
3711
+ }
3712
+ .rpc_status_timeline_item:last-child .rpc_status_timeline_line {
3713
+ display: none;
3714
+ }
3715
+ .rpc_status_timeline_axis {
3716
+ display: flex;
3717
+ flex-direction: column;
3718
+ align-items: center;
3719
+ width: 24px;
3720
+ flex-shrink: 0;
3721
+ }
3722
+ .rpc_status_timeline_dot {
3723
+ width: 20px;
3724
+ height: 20px;
3725
+ border-radius: 50%;
3726
+ display: flex;
3727
+ align-items: center;
3728
+ justify-content: center;
3729
+ font-size: 11px;
3730
+ font-weight: 700;
3731
+ color: #ffffff;
3732
+ z-index: 2;
3733
+ }
3734
+ .rpc_status_timeline_dot_finish {
3735
+ background: #52c41a;
3736
+ }
3737
+ .rpc_status_timeline_dot_process {
3738
+ background: #1677ff;
3739
+ box-shadow: 0 0 0 3px rgba(22, 119, 255, 0.2);
3740
+ animation: rpcTimelinePulse 1.8s infinite;
3741
+ }
3742
+ .rpc_status_timeline_dot_error {
3743
+ background: #ff4d4f;
3744
+ }
3745
+ .rpc_status_timeline_dot_wait {
3746
+ background: #d9d9d9;
3747
+ color: #8c8c8c;
3748
+ }
3749
+ .rpc_status_timeline_line {
3750
+ width: 2px;
3751
+ flex: 1;
3752
+ background: #e8e8e8;
3753
+ margin-top: 4px;
3754
+ margin-bottom: -4px;
3755
+ }
3756
+ .rpc_status_timeline_content {
3757
+ flex: 1;
3758
+ display: flex;
3759
+ flex-direction: column;
3760
+ gap: 4px;
3761
+ font-size: 13px;
3762
+ }
3763
+ .rpc_status_timeline_header {
3764
+ display: flex;
3765
+ align-items: center;
3766
+ justify-content: space-between;
3767
+ }
3768
+ .rpc_status_timeline_title {
3769
+ font-weight: 600;
3770
+ color: #1f1f1f;
3771
+ }
3772
+ .rpc_status_timeline_time {
3773
+ font-size: 12px;
3774
+ color: #8c8c8c;
3775
+ }
3776
+ .rpc_status_timeline_operator {
3777
+ display: flex;
3778
+ align-items: center;
3779
+ gap: 6px;
3780
+ font-size: 12px;
3781
+ color: #595959;
3782
+ }
3783
+ .rpc_status_timeline_duration {
3784
+ display: inline-block;
3785
+ font-size: 11px;
3786
+ padding: 1px 6px;
3787
+ background: #f5f5f5;
3788
+ color: #8c8c8c;
3789
+ border-radius: 4px;
3790
+ margin-top: 2px;
3791
+ }
3792
+ .rpc_status_timeline_desc {
3793
+ color: #595959;
3794
+ line-height: 1.5;
3795
+ font-size: 12px;
3796
+ margin-top: 4px;
3797
+ }
3798
+ @keyframes rpcTimelinePulse {
3799
+ 0%, 100% {
3800
+ transform: scale(1);
3801
+ }
3802
+ 50% {
3803
+ transform: scale(1.15);
3804
+ }
3805
+ }
3806
+
3807
+ /* GradientText/index.less */
3808
+ .rpc_gradient_text {
3809
+ display: inline-block;
3810
+ font-weight: 700;
3811
+ background-clip: text;
3812
+ -webkit-background-clip: text;
3813
+ color: transparent;
3814
+ -webkit-text-fill-color: transparent;
3815
+ background-size: 200% auto;
3816
+ }
3817
+ .rpc_gradient_text_animate {
3818
+ animation: rpcGradientTextFlow 4s linear infinite;
3819
+ }
3820
+ @keyframes rpcGradientTextFlow {
3821
+ 0% {
3822
+ background-position: 0% center;
3823
+ }
3824
+ 100% {
3825
+ background-position: 200% center;
3826
+ }
3827
+ }
3828
+
3829
+ /* KeyValEditor/index.less */
3830
+ .rpc_key_val_editor {
3831
+ display: flex;
3832
+ flex-direction: column;
3833
+ gap: 8px;
3834
+ box-sizing: border-box;
3835
+ user-select: none;
3836
+ }
3837
+ .rpc_key_val_editor_row {
3838
+ display: flex;
3839
+ align-items: center;
3840
+ gap: 8px;
3841
+ }
3842
+ .rpc_key_val_editor_checkbox {
3843
+ cursor: pointer;
3844
+ }
3845
+ .rpc_key_val_editor_input {
3846
+ flex: 1;
3847
+ padding: 6px 10px;
3848
+ border: 1px solid #d9d9d9;
3849
+ border-radius: 6px;
3850
+ font-size: 13px;
3851
+ color: #262626;
3852
+ outline: none;
3853
+ transition: all 0.15s;
3854
+ }
3855
+ .rpc_key_val_editor_input:focus {
3856
+ border-color: #1677ff;
3857
+ box-shadow: 0 0 0 2px rgba(22, 119, 255, 0.1);
3858
+ }
3859
+ .rpc_key_val_editor_input:disabled {
3860
+ background: #f5f5f5;
3861
+ color: #bfbfbf;
3862
+ }
3863
+ .rpc_key_val_editor_btn_icon {
3864
+ background: none;
3865
+ border: none;
3866
+ color: #8c8c8c;
3867
+ cursor: pointer;
3868
+ font-size: 14px;
3869
+ padding: 4px;
3870
+ display: flex;
3871
+ align-items: center;
3872
+ transition: color 0.15s;
3873
+ }
3874
+ .rpc_key_val_editor_btn_icon:hover {
3875
+ color: #ff4d4f;
3876
+ }
3877
+ .rpc_key_val_editor_footer {
3878
+ display: flex;
3879
+ align-items: center;
3880
+ justify-content: space-between;
3881
+ margin-top: 4px;
3882
+ }
3883
+ .rpc_key_val_editor_add_btn {
3884
+ display: inline-flex;
3885
+ align-items: center;
3886
+ gap: 4px;
3887
+ padding: 4px 12px;
3888
+ border: 1px dashed #d9d9d9;
3889
+ border-radius: 6px;
3890
+ background: #ffffff;
3891
+ color: #595959;
3892
+ font-size: 12px;
3893
+ cursor: pointer;
3894
+ transition: all 0.15s;
3895
+ }
3896
+ .rpc_key_val_editor_add_btn:hover {
3897
+ border-color: #1677ff;
3898
+ color: #1677ff;
3899
+ }
3900
+
3901
+ /* QuickDateRange/index.less */
3902
+ .rpc_quick_date_range {
3903
+ display: inline-flex;
3904
+ align-items: center;
3905
+ gap: 6px;
3906
+ flex-wrap: wrap;
3907
+ user-select: none;
3908
+ box-sizing: border-box;
3909
+ }
3910
+ .rpc_quick_date_range_pill {
3911
+ padding: 3px 10px;
3912
+ border-radius: 14px;
3913
+ background: #f5f5f5;
3914
+ border: 1px solid #e8e8e8;
3915
+ font-size: 12px;
3916
+ color: #595959;
3917
+ cursor: pointer;
3918
+ transition: all 0.15s ease;
3919
+ }
3920
+ .rpc_quick_date_range_pill:hover {
3921
+ color: #1677ff;
3922
+ border-color: #91caff;
3923
+ }
3924
+ .rpc_quick_date_range_pill_active {
3925
+ background: #e6f4ff;
3926
+ border-color: #1677ff;
3927
+ color: #1677ff;
3928
+ font-weight: 500;
3929
+ }
3930
+
3931
+ /* DiffTable/index.less */
3932
+ .rpc_diff_table {
3933
+ width: 100%;
3934
+ border-collapse: collapse;
3935
+ font-size: 13px;
3936
+ color: #262626;
3937
+ background: #ffffff;
3938
+ border: 1px solid #f0f0f0;
3939
+ border-radius: 8px;
3940
+ overflow: hidden;
3941
+ box-sizing: border-box;
3942
+ }
3943
+ .rpc_diff_table th {
3944
+ background: #fafafa;
3945
+ padding: 10px 14px;
3946
+ font-weight: 600;
3947
+ color: #595959;
3948
+ border-bottom: 1px solid #f0f0f0;
3949
+ text-align: left;
3950
+ }
3951
+ .rpc_diff_table td {
3952
+ padding: 10px 14px;
3953
+ border-bottom: 1px solid #f0f0f0;
3954
+ }
3955
+ .rpc_diff_table tr:last-child td {
3956
+ border-bottom: none;
3957
+ }
3958
+ .rpc_diff_table tr:hover td {
3959
+ background: #fafafa;
3960
+ }
3961
+ .rpc_diff_table_cell {
3962
+ display: flex;
3963
+ align-items: baseline;
3964
+ gap: 8px;
3965
+ }
3966
+ .rpc_diff_table_diff_tag {
3967
+ font-size: 11px;
3968
+ font-weight: 600;
3969
+ padding: 0 4px;
3970
+ border-radius: 2px;
3971
+ }
3972
+ .rpc_diff_table_diff_tag_up {
3973
+ color: #52c41a;
3974
+ background: rgba(82, 196, 26, 0.1);
3975
+ }
3976
+ .rpc_diff_table_diff_tag_down {
3977
+ color: #ff4d4f;
3978
+ background: rgba(255, 77, 79, 0.1);
3979
+ }
3980
+ .rpc_diff_table_diff_tag_same {
3981
+ color: #8c8c8c;
3982
+ }
3983
+
3984
+ /* PhotoViewer/index.less */
3985
+ .rpc_photo_viewer {
3986
+ display: flex;
3987
+ flex-direction: column;
3988
+ background: #0f1117;
3989
+ border: 1px solid rgba(255, 255, 255, 0.08);
3990
+ border-radius: 14px;
3991
+ overflow: hidden;
3992
+ box-shadow: 0 12px 36px rgba(0, 0, 0, 0.35);
3993
+ user-select: none;
3994
+ box-sizing: border-box;
3995
+ }
3996
+ .rpc_photo_viewer_top_bar {
3997
+ display: flex;
3998
+ align-items: center;
3999
+ justify-content: space-between;
4000
+ padding: 10px 16px;
4001
+ background: rgba(255, 255, 255, 0.03);
4002
+ border-bottom: 1px solid rgba(255, 255, 255, 0.06);
4003
+ color: #ffffff;
4004
+ font-size: 13px;
4005
+ }
4006
+ .rpc_photo_viewer_top_title {
4007
+ font-weight: 500;
4008
+ color: #e6e6e6;
4009
+ overflow: hidden;
4010
+ text-overflow: ellipsis;
4011
+ white-space: nowrap;
4012
+ }
4013
+ .rpc_photo_viewer_counter {
4014
+ font-size: 12px;
4015
+ color: #8c8c8c;
4016
+ font-family: monospace;
4017
+ background: rgba(255, 255, 255, 0.08);
4018
+ padding: 2px 8px;
4019
+ border-radius: 10px;
4020
+ }
4021
+ .rpc_photo_viewer_main_wrap {
4022
+ position: relative;
4023
+ width: 100%;
4024
+ height: 380px;
4025
+ display: flex;
4026
+ align-items: center;
4027
+ justify-content: center;
4028
+ background:
4029
+ radial-gradient(
4030
+ circle at center,
4031
+ #1a1d26 0%,
4032
+ #0b0c10 100%);
4033
+ overflow: hidden;
4034
+ }
4035
+ .rpc_photo_viewer_main_img {
4036
+ max-width: 92%;
4037
+ max-height: 90%;
4038
+ object-fit: contain;
4039
+ border-radius: 8px;
4040
+ box-shadow: 0 8px 28px rgba(0, 0, 0, 0.4);
4041
+ transition: opacity 0.25s ease, transform 0.25s ease;
4042
+ }
4043
+ .rpc_photo_viewer_nav_btn {
4044
+ position: absolute;
4045
+ top: 50%;
4046
+ transform: translateY(-50%);
4047
+ width: 42px;
4048
+ height: 42px;
4049
+ border-radius: 50%;
4050
+ background: rgba(255, 255, 255, 0.12);
4051
+ backdrop-filter: blur(10px);
4052
+ -webkit-backdrop-filter: blur(10px);
4053
+ border: 1px solid rgba(255, 255, 255, 0.15);
4054
+ color: #ffffff;
4055
+ font-size: 20px;
4056
+ cursor: pointer;
4057
+ display: flex;
4058
+ align-items: center;
4059
+ justify-content: center;
4060
+ transition: all 0.2s cubic-bezier(0.25, 1, 0.5, 1);
4061
+ z-index: 10;
4062
+ }
4063
+ .rpc_photo_viewer_nav_btn:hover {
4064
+ background: rgba(255, 255, 255, 0.25);
4065
+ transform: translateY(-50%) scale(1.08);
4066
+ box-shadow: 0 0 16px rgba(255, 255, 255, 0.2);
4067
+ }
4068
+ .rpc_photo_viewer_nav_btn_prev {
4069
+ left: 16px;
4070
+ }
4071
+ .rpc_photo_viewer_nav_btn_next {
4072
+ right: 16px;
4073
+ }
4074
+ .rpc_photo_viewer_thumbs_wrap {
4075
+ display: flex;
4076
+ align-items: center;
4077
+ justify-content: center;
4078
+ gap: 10px;
4079
+ padding: 12px 18px;
4080
+ background: #090a0d;
4081
+ border-top: 1px solid rgba(255, 255, 255, 0.05);
4082
+ overflow-x: auto;
4083
+ }
4084
+ .rpc_photo_viewer_thumb {
4085
+ width: 68px;
4086
+ height: 44px;
4087
+ border-radius: 6px;
4088
+ overflow: hidden;
4089
+ cursor: pointer;
4090
+ opacity: 0.38;
4091
+ border: 2px solid transparent;
4092
+ transition: all 0.2s cubic-bezier(0.25, 1, 0.5, 1);
4093
+ flex-shrink: 0;
4094
+ background: #14161f;
4095
+ }
4096
+ .rpc_photo_viewer_thumb img {
4097
+ width: 100%;
4098
+ height: 100%;
4099
+ object-fit: cover;
4100
+ display: block;
4101
+ }
4102
+ .rpc_photo_viewer_thumb:hover {
4103
+ opacity: 0.75;
4104
+ transform: translateY(-2px);
4105
+ }
4106
+ .rpc_photo_viewer_thumb_active {
4107
+ opacity: 1 !important;
4108
+ border-color: #1677ff;
4109
+ transform: translateY(-2px);
4110
+ box-shadow: 0 0 12px rgba(22, 119, 255, 0.6);
4111
+ }
4112
+
4113
+ /* TrendIndicator/index.less */
4114
+ .rpc_trend_indicator {
4115
+ display: inline-flex;
4116
+ align-items: center;
4117
+ gap: 3px;
4118
+ font-size: 12px;
4119
+ font-weight: 600;
4120
+ user-select: none;
4121
+ box-sizing: border-box;
4122
+ }
4123
+ .rpc_trend_indicator_filled {
4124
+ padding: 2px 6px;
4125
+ border-radius: 4px;
4126
+ }
4127
+ .rpc_trend_indicator_outlined {
4128
+ padding: 1px 5px;
4129
+ border-radius: 4px;
4130
+ border: 1px solid currentColor;
4131
+ }
4132
+ .rpc_trend_indicator_up {
4133
+ color: #52c41a;
4134
+ }
4135
+ .rpc_trend_indicator_up.rpc_trend_indicator_filled {
4136
+ background: rgba(82, 196, 26, 0.12);
4137
+ }
4138
+ .rpc_trend_indicator_down {
4139
+ color: #ff4d4f;
4140
+ }
4141
+ .rpc_trend_indicator_down.rpc_trend_indicator_filled {
4142
+ background: rgba(255, 77, 79, 0.12);
4143
+ }
4144
+ .rpc_trend_indicator_flat {
4145
+ color: #8c8c8c;
4146
+ }
4147
+ .rpc_trend_indicator_flat.rpc_trend_indicator_filled {
4148
+ background: rgba(0, 0, 0, 0.05);
4149
+ }
4150
+ .rpc_trend_indicator_arrow {
4151
+ font-size: 11px;
4152
+ line-height: 1;
4153
+ }
4154
+
4155
+ /* CountdownButton/index.less */
4156
+ .rpc_countdown_btn {
4157
+ padding: 5px 14px;
4158
+ border-radius: 6px;
4159
+ font-size: 13px;
4160
+ font-weight: 500;
4161
+ border: 1px solid #1677ff;
4162
+ background: #1677ff;
4163
+ color: #ffffff;
4164
+ cursor: pointer;
4165
+ transition: all 0.2s;
4166
+ display: inline-flex;
4167
+ align-items: center;
4168
+ justify-content: center;
4169
+ user-select: none;
4170
+ box-sizing: border-box;
4171
+ }
4172
+ .rpc_countdown_btn:hover:not(:disabled) {
4173
+ background: #4096ff;
4174
+ border-color: #4096ff;
4175
+ }
4176
+ .rpc_countdown_btn:disabled {
4177
+ background: #f5f5f5;
4178
+ border-color: #d9d9d9;
4179
+ color: #8c8c8c;
4180
+ cursor: not-allowed;
4181
+ }
4182
+ .rpc_countdown_btn_loading {
4183
+ opacity: 0.8;
4184
+ }
4185
+
4186
+ /* SegmentedProgress/index.less */
4187
+ .rpc_seg_progress {
4188
+ display: flex;
4189
+ flex-direction: column;
4190
+ gap: 8px;
4191
+ box-sizing: border-box;
4192
+ user-select: none;
4193
+ }
4194
+ .rpc_seg_progress_bar {
4195
+ width: 100%;
4196
+ border-radius: 6px;
4197
+ background: #f0f0f0;
4198
+ overflow: hidden;
4199
+ display: flex;
4200
+ }
4201
+ .rpc_seg_progress_segment {
4202
+ height: 100%;
4203
+ transition: width 0.3s ease;
4204
+ cursor: pointer;
4205
+ }
4206
+ .rpc_seg_progress_segment:hover {
4207
+ filter: brightness(1.1);
4208
+ }
4209
+ .rpc_seg_progress_legend {
4210
+ display: flex;
4211
+ flex-wrap: wrap;
4212
+ align-items: center;
4213
+ gap: 16px;
4214
+ font-size: 12px;
4215
+ color: #595959;
4216
+ }
4217
+ .rpc_seg_progress_legend_item {
4218
+ display: flex;
4219
+ align-items: center;
4220
+ gap: 6px;
4221
+ }
4222
+ .rpc_seg_progress_dot {
4223
+ width: 8px;
4224
+ height: 8px;
4225
+ border-radius: 50%;
4226
+ }
4227
+
4228
+ /* HoverCard/index.less */
4229
+ .rpc_hover_card {
4230
+ position: relative;
4231
+ display: inline-block;
4232
+ box-sizing: border-box;
4233
+ }
4234
+ .rpc_hover_card_popover {
4235
+ position: absolute;
4236
+ top: 100%;
4237
+ left: 0;
4238
+ margin-top: 8px;
4239
+ width: 280px;
4240
+ background: #ffffff;
4241
+ border-radius: 10px;
4242
+ box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
4243
+ border: 1px solid #f0f0f0;
4244
+ padding: 14px;
4245
+ z-index: 1000;
4246
+ animation: rpcHoverCardFade 0.18s cubic-bezier(0.25, 1, 0.5, 1);
4247
+ }
4248
+ @keyframes rpcHoverCardFade {
4249
+ from {
4250
+ opacity: 0;
4251
+ transform: translateY(6px);
4252
+ }
4253
+ to {
4254
+ opacity: 1;
4255
+ transform: translateY(0);
4256
+ }
4257
+ }
4258
+
4259
+ /* TreeTransfer/index.less */
4260
+ .rpc_tree_transfer {
4261
+ display: flex;
4262
+ align-items: center;
4263
+ gap: 16px;
4264
+ box-sizing: border-box;
4265
+ user-select: none;
4266
+ }
4267
+ .rpc_tree_transfer_panel {
4268
+ width: 240px;
4269
+ height: 300px;
4270
+ border: 1px solid #d9d9d9;
4271
+ border-radius: 8px;
4272
+ background: #ffffff;
4273
+ display: flex;
4274
+ flex-direction: column;
4275
+ overflow: hidden;
4276
+ }
4277
+ .rpc_tree_transfer_header {
4278
+ padding: 8px 12px;
4279
+ border-bottom: 1px solid #f0f0f0;
4280
+ font-size: 13px;
4281
+ font-weight: 600;
4282
+ color: #262626;
4283
+ display: flex;
4284
+ align-items: center;
4285
+ justify-content: space-between;
4286
+ background: #fafafa;
4287
+ }
4288
+ .rpc_tree_transfer_body {
4289
+ flex: 1;
4290
+ overflow-y: auto;
4291
+ padding: 8px 12px;
4292
+ display: flex;
4293
+ flex-direction: column;
4294
+ gap: 6px;
4295
+ font-size: 13px;
4296
+ }
4297
+ .rpc_tree_transfer_tree_item {
4298
+ display: flex;
4299
+ align-items: center;
4300
+ gap: 6px;
4301
+ }
4302
+ .rpc_tree_transfer_tree_child {
4303
+ padding-left: 18px;
4304
+ }
4305
+ .rpc_tree_transfer_target_item {
4306
+ display: flex;
4307
+ align-items: center;
4308
+ justify-content: space-between;
4309
+ padding: 4px 6px;
4310
+ border-radius: 4px;
4311
+ }
4312
+ .rpc_tree_transfer_target_item:hover {
4313
+ background: #fafafa;
4314
+ }
4315
+ .rpc_tree_transfer_del_btn {
4316
+ background: none;
4317
+ border: none;
4318
+ color: #8c8c8c;
4319
+ cursor: pointer;
4320
+ font-size: 12px;
4321
+ }
4322
+ .rpc_tree_transfer_del_btn:hover {
4323
+ color: #ff4d4f;
4324
+ }
4325
+
4326
+ /* NumberStepper/index.less */
4327
+ .rpc_num_stepper {
4328
+ display: inline-flex;
4329
+ align-items: center;
4330
+ border: 1px solid #d9d9d9;
4331
+ border-radius: 6px;
4332
+ background: #ffffff;
4333
+ overflow: hidden;
4334
+ user-select: none;
4335
+ box-sizing: border-box;
4336
+ }
4337
+ .rpc_num_stepper_btn {
4338
+ width: 32px;
4339
+ height: 32px;
4340
+ border: none;
4341
+ background: #fafafa;
4342
+ color: #595959;
4343
+ font-size: 16px;
4344
+ cursor: pointer;
4345
+ display: flex;
4346
+ align-items: center;
4347
+ justify-content: center;
4348
+ transition: all 0.15s;
4349
+ }
4350
+ .rpc_num_stepper_btn:hover:not(:disabled) {
4351
+ background: #f0f0f0;
4352
+ color: #1677ff;
4353
+ }
4354
+ .rpc_num_stepper_btn:disabled {
4355
+ color: #bfbfbf;
4356
+ cursor: not-allowed;
4357
+ }
4358
+ .rpc_num_stepper_input {
4359
+ width: 48px;
4360
+ height: 32px;
4361
+ border: none;
4362
+ border-left: 1px solid #f0f0f0;
4363
+ border-right: 1px solid #f0f0f0;
4364
+ text-align: center;
4365
+ font-size: 13px;
4366
+ font-weight: 600;
4367
+ color: #262626;
4368
+ outline: none;
4369
+ }
4370
+
4371
+ /* JsonTree/index.less */
4372
+ .rpc_json_tree {
4373
+ font-family: monospace;
4374
+ font-size: 13px;
4375
+ line-height: 1.6;
4376
+ background: #1e1e1e;
4377
+ color: #d4d4d4;
4378
+ padding: 12px 16px;
4379
+ border-radius: 8px;
4380
+ overflow-x: auto;
4381
+ box-sizing: border-box;
4382
+ user-select: text;
4383
+ }
4384
+ .rpc_json_tree_node {
4385
+ margin-left: 14px;
4386
+ }
4387
+ .rpc_json_tree_toggle {
4388
+ cursor: pointer;
4389
+ display: inline-block;
4390
+ width: 14px;
4391
+ color: #858585;
4392
+ user-select: none;
4393
+ transition: transform 0.15s;
4394
+ }
4395
+ .rpc_json_tree_toggle_collapsed {
4396
+ transform: rotate(-90deg);
4397
+ }
4398
+ .rpc_json_tree_key {
4399
+ color: #9cdcfe;
4400
+ font-weight: 500;
4401
+ }
4402
+ .rpc_json_tree_colon {
4403
+ color: #d4d4d4;
4404
+ margin-right: 6px;
4405
+ }
4406
+ .rpc_json_tree_string {
4407
+ color: #ce9178;
4408
+ }
4409
+ .rpc_json_tree_number {
4410
+ color: #b5cea8;
4411
+ }
4412
+ .rpc_json_tree_boolean {
4413
+ color: #569cd6;
4414
+ font-weight: 600;
4415
+ }
4416
+ .rpc_json_tree_null {
4417
+ color: #808080;
4418
+ font-style: italic;
4419
+ }
4420
+ .rpc_json_tree_bracket {
4421
+ color: #d4d4d4;
4422
+ }
4423
+ .rpc_json_tree_count {
4424
+ color: #6a9955;
4425
+ font-size: 11px;
4426
+ margin-left: 6px;
4427
+ }
4428
+
4429
+ /* CodeSnippet/index.less */
4430
+ .rpc_code_snippet {
4431
+ background: #141414;
4432
+ border-radius: 8px;
4433
+ border: 1px solid #303030;
4434
+ overflow: hidden;
4435
+ font-family: monospace;
4436
+ font-size: 13px;
4437
+ box-sizing: border-box;
4438
+ user-select: text;
4439
+ }
4440
+ .rpc_code_snippet_top_bar {
4441
+ display: flex;
4442
+ align-items: center;
4443
+ justify-content: space-between;
4444
+ padding: 8px 12px;
4445
+ background: #1f1f1f;
4446
+ border-bottom: 1px solid #303030;
4447
+ user-select: none;
4448
+ }
4449
+ .rpc_code_snippet_dots {
4450
+ display: flex;
4451
+ gap: 6px;
4452
+ }
4453
+ .rpc_code_snippet_dot {
4454
+ width: 10px;
4455
+ height: 10px;
4456
+ border-radius: 50%;
4457
+ }
4458
+ .rpc_code_snippet_dot_red {
4459
+ background: #ff5f56;
4460
+ }
4461
+ .rpc_code_snippet_dot_yellow {
4462
+ background: #ffbd2e;
4463
+ }
4464
+ .rpc_code_snippet_dot_green {
4465
+ background: #27c93f;
4466
+ }
4467
+ .rpc_code_snippet_lang {
4468
+ font-size: 11px;
4469
+ color: #8c8c8c;
4470
+ text-transform: uppercase;
4471
+ font-weight: 600;
4472
+ }
4473
+ .rpc_code_snippet_copy_btn {
4474
+ background: none;
4475
+ border: none;
4476
+ color: #8c8c8c;
4477
+ cursor: pointer;
4478
+ font-size: 12px;
4479
+ transition: color 0.15s;
4480
+ }
4481
+ .rpc_code_snippet_copy_btn:hover {
4482
+ color: #ffffff;
4483
+ }
4484
+ .rpc_code_snippet_content {
4485
+ padding: 12px 16px;
4486
+ overflow-x: auto;
4487
+ color: #e6e6e6;
4488
+ line-height: 1.5;
4489
+ margin: 0;
4490
+ }
4491
+
4492
+ /* MiniSparkline/index.less */
4493
+ .rpc_mini_sparkline {
4494
+ display: inline-block;
4495
+ vertical-align: middle;
4496
+ user-select: none;
4497
+ box-sizing: border-box;
4498
+ }
4499
+ .rpc_mini_sparkline svg {
4500
+ display: block;
4501
+ }
4502
+
4503
+ /* FileDropZone/index.less */
4504
+ .rpc_file_dropzone {
4505
+ border: 2px dashed #d9d9d9;
4506
+ border-radius: 12px;
4507
+ background: #fafafa;
4508
+ padding: 32px 20px;
4509
+ text-align: center;
4510
+ cursor: pointer;
4511
+ transition: all 0.2s;
4512
+ display: flex;
4513
+ flex-direction: column;
4514
+ align-items: center;
4515
+ justify-content: center;
4516
+ gap: 8px;
4517
+ user-select: none;
4518
+ box-sizing: border-box;
4519
+ }
4520
+ .rpc_file_dropzone:hover {
4521
+ border-color: #1677ff;
4522
+ background: #f0f7ff;
4523
+ }
4524
+ .rpc_file_dropzone_active {
4525
+ border-color: #1677ff;
4526
+ background: #e6f4ff;
4527
+ box-shadow: 0 0 16px rgba(22, 119, 255, 0.2);
4528
+ }
4529
+ .rpc_file_dropzone_icon {
4530
+ font-size: 36px;
4531
+ }
4532
+ .rpc_file_dropzone_title {
4533
+ font-size: 14px;
4534
+ font-weight: 600;
4535
+ color: #262626;
4536
+ }
4537
+ .rpc_file_dropzone_hint {
4538
+ font-size: 12px;
4539
+ color: #8c8c8c;
4540
+ }
4541
+
4542
+ /* CascadeDrawer/index.less */
4543
+ .rpc_cascade_drawer {
4544
+ position: fixed;
4545
+ top: 0;
4546
+ left: 0;
4547
+ right: 0;
4548
+ bottom: 0;
4549
+ z-index: 1000;
4550
+ box-sizing: border-box;
4551
+ }
4552
+ .rpc_cascade_drawer_mask {
4553
+ position: absolute;
4554
+ top: 0;
4555
+ left: 0;
4556
+ right: 0;
4557
+ bottom: 0;
4558
+ background: rgba(0, 0, 0, 0.45);
4559
+ }
4560
+ .rpc_cascade_drawer_content {
4561
+ position: absolute;
4562
+ top: 0;
4563
+ right: 0;
4564
+ bottom: 0;
4565
+ width: 440px;
4566
+ background: #ffffff;
4567
+ box-shadow: -6px 0 24px rgba(0, 0, 0, 0.15);
4568
+ display: flex;
4569
+ flex-direction: column;
4570
+ overflow: hidden;
4571
+ }
4572
+ .rpc_cascade_drawer_header {
4573
+ padding: 14px 20px;
4574
+ border-bottom: 1px solid #f0f0f0;
4575
+ display: flex;
4576
+ align-items: center;
4577
+ justify-content: space-between;
4578
+ }
4579
+ .rpc_cascade_drawer_breadcrumbs {
4580
+ display: flex;
4581
+ align-items: center;
4582
+ gap: 6px;
4583
+ font-size: 14px;
4584
+ font-weight: 600;
4585
+ color: #262626;
4586
+ }
4587
+ .rpc_cascade_drawer_crumb_btn {
4588
+ background: none;
4589
+ border: none;
4590
+ color: #1677ff;
4591
+ cursor: pointer;
4592
+ font-size: inherit;
4593
+ font-weight: inherit;
4594
+ padding: 0;
4595
+ }
4596
+ .rpc_cascade_drawer_crumb_btn:hover {
4597
+ text-decoration: underline;
4598
+ }
4599
+ .rpc_cascade_drawer_close_btn {
4600
+ background: none;
4601
+ border: none;
4602
+ color: #8c8c8c;
4603
+ cursor: pointer;
4604
+ font-size: 16px;
4605
+ }
4606
+ .rpc_cascade_drawer_close_btn:hover {
4607
+ color: #262626;
4608
+ }
4609
+ .rpc_cascade_drawer_body {
4610
+ flex: 1;
4611
+ overflow-y: auto;
4612
+ padding: 20px;
4613
+ }
4614
+
4615
+ /* DualRangeSlider/index.less */
4616
+ .rpc_dual_slider {
4617
+ position: relative;
4618
+ width: 100%;
4619
+ padding: 10px 0;
4620
+ box-sizing: border-box;
4621
+ user-select: none;
4622
+ }
4623
+ .rpc_dual_slider_track {
4624
+ position: relative;
4625
+ height: 6px;
4626
+ background: #f0f0f0;
4627
+ border-radius: 3px;
4628
+ }
4629
+ .rpc_dual_slider_highlight {
4630
+ position: absolute;
4631
+ top: 0;
4632
+ height: 100%;
4633
+ background: #1677ff;
4634
+ border-radius: 3px;
4635
+ }
4636
+ .rpc_dual_slider_thumb {
4637
+ position: absolute;
4638
+ top: 50%;
4639
+ transform: translate(-50%, -50%);
4640
+ width: 16px;
4641
+ height: 16px;
4642
+ border-radius: 50%;
4643
+ background: #ffffff;
4644
+ border: 2px solid #1677ff;
4645
+ box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
4646
+ cursor: grab;
4647
+ transition: transform 0.1s;
4648
+ }
4649
+ .rpc_dual_slider_thumb:hover {
4650
+ transform: translate(-50%, -50%) scale(1.15);
4651
+ }
4652
+ .rpc_dual_slider_thumb:active {
4653
+ cursor: grabbing;
4654
+ }
4655
+
4656
+ /* FilterChips/index.less */
4657
+ .rpc_filter_chips {
4658
+ display: flex;
4659
+ align-items: center;
4660
+ flex-wrap: wrap;
4661
+ gap: 8px;
4662
+ box-sizing: border-box;
4663
+ user-select: none;
4664
+ }
4665
+ .rpc_filter_chips_chip {
4666
+ display: inline-flex;
4667
+ align-items: center;
4668
+ gap: 6px;
4669
+ background: #f5f5f5;
4670
+ border: 1px solid #e8e8e8;
4671
+ border-radius: 16px;
4672
+ padding: 3px 10px;
4673
+ font-size: 12px;
4674
+ color: #595959;
4675
+ transition: all 0.15s;
4676
+ }
4677
+ .rpc_filter_chips_chip:hover {
4678
+ border-color: #d9d9d9;
4679
+ background: #fafafa;
4680
+ }
4681
+ .rpc_filter_chips_label {
4682
+ color: #8c8c8c;
4683
+ }
4684
+ .rpc_filter_chips_val {
4685
+ color: #262626;
4686
+ font-weight: 500;
4687
+ }
4688
+ .rpc_filter_chips_close {
4689
+ cursor: pointer;
4690
+ font-size: 11px;
4691
+ color: #8c8c8c;
4692
+ }
4693
+ .rpc_filter_chips_close:hover {
4694
+ color: #ff4d4f;
4695
+ }
4696
+ .rpc_filter_chips_clear_all {
4697
+ background: none;
4698
+ border: none;
4699
+ color: #1677ff;
4700
+ font-size: 12px;
4701
+ cursor: pointer;
4702
+ padding: 0 4px;
4703
+ }
4704
+ .rpc_filter_chips_clear_all:hover {
4705
+ text-decoration: underline;
4706
+ }
4707
+
4708
+ /* AnnouncementBar/index.less */
4709
+ .rpc_announcement_bar {
4710
+ width: 100%;
4711
+ background:
4712
+ linear-gradient(
4713
+ 90deg,
4714
+ #1677ff 0%,
4715
+ #722ed1 100%);
4716
+ color: #ffffff;
4717
+ padding: 8px 16px;
4718
+ display: flex;
4719
+ align-items: center;
4720
+ justify-content: center;
4721
+ position: relative;
4722
+ font-size: 13px;
4723
+ font-weight: 500;
4724
+ box-sizing: border-box;
4725
+ user-select: none;
4726
+ }
4727
+ .rpc_announcement_bar_content {
4728
+ display: flex;
4729
+ align-items: center;
4730
+ gap: 8px;
4731
+ }
4732
+ .rpc_announcement_bar_close {
4733
+ position: absolute;
4734
+ right: 16px;
4735
+ background: none;
4736
+ border: none;
4737
+ color: rgba(255, 255, 255, 0.8);
4738
+ cursor: pointer;
4739
+ font-size: 14px;
4740
+ }
4741
+ .rpc_announcement_bar_close:hover {
4742
+ color: #ffffff;
4743
+ }
4744
+
4745
+ /* JsonDiffViewer/index.less */
4746
+ .rpc_json_diff {
4747
+ background: #1e1e1e;
4748
+ color: #d4d4d4;
4749
+ font-family: monospace;
4750
+ font-size: 13px;
4751
+ line-height: 1.6;
4752
+ padding: 14px 18px;
4753
+ border-radius: 8px;
4754
+ overflow-x: auto;
4755
+ box-sizing: border-box;
4756
+ user-select: text;
4757
+ }
4758
+ .rpc_json_diff_row {
4759
+ display: flex;
4760
+ align-items: center;
4761
+ gap: 8px;
4762
+ padding: 2px 4px;
4763
+ border-radius: 4px;
4764
+ }
4765
+ .rpc_json_diff_row_added {
4766
+ background: rgba(82, 196, 26, 0.15);
4767
+ color: #73d13d;
4768
+ }
4769
+ .rpc_json_diff_row_removed {
4770
+ background: rgba(255, 77, 79, 0.15);
4771
+ color: #ff7875;
4772
+ text-decoration: line-through;
4773
+ }
4774
+ .rpc_json_diff_row_modified {
4775
+ background: rgba(250, 173, 20, 0.15);
4776
+ color: #ffc53d;
4777
+ }
4778
+ .rpc_json_diff_row_unchanged {
4779
+ color: #8c8c8c;
4780
+ }
4781
+ .rpc_json_diff_sign {
4782
+ width: 14px;
4783
+ font-weight: 700;
4784
+ }
4785
+ .rpc_json_diff_key {
4786
+ color: #9cdcfe;
4787
+ }
4788
+ .rpc_json_diff_arrow {
4789
+ color: #8c8c8c;
4790
+ margin: 0 4px;
4791
+ }
196
4792
  /*# sourceMappingURL=index.css.map */