@lijinmei-810/dev-inspector 0.1.2 → 0.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.
@@ -291,6 +291,10 @@
291
291
  overflow: hidden;
292
292
  }
293
293
 
294
+ .di-panel--workbench-open {
295
+ z-index: 2147483646;
296
+ }
297
+
294
298
  /* ── 顶部 ── */
295
299
  /* 选择元素模式下面板内 hover 高亮 */
296
300
  .di-panel--picking .di-body * { cursor: crosshair !important; }
@@ -323,119 +327,3124 @@
323
327
  line-height: 1;
324
328
  padding: 0;
325
329
  }
326
- .di-head-icon-btn:hover:not(:disabled),
327
- .di-head-icon-btn:focus-visible:not(:disabled) {
328
- background: #faf5ff;
330
+ .di-head-icon-btn:hover:not(:disabled),
331
+ .di-head-icon-btn:focus-visible:not(:disabled) {
332
+ background: #faf5ff;
333
+ border-color: #c4b5fd;
334
+ color: #7c3aed;
335
+ outline: none;
336
+ box-shadow: 0 1px 3px rgba(124,58,237,0.12);
337
+ }
338
+ .di-head-icon-btn:disabled {
339
+ background: #fff;
340
+ border-color: #eef2f7;
341
+ color: #cbd5e1;
342
+ cursor: not-allowed;
343
+ box-shadow: none;
344
+ }
345
+ .di-head-icon-btn svg {
346
+ width: 15px;
347
+ height: 15px;
348
+ flex: 0 0 auto;
349
+ }
350
+ .di-head-right { display: flex; align-items: center; gap: 8px; }
351
+ .di-title { font-size: 15px; font-weight: 700; color: #111827; }
352
+ .di-badge-dev {
353
+ display: inline-flex;
354
+ height: 22px;
355
+ align-items: center;
356
+ padding: 0 7px;
357
+ border: 1px solid #ede9fe;
358
+ border-radius: 6px;
359
+ background: #faf5ff;
360
+ color: #7c3aed;
361
+ font-size: 10px;
362
+ font-weight: 850;
363
+ line-height: 1;
364
+ letter-spacing: 0;
365
+ white-space: nowrap;
366
+ cursor: default;
367
+ user-select: none;
368
+ }
369
+ .di-spec-link {
370
+ background: none;
371
+ border: none;
372
+ color: #7c3aed;
373
+ font-size: 12px;
374
+ font-family: inherit;
375
+ cursor: pointer;
376
+ padding: 0;
377
+ }
378
+ .di-spec-link:hover { text-decoration: underline; }
379
+
380
+ .di-library-trigger {
381
+ display: inline-flex;
382
+ align-items: center;
383
+ justify-content: center;
384
+ gap: 4px;
385
+ height: 26px;
386
+ padding: 0 8px;
387
+ border: 1px solid #ede9fe;
388
+ border-radius: 7px;
389
+ background: #faf5ff;
390
+ color: #7c3aed;
391
+ font-family: inherit;
392
+ font-size: 11px;
393
+ font-weight: 800;
394
+ line-height: 1;
395
+ white-space: nowrap;
396
+ transition: background 0.12s, border-color 0.12s, color 0.12s, box-shadow 0.12s;
397
+ }
398
+
399
+ .di-library-trigger:hover,
400
+ .di-library-trigger:focus-visible,
401
+ .di-library-trigger--on {
402
+ border-color: #c4b5fd;
403
+ background: #f5f3ff;
404
+ color: #6d28d9;
405
+ outline: none;
406
+ box-shadow: 0 1px 3px rgba(124, 58, 237, 0.12);
407
+ }
408
+
409
+ .di-library-layer {
410
+ position: absolute;
411
+ z-index: 4;
412
+ inset: 48px 0 0;
413
+ display: flex;
414
+ min-height: 0;
415
+ padding: 10px 14px;
416
+ background: rgba(255, 255, 255, 0.82);
417
+ backdrop-filter: blur(2px);
418
+ box-sizing: border-box;
419
+ overflow: hidden;
420
+ }
421
+
422
+ .di-library-drawer {
423
+ display: flex;
424
+ flex-direction: column;
425
+ gap: 10px;
426
+ width: 100%;
427
+ height: 100%;
428
+ min-height: 0;
429
+ max-height: 100%;
430
+ overflow: hidden;
431
+ padding: 10px;
432
+ border: 1px solid #e5e7eb;
433
+ border-radius: 12px;
434
+ background: #fff;
435
+ box-shadow: 0 12px 34px rgba(15, 23, 42, 0.14), 0 2px 10px rgba(15, 23, 42, 0.08);
436
+ box-sizing: border-box;
437
+ }
438
+
439
+ .di-library-head {
440
+ display: flex;
441
+ align-items: center;
442
+ justify-content: space-between;
443
+ gap: 8px;
444
+ flex: 0 0 auto;
445
+ }
446
+
447
+ .di-library-title {
448
+ display: inline-flex;
449
+ align-items: center;
450
+ gap: 6px;
451
+ min-width: 0;
452
+ color: #7c3aed;
453
+ font-size: 13px;
454
+ font-weight: 850;
455
+ }
456
+
457
+ .di-library-title span {
458
+ color: #94a3b8;
459
+ font-size: 11px;
460
+ font-weight: 800;
461
+ }
462
+
463
+ .di-library-head-actions {
464
+ display: flex;
465
+ align-items: center;
466
+ gap: 6px;
467
+ }
468
+
469
+ .di-library-workbench-trigger,
470
+ .di-library-workbench-soft-btn {
471
+ height: 26px;
472
+ padding: 0 9px;
473
+ border: 1px solid #e5e7eb;
474
+ border-radius: 7px;
475
+ background: #fff;
476
+ color: #64748b;
477
+ font-family: inherit;
478
+ font-size: 11px;
479
+ font-weight: 850;
480
+ cursor: pointer;
481
+ }
482
+
483
+ .di-library-workbench-trigger:hover,
484
+ .di-library-workbench-trigger:focus-visible,
485
+ .di-library-workbench-soft-btn:hover,
486
+ .di-library-workbench-soft-btn:focus-visible {
487
+ border-color: #c4b5fd;
488
+ background: #faf5ff;
489
+ color: #7c3aed;
490
+ outline: none;
491
+ }
492
+
493
+ .di-library-workbench-layer {
494
+ position: fixed;
495
+ z-index: 2147483647;
496
+ inset: 0;
497
+ display: flex;
498
+ min-width: 0;
499
+ min-height: 0;
500
+ padding: 0;
501
+ background: #f8fafc;
502
+ font-family: "PingFang SC", system-ui, sans-serif;
503
+ box-sizing: border-box;
504
+ }
505
+
506
+ .di-library-workbench {
507
+ display: flex;
508
+ flex-direction: column;
509
+ width: 100%;
510
+ min-width: 0;
511
+ min-height: 0;
512
+ border: 0;
513
+ border-radius: 0;
514
+ background: #fff;
515
+ box-shadow: none;
516
+ overflow: hidden;
517
+ }
518
+
519
+ .di-library-workbench-head {
520
+ display: flex;
521
+ align-items: center;
522
+ justify-content: space-between;
523
+ gap: 16px;
524
+ flex: 0 0 auto;
525
+ min-height: 72px;
526
+ padding: 14px 22px;
527
+ border-bottom: 1px solid #eef2f7;
528
+ background: #fff;
529
+ }
530
+
531
+ .di-library-workbench-title {
532
+ display: flex;
533
+ align-items: center;
534
+ gap: 10px;
535
+ min-width: 0;
536
+ color: #7c3aed;
537
+ }
538
+
539
+ .di-library-workbench-title div {
540
+ display: grid;
541
+ gap: 2px;
542
+ min-width: 0;
543
+ }
544
+
545
+ .di-library-workbench-title strong {
546
+ color: #111827;
547
+ font-size: 18px;
548
+ font-weight: 900;
549
+ line-height: 1.1;
550
+ }
551
+
552
+ .di-library-workbench-title span {
553
+ color: #64748b;
554
+ font-size: 12px;
555
+ font-weight: 750;
556
+ }
557
+
558
+ .di-library-workbench-head-actions {
559
+ display: flex;
560
+ align-items: center;
561
+ gap: 8px;
562
+ }
563
+
564
+ .di-library-workbench-grid {
565
+ display: grid;
566
+ grid-template-columns: 220px minmax(0, 1fr) 286px;
567
+ gap: 0;
568
+ min-height: 0;
569
+ flex: 1 1 auto;
570
+ }
571
+
572
+ .di-library-workbench-nav,
573
+ .di-library-workbench-detail {
574
+ min-height: 0;
575
+ overflow-y: auto;
576
+ padding: 18px;
577
+ background: #f8fafc;
578
+ }
579
+
580
+ .di-library-workbench-nav {
581
+ border-right: 1px solid #eef2f7;
582
+ }
583
+
584
+ .di-library-workbench-detail {
585
+ border-left: 1px solid #eef2f7;
586
+ }
587
+
588
+ .di-library-workbench-main {
589
+ min-width: 0;
590
+ min-height: 0;
591
+ display: flex;
592
+ flex-direction: column;
593
+ gap: 12px;
594
+ padding: 18px;
595
+ overflow: hidden;
596
+ background: #fff;
597
+ }
598
+
599
+ .di-library-workbench-brand {
600
+ display: grid;
601
+ gap: 4px;
602
+ margin-bottom: 18px;
603
+ }
604
+
605
+ .di-library-workbench-brand strong {
606
+ color: #7c3aed;
607
+ font-size: 18px;
608
+ font-weight: 950;
609
+ line-height: 1.05;
610
+ }
611
+
612
+ .di-library-workbench-brand span {
613
+ color: #94a3b8;
614
+ font-size: 11px;
615
+ font-weight: 850;
616
+ }
617
+
618
+ .di-library-workbench-tabs,
619
+ .di-library-workbench-filter-list {
620
+ display: grid;
621
+ gap: 8px;
622
+ }
623
+
624
+ .di-library-workbench-tab,
625
+ .di-library-workbench-filter {
626
+ min-width: 0;
627
+ display: flex;
628
+ align-items: center;
629
+ justify-content: space-between;
630
+ gap: 8px;
631
+ min-height: 38px;
632
+ padding: 0 10px;
633
+ border: 1px solid #e5e7eb;
634
+ border-radius: 10px;
635
+ background: #fff;
636
+ color: #334155;
637
+ font-family: inherit;
638
+ font-size: 12px;
639
+ font-weight: 850;
640
+ cursor: pointer;
641
+ }
642
+
643
+ .di-library-workbench-tab > span {
644
+ display: grid;
645
+ gap: 2px;
646
+ min-width: 0;
647
+ color: inherit;
648
+ }
649
+
650
+ .di-library-workbench-tab small {
651
+ color: #94a3b8;
652
+ font-size: 10px;
653
+ font-weight: 800;
654
+ }
655
+
656
+ .di-library-workbench-tab > strong,
657
+ .di-library-workbench-filter strong {
658
+ color: #94a3b8;
659
+ font-size: 11px;
660
+ font-weight: 850;
661
+ }
662
+
663
+ .di-library-workbench-tab:hover,
664
+ .di-library-workbench-tab:focus-visible,
665
+ .di-library-workbench-tab--active,
666
+ .di-library-workbench-filter:hover,
667
+ .di-library-workbench-filter:focus-visible,
668
+ .di-library-workbench-filter--active {
669
+ border-color: #c4b5fd;
670
+ background: #faf5ff;
671
+ color: #7c3aed;
672
+ outline: none;
673
+ }
674
+
675
+ .di-library-workbench-search {
676
+ display: grid;
677
+ gap: 6px;
678
+ margin: 14px 0;
679
+ }
680
+
681
+ .di-library-workbench-search span,
682
+ .di-library-workbench-nav-title,
683
+ .di-library-edit-panel label span,
684
+ .di-library-detail-kicker {
685
+ color: #94a3b8;
686
+ font-size: 10px;
687
+ font-weight: 850;
688
+ line-height: 1.2;
689
+ }
690
+
691
+ .di-library-workbench-search input,
692
+ .di-library-edit-panel input,
693
+ .di-library-edit-panel select {
694
+ width: 100%;
695
+ min-width: 0;
696
+ height: 34px;
697
+ border: 1px solid #e5e7eb;
698
+ border-radius: 8px;
699
+ background: #fff;
700
+ color: #111827;
701
+ padding: 0 10px;
702
+ font-family: inherit;
703
+ font-size: 12px;
704
+ font-weight: 750;
705
+ outline: none;
706
+ box-sizing: border-box;
707
+ }
708
+
709
+ .di-library-workbench-search input:focus,
710
+ .di-library-edit-panel input:focus,
711
+ .di-library-edit-panel select:focus {
712
+ border-color: #c4b5fd;
713
+ box-shadow: 0 0 0 1px #c4b5fd;
714
+ }
715
+
716
+ .di-library-workbench-nav-title {
717
+ margin: 14px 0 8px;
718
+ }
719
+
720
+ .di-library-workbench-note {
721
+ margin-top: 14px;
722
+ padding: 10px;
723
+ border-radius: 10px;
724
+ background: #fff;
725
+ color: #64748b;
726
+ font-size: 11px;
727
+ font-weight: 700;
728
+ line-height: 1.4;
729
+ }
730
+
731
+ .di-library-workbench-toolbar {
732
+ display: flex;
733
+ align-items: center;
734
+ justify-content: space-between;
735
+ gap: 12px;
736
+ flex: 0 0 auto;
737
+ }
738
+
739
+ .di-library-workbench-toolbar div {
740
+ display: flex;
741
+ align-items: baseline;
742
+ gap: 6px;
743
+ min-width: 0;
744
+ }
745
+
746
+ .di-library-workbench-toolbar strong {
747
+ color: #111827;
748
+ font-size: 24px;
749
+ font-weight: 950;
750
+ line-height: 1;
751
+ }
752
+
753
+ .di-library-workbench-toolbar span {
754
+ color: #64748b;
755
+ font-size: 12px;
756
+ font-weight: 800;
757
+ }
758
+
759
+ .di-library-workbench-toolbar > .di-btn-save,
760
+ .di-library-workbench-toolbar > .di-library-workbench-soft-btn {
761
+ flex: 0 0 auto;
762
+ width: auto;
763
+ min-width: 104px;
764
+ height: 36px;
765
+ }
766
+
767
+ .di-library-workbench-table {
768
+ display: grid;
769
+ gap: 8px;
770
+ min-height: 0;
771
+ overflow: auto;
772
+ padding-right: 2px;
773
+ }
774
+
775
+ .di-library-workbench-table-head,
776
+ .di-library-workbench-row {
777
+ display: grid;
778
+ grid-template-columns: minmax(190px, 1.2fr) minmax(190px, 1fr) 110px 62px 196px;
779
+ align-items: center;
780
+ gap: 10px;
781
+ min-width: 760px;
782
+ }
783
+
784
+ .di-library-workbench-table-head--components,
785
+ .di-library-workbench-row--components {
786
+ grid-template-columns: minmax(190px, 1.1fr) minmax(250px, 1.5fr) 120px 210px;
787
+ }
788
+
789
+ .di-library-workbench-table-head--changes,
790
+ .di-library-workbench-row--changes {
791
+ grid-template-columns: minmax(210px, 1fr) minmax(320px, 1.6fr) 120px 180px;
792
+ }
793
+
794
+ .di-library-workbench-table-head--usage,
795
+ .di-library-workbench-row--usage {
796
+ grid-template-columns: minmax(210px, 1fr) minmax(260px, 1.4fr) 70px 230px;
797
+ }
798
+
799
+ .di-library-workbench-table-head {
800
+ min-height: 30px;
801
+ padding: 0 10px;
802
+ color: #94a3b8;
803
+ font-size: 10px;
804
+ font-weight: 900;
805
+ }
806
+
807
+ .di-library-workbench-row {
808
+ min-height: 68px;
809
+ padding: 9px 10px;
810
+ border: 1px solid #eef2f7;
811
+ border-radius: 12px;
812
+ background: #f8fafc;
813
+ cursor: pointer;
814
+ box-sizing: border-box;
815
+ }
816
+
817
+ .di-library-workbench-row:hover,
818
+ .di-library-workbench-row--selected {
819
+ border-color: #c4b5fd;
820
+ background: #faf5ff;
821
+ }
822
+
823
+ .di-library-workbench-token-cell,
824
+ .di-library-workbench-copy-cell {
825
+ min-width: 0;
826
+ display: flex;
827
+ align-items: center;
828
+ gap: 10px;
829
+ }
830
+
831
+ .di-library-workbench-token-cell div,
832
+ .di-library-workbench-copy-cell {
833
+ display: grid;
834
+ gap: 3px;
835
+ }
836
+
837
+ .di-library-workbench-token-cell strong {
838
+ min-width: 0;
839
+ color: #111827;
840
+ font-size: 13px;
841
+ font-weight: 900;
842
+ overflow: hidden;
843
+ text-overflow: ellipsis;
844
+ white-space: nowrap;
845
+ }
846
+
847
+ .di-library-workbench-token-cell small,
848
+ .di-library-workbench-copy-cell span {
849
+ min-width: 0;
850
+ color: #64748b;
851
+ font-size: 11px;
852
+ font-weight: 750;
853
+ overflow: hidden;
854
+ text-overflow: ellipsis;
855
+ white-space: nowrap;
856
+ }
857
+
858
+ .di-library-workbench-copy-cell code {
859
+ min-width: 0;
860
+ color: #334155;
861
+ font-size: 12px;
862
+ font-weight: 850;
863
+ overflow: hidden;
864
+ text-overflow: ellipsis;
865
+ white-space: nowrap;
866
+ }
867
+
868
+ .di-library-workbench-status,
869
+ .di-library-workbench-count {
870
+ justify-self: start;
871
+ color: #64748b;
872
+ font-size: 11px;
873
+ font-weight: 850;
874
+ }
875
+
876
+ .di-library-workbench-count {
877
+ width: 44px;
878
+ height: 30px;
879
+ border: 1px solid #e5e7eb;
880
+ border-radius: 8px;
881
+ background: #fff;
882
+ cursor: pointer;
883
+ }
884
+
885
+ .di-library-workbench-count:hover,
886
+ .di-library-workbench-count:focus-visible {
887
+ border-color: #c4b5fd;
888
+ color: #7c3aed;
889
+ outline: none;
890
+ }
891
+
892
+ .di-library-change-index {
893
+ display: inline-flex;
894
+ width: 26px;
895
+ height: 26px;
896
+ align-items: center;
897
+ justify-content: center;
898
+ border-radius: 9px;
899
+ background: #ede9fe;
900
+ color: #7c3aed;
901
+ font-size: 11px;
902
+ font-weight: 950;
903
+ }
904
+
905
+ .di-library-workbench-actions,
906
+ .di-library-detail-actions {
907
+ display: flex;
908
+ align-items: center;
909
+ gap: 6px;
910
+ min-width: 0;
911
+ flex-wrap: wrap;
912
+ }
913
+
914
+ .di-library-workbench-actions button,
915
+ .di-library-detail-actions button {
916
+ height: 28px;
917
+ padding: 0 8px;
918
+ border: 1px solid #e5e7eb;
919
+ border-radius: 8px;
920
+ background: #fff;
921
+ color: #334155;
922
+ font-family: inherit;
923
+ font-size: 11px;
924
+ font-weight: 850;
925
+ cursor: pointer;
926
+ }
927
+
928
+ .di-library-workbench-actions button:hover,
929
+ .di-library-workbench-actions button:focus-visible,
930
+ .di-library-detail-actions button:hover,
931
+ .di-library-detail-actions button:focus-visible {
932
+ border-color: #c4b5fd;
933
+ background: #fff;
934
+ color: #7c3aed;
935
+ outline: none;
936
+ }
937
+
938
+ .di-library-component-preview-grid {
939
+ min-height: 0;
940
+ overflow: auto;
941
+ display: grid;
942
+ grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr));
943
+ align-content: start;
944
+ gap: 12px;
945
+ padding-right: 2px;
946
+ }
947
+
948
+ .di-library-component-preview-card {
949
+ min-width: 0;
950
+ display: grid;
951
+ gap: 10px;
952
+ padding: 12px;
953
+ border: 1px solid #eef2f7;
954
+ border-radius: 14px;
955
+ background: #f8fafc;
956
+ color: #111827;
957
+ cursor: pointer;
958
+ box-sizing: border-box;
959
+ }
960
+
961
+ .di-library-component-preview-card:hover,
962
+ .di-library-component-preview-card:focus-visible,
963
+ .di-library-component-preview-card--selected {
964
+ border-color: #c4b5fd;
965
+ background: #faf5ff;
966
+ outline: none;
967
+ }
968
+
969
+ .di-library-component-preview-head {
970
+ min-width: 0;
971
+ display: flex;
972
+ align-items: flex-start;
973
+ justify-content: space-between;
974
+ gap: 10px;
975
+ }
976
+
977
+ .di-library-component-preview-head div {
978
+ min-width: 0;
979
+ display: grid;
980
+ gap: 3px;
981
+ }
982
+
983
+ .di-library-component-preview-head span {
984
+ color: #94a3b8;
985
+ font-size: 10px;
986
+ font-weight: 900;
987
+ line-height: 1.2;
988
+ }
989
+
990
+ .di-library-component-preview-head strong {
991
+ min-width: 0;
992
+ color: #111827;
993
+ font-size: 15px;
994
+ font-weight: 950;
995
+ line-height: 1.2;
996
+ overflow: hidden;
997
+ text-overflow: ellipsis;
998
+ white-space: nowrap;
999
+ }
1000
+
1001
+ .di-library-component-preview-head small {
1002
+ flex: 0 0 auto;
1003
+ max-width: 96px;
1004
+ padding: 4px 7px;
1005
+ border-radius: 999px;
1006
+ background: #fff;
1007
+ color: #64748b;
1008
+ font-size: 10px;
1009
+ font-weight: 850;
1010
+ line-height: 1;
1011
+ overflow: hidden;
1012
+ text-overflow: ellipsis;
1013
+ white-space: nowrap;
1014
+ }
1015
+
1016
+ .di-library-component-preview-stage {
1017
+ min-height: 128px;
1018
+ display: grid;
1019
+ place-items: center;
1020
+ padding: 16px;
1021
+ border: 1px solid #eef2f7;
1022
+ border-radius: 12px;
1023
+ background: #fff;
1024
+ box-sizing: border-box;
1025
+ }
1026
+
1027
+ .di-library-component-preview-copy {
1028
+ min-width: 0;
1029
+ display: grid;
1030
+ gap: 4px;
1031
+ }
1032
+
1033
+ .di-library-component-preview-copy span {
1034
+ color: #7c3aed;
1035
+ font-size: 11px;
1036
+ font-weight: 950;
1037
+ }
1038
+
1039
+ .di-library-component-preview-copy p {
1040
+ min-width: 0;
1041
+ margin: 0;
1042
+ color: #334155;
1043
+ font-size: 12px;
1044
+ font-weight: 800;
1045
+ line-height: 1.35;
1046
+ overflow: hidden;
1047
+ text-overflow: ellipsis;
1048
+ white-space: nowrap;
1049
+ }
1050
+
1051
+ .di-library-component-preview-copy code {
1052
+ min-width: 0;
1053
+ color: #64748b;
1054
+ font-size: 11px;
1055
+ font-weight: 800;
1056
+ overflow: hidden;
1057
+ text-overflow: ellipsis;
1058
+ white-space: nowrap;
1059
+ }
1060
+
1061
+ .di-library-component-preview-actions {
1062
+ display: flex;
1063
+ align-items: center;
1064
+ gap: 6px;
1065
+ flex-wrap: wrap;
1066
+ }
1067
+
1068
+ .di-library-component-preview-actions button {
1069
+ height: 28px;
1070
+ padding: 0 8px;
1071
+ border: 1px solid #e5e7eb;
1072
+ border-radius: 8px;
1073
+ background: #fff;
1074
+ color: #334155;
1075
+ font-family: inherit;
1076
+ font-size: 11px;
1077
+ font-weight: 850;
1078
+ cursor: pointer;
1079
+ }
1080
+
1081
+ .di-library-component-preview-actions button:hover,
1082
+ .di-library-component-preview-actions button:focus-visible {
1083
+ border-color: #c4b5fd;
1084
+ color: #7c3aed;
1085
+ outline: none;
1086
+ }
1087
+
1088
+ .di-library-real-preview {
1089
+ width: 100%;
1090
+ min-width: 0;
1091
+ display: grid;
1092
+ gap: 10px;
1093
+ }
1094
+
1095
+ .di-library-real-preview-group {
1096
+ min-width: 0;
1097
+ display: grid;
1098
+ gap: 6px;
1099
+ }
1100
+
1101
+ .di-library-real-preview-group-title {
1102
+ color: #94a3b8;
1103
+ font-size: 10px;
1104
+ font-weight: 900;
1105
+ line-height: 1.2;
1106
+ }
1107
+
1108
+ .di-library-real-preview-grid {
1109
+ min-width: 0;
1110
+ display: grid;
1111
+ grid-template-columns: repeat(auto-fit, minmax(112px, max-content));
1112
+ align-items: start;
1113
+ gap: 8px;
1114
+ }
1115
+
1116
+ .di-library-real-preview--detail .di-library-real-preview-grid {
1117
+ grid-template-columns: repeat(auto-fit, minmax(132px, max-content));
1118
+ }
1119
+
1120
+ .di-library-real-preview-item {
1121
+ min-width: 0;
1122
+ display: grid;
1123
+ gap: 6px;
1124
+ padding: 6px;
1125
+ border: 1px solid transparent;
1126
+ border-radius: 10px;
1127
+ cursor: pointer;
1128
+ box-sizing: border-box;
1129
+ }
1130
+
1131
+ .di-library-real-preview-item:hover,
1132
+ .di-library-real-preview-item:focus-visible,
1133
+ .di-library-real-preview-item--selected {
1134
+ border-color: #c4b5fd;
1135
+ background: #faf5ff;
1136
+ outline: none;
1137
+ }
1138
+
1139
+ .di-library-real-preview-item--selected {
1140
+ box-shadow: inset 0 0 0 1px #8b5cf6;
1141
+ }
1142
+
1143
+ .di-library-real-preview-slot {
1144
+ min-width: 0;
1145
+ min-height: 44px;
1146
+ display: flex;
1147
+ align-items: center;
1148
+ justify-content: flex-start;
1149
+ }
1150
+
1151
+ .di-library-real-preview-meta {
1152
+ min-width: 0;
1153
+ display: grid;
1154
+ gap: 2px;
1155
+ }
1156
+
1157
+ .di-library-real-preview-meta span {
1158
+ color: #334155;
1159
+ font-size: 10px;
1160
+ font-weight: 850;
1161
+ line-height: 1.2;
1162
+ }
1163
+
1164
+ .di-library-real-preview-meta small {
1165
+ max-width: 128px;
1166
+ color: #94a3b8;
1167
+ font-size: 9px;
1168
+ font-weight: 800;
1169
+ line-height: 1.2;
1170
+ overflow: hidden;
1171
+ text-overflow: ellipsis;
1172
+ white-space: nowrap;
1173
+ }
1174
+
1175
+ .di-library-preview-matrix {
1176
+ width: 100%;
1177
+ min-width: 0;
1178
+ display: grid;
1179
+ gap: 8px;
1180
+ overflow-x: auto;
1181
+ padding-bottom: 1px;
1182
+ overscroll-behavior-x: contain;
1183
+ }
1184
+
1185
+ .di-library-preview-matrix-head,
1186
+ .di-library-preview-matrix-row {
1187
+ display: grid;
1188
+ grid-template-columns: var(--di-library-matrix-columns);
1189
+ align-items: center;
1190
+ gap: 8px;
1191
+ min-width: max-content;
1192
+ }
1193
+
1194
+ .di-library-preview-matrix-head span,
1195
+ .di-library-preview-matrix-label {
1196
+ color: #94a3b8;
1197
+ font-size: 10px;
1198
+ font-weight: 900;
1199
+ line-height: 1.2;
1200
+ white-space: nowrap;
1201
+ }
1202
+
1203
+ .di-library-preview-matrix-label {
1204
+ color: #64748b;
1205
+ }
1206
+
1207
+ .di-library-preview-matrix--detail {
1208
+ gap: 10px;
1209
+ }
1210
+
1211
+ .di-library-preview-matrix--detail .di-library-preview-matrix-head,
1212
+ .di-library-preview-matrix--detail .di-library-preview-matrix-row {
1213
+ gap: 10px;
1214
+ }
1215
+
1216
+ .di-library-preview-button {
1217
+ display: inline-flex;
1218
+ align-items: center;
1219
+ justify-content: center;
1220
+ border-radius: 9px;
1221
+ font-size: 12px;
1222
+ font-weight: 900;
1223
+ line-height: 1;
1224
+ white-space: nowrap;
1225
+ box-sizing: border-box;
1226
+ }
1227
+
1228
+ .di-library-preview-button--primary {
1229
+ background: #7c3aed;
1230
+ color: #fff;
1231
+ }
1232
+
1233
+ .di-library-preview-button--secondary {
1234
+ border: 1px solid #e2e8f0;
1235
+ background: #fff;
1236
+ color: #334155;
1237
+ }
1238
+
1239
+ .di-library-preview-button--ghost {
1240
+ border: 1px solid #c4b5fd;
1241
+ background: #fff;
1242
+ color: #7c3aed;
1243
+ }
1244
+
1245
+ .di-library-preview-button--text {
1246
+ color: #7c3aed;
1247
+ }
1248
+
1249
+ .di-library-preview-badge {
1250
+ display: inline-flex;
1251
+ align-items: center;
1252
+ justify-content: center;
1253
+ min-height: 26px;
1254
+ padding: 0 10px;
1255
+ border-radius: 8px;
1256
+ font-size: 12px;
1257
+ font-weight: 900;
1258
+ white-space: nowrap;
1259
+ box-sizing: border-box;
1260
+ }
1261
+
1262
+ .di-library-preview-badge--default {
1263
+ background: #f1f5f9;
1264
+ color: #64748b;
1265
+ }
1266
+
1267
+ .di-library-preview-badge--progress {
1268
+ background: #dbeafe;
1269
+ color: #2563eb;
1270
+ }
1271
+
1272
+ .di-library-preview-badge--success {
1273
+ background: #dcfce7;
1274
+ color: #16a34a;
1275
+ }
1276
+
1277
+ .di-library-preview-badge--warning {
1278
+ background: #fef3c7;
1279
+ color: #d97706;
1280
+ }
1281
+
1282
+ .di-library-preview-badge--danger {
1283
+ background: #fee2e2;
1284
+ color: #dc2626;
1285
+ }
1286
+
1287
+ .di-library-preview-card-gallery {
1288
+ width: 100%;
1289
+ min-width: 0;
1290
+ display: grid;
1291
+ grid-template-columns: repeat(auto-fit, minmax(156px, 1fr));
1292
+ gap: 10px;
1293
+ }
1294
+
1295
+ .di-library-preview-card-gallery--detail {
1296
+ grid-template-columns: 1fr;
1297
+ }
1298
+
1299
+ .di-library-preview-card-sample {
1300
+ min-width: 0;
1301
+ display: grid;
1302
+ gap: 8px;
1303
+ padding: 14px;
1304
+ border: 1px solid #e2e8f0;
1305
+ border-radius: 12px;
1306
+ background: #fff;
1307
+ box-shadow: 0 14px 32px rgba(15, 23, 42, 0.08);
1308
+ box-sizing: border-box;
1309
+ }
1310
+
1311
+ .di-library-preview-card-sample span {
1312
+ justify-self: start;
1313
+ padding: 4px 8px;
1314
+ border-radius: 8px;
1315
+ background: #dbeafe;
1316
+ color: #2563eb;
1317
+ font-size: 11px;
1318
+ font-weight: 900;
1319
+ }
1320
+
1321
+ .di-library-preview-card-sample strong {
1322
+ color: #111827;
1323
+ font-size: 15px;
1324
+ font-weight: 950;
1325
+ }
1326
+
1327
+ .di-library-preview-card-sample p {
1328
+ margin: 0;
1329
+ color: #64748b;
1330
+ font-size: 12px;
1331
+ font-weight: 750;
1332
+ line-height: 1.4;
1333
+ }
1334
+
1335
+ .di-library-preview-card-sample--compact {
1336
+ gap: 5px;
1337
+ padding: 10px 12px;
1338
+ }
1339
+
1340
+ .di-library-preview-card-sample--floating {
1341
+ box-shadow: 0 22px 48px rgba(15, 23, 42, 0.16);
1342
+ }
1343
+
1344
+ .di-library-preview-card-sample--emphasis {
1345
+ border-color: #c4b5fd;
1346
+ background: #faf5ff;
1347
+ }
1348
+
1349
+ .di-library-preview-form-sample {
1350
+ width: min(100%, 240px);
1351
+ display: grid;
1352
+ grid-template-columns: minmax(0, 1fr) max-content;
1353
+ gap: 8px;
1354
+ align-items: center;
1355
+ }
1356
+
1357
+ .di-library-preview-form-sample span {
1358
+ grid-column: 1 / -1;
1359
+ color: #64748b;
1360
+ font-size: 11px;
1361
+ font-weight: 850;
1362
+ }
1363
+
1364
+ .di-library-preview-form-sample div {
1365
+ min-width: 0;
1366
+ height: 34px;
1367
+ display: flex;
1368
+ align-items: center;
1369
+ padding: 0 10px;
1370
+ border: 1px solid #e2e8f0;
1371
+ border-radius: 9px;
1372
+ color: #94a3b8;
1373
+ font-size: 12px;
1374
+ font-weight: 800;
1375
+ }
1376
+
1377
+ .di-library-preview-form-sample strong {
1378
+ height: 34px;
1379
+ display: inline-flex;
1380
+ align-items: center;
1381
+ justify-content: center;
1382
+ padding: 0 12px;
1383
+ border-radius: 9px;
1384
+ background: #7c3aed;
1385
+ color: #fff;
1386
+ font-size: 12px;
1387
+ font-weight: 900;
1388
+ }
1389
+
1390
+ .di-library-preview-icon-cell {
1391
+ width: 36px;
1392
+ height: 36px;
1393
+ display: inline-flex;
1394
+ align-items: center;
1395
+ justify-content: center;
1396
+ border: 1px solid #e2e8f0;
1397
+ border-radius: 10px;
1398
+ background: #fff;
1399
+ }
1400
+
1401
+ .di-library-preview-generic {
1402
+ width: min(100%, 220px);
1403
+ display: grid;
1404
+ justify-items: center;
1405
+ gap: 8px;
1406
+ color: #64748b;
1407
+ }
1408
+
1409
+ .di-library-preview-generic strong {
1410
+ color: #111827;
1411
+ font-size: 14px;
1412
+ font-weight: 950;
1413
+ }
1414
+
1415
+ .di-library-preview-generic span {
1416
+ max-width: 100%;
1417
+ color: #94a3b8;
1418
+ font-size: 11px;
1419
+ font-weight: 800;
1420
+ overflow: hidden;
1421
+ text-overflow: ellipsis;
1422
+ white-space: nowrap;
1423
+ }
1424
+
1425
+ .di-library-workbench-empty {
1426
+ padding: 18px;
1427
+ border-radius: 12px;
1428
+ background: #f8fafc;
1429
+ color: #64748b;
1430
+ font-size: 12px;
1431
+ font-weight: 750;
1432
+ text-align: center;
1433
+ }
1434
+
1435
+ .di-library-edit-panel,
1436
+ .di-library-detail-card {
1437
+ display: grid;
1438
+ gap: 12px;
1439
+ min-width: 0;
1440
+ }
1441
+
1442
+ .di-library-edit-head {
1443
+ display: flex;
1444
+ align-items: center;
1445
+ justify-content: space-between;
1446
+ gap: 8px;
1447
+ }
1448
+
1449
+ .di-library-edit-head strong,
1450
+ .di-library-detail-card h3 {
1451
+ margin: 0;
1452
+ color: #111827;
1453
+ font-size: 16px;
1454
+ font-weight: 950;
1455
+ }
1456
+
1457
+ .di-library-edit-panel label {
1458
+ display: grid;
1459
+ gap: 6px;
1460
+ }
1461
+
1462
+ .di-library-detail-preview {
1463
+ display: grid;
1464
+ grid-template-columns: max-content minmax(0, 1fr);
1465
+ align-items: center;
1466
+ gap: 10px;
1467
+ padding: 10px;
1468
+ border-radius: 12px;
1469
+ background: #fff;
1470
+ border: 1px solid #eef2f7;
1471
+ }
1472
+
1473
+ .di-library-detail-preview code {
1474
+ min-width: 0;
1475
+ color: #334155;
1476
+ font-size: 12px;
1477
+ font-weight: 850;
1478
+ overflow: hidden;
1479
+ text-overflow: ellipsis;
1480
+ white-space: nowrap;
1481
+ }
1482
+
1483
+ .di-library-detail-preview--component {
1484
+ display: block;
1485
+ padding: 0;
1486
+ overflow-x: auto;
1487
+ overflow-y: hidden;
1488
+ overscroll-behavior-x: contain;
1489
+ }
1490
+
1491
+ .di-library-detail-preview--component .di-library-component-preview-stage {
1492
+ min-height: 112px;
1493
+ border: 0;
1494
+ border-radius: 12px;
1495
+ }
1496
+
1497
+ .di-library-spec-preview {
1498
+ min-width: 0;
1499
+ display: grid;
1500
+ gap: 8px;
1501
+ padding: 14px;
1502
+ border-radius: 12px;
1503
+ background: #fff;
1504
+ box-sizing: border-box;
1505
+ }
1506
+
1507
+ .di-library-spec-preview-slot {
1508
+ min-width: 0;
1509
+ min-height: 56px;
1510
+ display: flex;
1511
+ align-items: center;
1512
+ }
1513
+
1514
+ .di-library-spec-preview-meta {
1515
+ min-width: 0;
1516
+ display: grid;
1517
+ gap: 3px;
1518
+ }
1519
+
1520
+ .di-library-spec-preview-meta span {
1521
+ color: #111827;
1522
+ font-size: 12px;
1523
+ font-weight: 900;
1524
+ line-height: 1.2;
1525
+ }
1526
+
1527
+ .di-library-spec-preview-meta small {
1528
+ color: #94a3b8;
1529
+ font-size: 10px;
1530
+ font-weight: 850;
1531
+ line-height: 1.2;
1532
+ overflow-wrap: anywhere;
1533
+ }
1534
+
1535
+ .di-library-spec-pills {
1536
+ min-width: 0;
1537
+ display: flex;
1538
+ align-items: center;
1539
+ gap: 6px;
1540
+ flex-wrap: wrap;
1541
+ }
1542
+
1543
+ .di-library-spec-pills span {
1544
+ display: inline-flex;
1545
+ min-height: 24px;
1546
+ align-items: center;
1547
+ padding: 0 8px;
1548
+ border: 1px solid #ddd6fe;
1549
+ border-radius: 999px;
1550
+ background: #f5f0ff;
1551
+ color: #7c3aed;
1552
+ font-size: 10px;
1553
+ font-weight: 900;
1554
+ }
1555
+
1556
+ .di-library-detail-card dl {
1557
+ display: grid;
1558
+ gap: 8px;
1559
+ margin: 0;
1560
+ }
1561
+
1562
+ .di-library-detail-card dl div {
1563
+ display: grid;
1564
+ gap: 4px;
1565
+ padding: 9px 10px;
1566
+ border-radius: 10px;
1567
+ background: #fff;
1568
+ border: 1px solid #eef2f7;
1569
+ }
1570
+
1571
+ .di-library-detail-card dt {
1572
+ color: #94a3b8;
1573
+ font-size: 10px;
1574
+ font-weight: 850;
1575
+ }
1576
+
1577
+ .di-library-detail-card dd {
1578
+ margin: 0;
1579
+ color: #334155;
1580
+ font-size: 12px;
1581
+ font-weight: 800;
1582
+ line-height: 1.35;
1583
+ overflow-wrap: anywhere;
1584
+ }
1585
+
1586
+ .di-library-basket-card {
1587
+ display: grid;
1588
+ gap: 10px;
1589
+ margin-top: 16px;
1590
+ padding: 14px;
1591
+ border: 1px solid #ddd6fe;
1592
+ border-radius: 14px;
1593
+ background: #f5f0ff;
1594
+ }
1595
+
1596
+ .di-library-basket-card div {
1597
+ display: flex;
1598
+ align-items: center;
1599
+ justify-content: space-between;
1600
+ gap: 10px;
1601
+ }
1602
+
1603
+ .di-library-basket-card span {
1604
+ color: #7c3aed;
1605
+ font-size: 12px;
1606
+ font-weight: 900;
1607
+ }
1608
+
1609
+ .di-library-basket-card strong {
1610
+ color: #111827;
1611
+ font-size: 24px;
1612
+ font-weight: 950;
1613
+ line-height: 1;
1614
+ }
1615
+
1616
+ .di-library-basket-card p {
1617
+ margin: 0;
1618
+ color: #64748b;
1619
+ font-size: 12px;
1620
+ font-weight: 750;
1621
+ line-height: 1.4;
1622
+ }
1623
+
1624
+ @media (max-width: 720px) {
1625
+ .di-library-workbench-layer {
1626
+ padding: 0;
1627
+ }
1628
+
1629
+ .di-library-workbench-grid {
1630
+ grid-template-columns: 1fr;
1631
+ }
1632
+
1633
+ .di-library-workbench-nav,
1634
+ .di-library-workbench-detail {
1635
+ max-height: 220px;
1636
+ border: 0;
1637
+ border-bottom: 1px solid #eef2f7;
1638
+ }
1639
+
1640
+ .di-library-workbench-detail {
1641
+ border-top: 1px solid #eef2f7;
1642
+ }
1643
+ }
1644
+
1645
+ .di-library-tabs {
1646
+ display: grid;
1647
+ grid-template-columns: repeat(2, minmax(0, 1fr));
1648
+ gap: var(--di-control-gap-x);
1649
+ flex: 0 0 auto;
1650
+ padding: 3px;
1651
+ border-radius: 10px;
1652
+ background: #f8fafc;
1653
+ }
1654
+
1655
+ .di-library-tab {
1656
+ height: 30px;
1657
+ border: 0;
1658
+ border-radius: 8px;
1659
+ background: transparent;
1660
+ color: #64748b;
1661
+ font-family: inherit;
1662
+ font-size: 12px;
1663
+ font-weight: 850;
1664
+ cursor: pointer;
1665
+ }
1666
+
1667
+ .di-library-tab:hover,
1668
+ .di-library-tab:focus-visible {
1669
+ color: #7c3aed;
1670
+ outline: none;
1671
+ }
1672
+
1673
+ .di-library-tab--active {
1674
+ background: #fff;
1675
+ color: #7c3aed;
1676
+ box-shadow: 0 1px 4px rgba(15, 23, 42, 0.08);
1677
+ }
1678
+
1679
+ .di-library-content {
1680
+ display: flex;
1681
+ flex-direction: column;
1682
+ gap: 10px;
1683
+ min-height: 0;
1684
+ flex: 1 1 auto;
1685
+ }
1686
+
1687
+ .di-library-tools {
1688
+ display: grid;
1689
+ gap: 8px;
1690
+ flex: 0 0 auto;
1691
+ }
1692
+
1693
+ .di-library-search {
1694
+ display: grid;
1695
+ grid-template-columns: max-content minmax(0, 1fr);
1696
+ align-items: center;
1697
+ gap: var(--di-field-label-gap);
1698
+ min-height: 40px;
1699
+ padding: var(--di-tool-row-padding-block) var(--di-tool-row-padding-inline);
1700
+ border-radius: 10px;
1701
+ background: #f8fafc;
1702
+ }
1703
+
1704
+ .di-library-search span {
1705
+ color: #94a3b8;
1706
+ font-size: 10px;
1707
+ font-weight: 850;
1708
+ }
1709
+
1710
+ .di-library-search input {
1711
+ width: 100%;
1712
+ min-width: 0;
1713
+ height: 30px;
1714
+ border: 1px solid #e5e7eb;
1715
+ border-radius: 7px;
1716
+ background: #fff;
1717
+ color: #111827;
1718
+ padding: 0 10px;
1719
+ font-family: inherit;
1720
+ font-size: 12px;
1721
+ font-weight: 750;
1722
+ outline: none;
1723
+ }
1724
+
1725
+ .di-library-search input:focus {
1726
+ border-color: #c4b5fd;
1727
+ box-shadow: 0 0 0 1px #c4b5fd;
1728
+ }
1729
+
1730
+ .di-library-categories {
1731
+ display: flex;
1732
+ gap: 6px;
1733
+ min-width: 0;
1734
+ overflow-x: auto;
1735
+ padding-bottom: 1px;
1736
+ }
1737
+
1738
+ .di-library-category {
1739
+ flex: 0 0 auto;
1740
+ height: 28px;
1741
+ padding: 0 10px;
1742
+ border: 1px solid #e5e7eb;
1743
+ border-radius: 999px;
1744
+ background: #fff;
1745
+ color: #64748b;
1746
+ font-family: inherit;
1747
+ font-size: 11px;
1748
+ font-weight: 800;
1749
+ cursor: pointer;
1750
+ }
1751
+
1752
+ .di-library-category-count {
1753
+ margin-left: 4px;
1754
+ color: #94a3b8;
1755
+ font-size: 10px;
1756
+ font-weight: 850;
1757
+ }
1758
+
1759
+ .di-library-category:hover,
1760
+ .di-library-category:focus-visible,
1761
+ .di-library-category--active {
1762
+ border-color: #c4b5fd;
1763
+ background: #faf5ff;
1764
+ color: #7c3aed;
1765
+ outline: none;
1766
+ }
1767
+
1768
+ .di-library-summary {
1769
+ display: grid;
1770
+ grid-template-columns: max-content max-content minmax(0, 1fr);
1771
+ align-items: center;
1772
+ gap: 6px;
1773
+ min-height: 32px;
1774
+ flex: 0 0 auto;
1775
+ padding: 0 2px;
1776
+ }
1777
+
1778
+ .di-library-summary strong {
1779
+ color: #111827;
1780
+ font-size: 18px;
1781
+ font-weight: 900;
1782
+ line-height: 1;
1783
+ }
1784
+
1785
+ .di-library-summary span,
1786
+ .di-library-summary small {
1787
+ color: #64748b;
1788
+ font-size: 11px;
1789
+ font-weight: 750;
1790
+ }
1791
+
1792
+ .di-library-summary small {
1793
+ min-width: 0;
1794
+ overflow: hidden;
1795
+ text-overflow: ellipsis;
1796
+ white-space: nowrap;
1797
+ }
1798
+
1799
+ .di-library-list {
1800
+ display: grid;
1801
+ gap: 8px;
1802
+ min-height: 0;
1803
+ overflow-y: auto;
1804
+ overscroll-behavior: contain;
1805
+ padding-right: 2px;
1806
+ }
1807
+
1808
+ .di-library-token-row,
1809
+ .di-library-component-row {
1810
+ min-width: 0;
1811
+ display: grid;
1812
+ align-items: center;
1813
+ gap: var(--di-control-gap-x);
1814
+ padding: 9px 10px;
1815
+ border: 1px solid #f1f5f9;
1816
+ border-radius: 10px;
1817
+ background: #f8fafc;
1818
+ }
1819
+
1820
+ .di-library-token-row {
1821
+ grid-template-columns: 30px minmax(0, 1fr) minmax(74px, max-content) 38px;
1822
+ }
1823
+
1824
+ .di-library-token-preview {
1825
+ width: 30px;
1826
+ height: 30px;
1827
+ border-radius: 8px;
1828
+ border: 1px solid #e2e8f0;
1829
+ background: #fff;
1830
+ box-sizing: border-box;
1831
+ }
1832
+
1833
+ .di-library-token-preview--color,
1834
+ .di-library-token-preview--appearance {
1835
+ background: var(--di-library-preview, #fff);
1836
+ }
1837
+
1838
+ .di-library-token-preview--text {
1839
+ position: relative;
1840
+ background: #fff;
1841
+ }
1842
+
1843
+ .di-library-token-preview--text::after {
1844
+ content: "T";
1845
+ position: absolute;
1846
+ inset: 0;
1847
+ display: grid;
1848
+ place-items: center;
1849
+ color: var(--di-library-preview, #111827);
1850
+ font-size: 16px;
1851
+ font-weight: 900;
1852
+ }
1853
+
1854
+ .di-library-token-preview--space {
1855
+ background:
1856
+ linear-gradient(90deg, transparent 0 7px, #7c3aed 7px 10px, transparent 10px 20px, #7c3aed 20px 23px, transparent 23px),
1857
+ #f8fafc;
1858
+ }
1859
+
1860
+ .di-library-token-preview--radius {
1861
+ border-color: #c4b5fd;
1862
+ border-radius: 12px 4px 12px 4px;
1863
+ }
1864
+
1865
+ .di-library-token-preview--shadow {
1866
+ background: #fff;
1867
+ box-shadow: var(--di-library-preview, 0 8px 20px rgba(15, 23, 42, 0.16));
1868
+ }
1869
+
1870
+ .di-library-token-main,
1871
+ .di-library-component-main {
1872
+ min-width: 0;
1873
+ display: grid;
1874
+ gap: 3px;
1875
+ }
1876
+
1877
+ .di-library-token-name,
1878
+ .di-library-component-title {
1879
+ min-width: 0;
1880
+ color: #111827;
1881
+ font-size: 12px;
1882
+ font-weight: 850;
1883
+ overflow: hidden;
1884
+ text-overflow: ellipsis;
1885
+ white-space: nowrap;
1886
+ }
1887
+
1888
+ .di-library-token-meta,
1889
+ .di-library-component-summary {
1890
+ min-width: 0;
1891
+ color: #64748b;
1892
+ font-size: 10px;
1893
+ font-weight: 700;
1894
+ line-height: 1.25;
1895
+ overflow: hidden;
1896
+ text-overflow: ellipsis;
1897
+ white-space: nowrap;
1898
+ }
1899
+
1900
+ .di-library-token-meta {
1901
+ display: flex;
1902
+ gap: 6px;
1903
+ }
1904
+
1905
+ .di-library-token-meta span {
1906
+ min-width: 0;
1907
+ overflow: hidden;
1908
+ text-overflow: ellipsis;
1909
+ white-space: nowrap;
1910
+ }
1911
+
1912
+ .di-library-token-side {
1913
+ min-width: 0;
1914
+ display: grid;
1915
+ justify-items: end;
1916
+ gap: 2px;
1917
+ }
1918
+
1919
+ .di-library-token-side code {
1920
+ max-width: 120px;
1921
+ color: #334155;
1922
+ font-size: 10px;
1923
+ font-weight: 800;
1924
+ overflow: hidden;
1925
+ text-overflow: ellipsis;
1926
+ white-space: nowrap;
1927
+ }
1928
+
1929
+ .di-library-token-side span,
1930
+ .di-library-token-usage span,
1931
+ .di-library-component-status {
1932
+ color: #94a3b8;
1933
+ font-size: 10px;
1934
+ font-weight: 800;
1935
+ }
1936
+
1937
+ .di-library-token-usage {
1938
+ display: grid;
1939
+ justify-items: center;
1940
+ gap: 1px;
1941
+ min-width: 0;
1942
+ padding: 0;
1943
+ border: 0;
1944
+ background: transparent;
1945
+ font-family: inherit;
1946
+ cursor: pointer;
1947
+ }
1948
+
1949
+ .di-library-token-usage:hover strong,
1950
+ .di-library-token-usage:focus-visible strong {
1951
+ color: #7c3aed;
1952
+ }
1953
+
1954
+ .di-library-token-usage:focus-visible {
1955
+ outline: 2px solid #c4b5fd;
1956
+ outline-offset: 2px;
1957
+ border-radius: 8px;
1958
+ }
1959
+
1960
+ .di-library-token-usage strong {
1961
+ color: #111827;
1962
+ font-size: 12px;
1963
+ font-weight: 900;
1964
+ line-height: 1;
1965
+ }
1966
+
1967
+ .di-library-component-row {
1968
+ grid-template-columns: 30px minmax(0, 1fr) max-content;
1969
+ }
1970
+
1971
+ .di-library-component-icon {
1972
+ width: 30px;
1973
+ height: 30px;
1974
+ display: inline-flex;
1975
+ align-items: center;
1976
+ justify-content: center;
1977
+ border-radius: 8px;
1978
+ background: #faf5ff;
1979
+ color: #7c3aed;
1980
+ }
1981
+
1982
+ .di-library-component-title {
1983
+ display: flex;
1984
+ align-items: baseline;
1985
+ gap: 6px;
1986
+ }
1987
+
1988
+ .di-library-component-title span {
1989
+ color: #94a3b8;
1990
+ font-size: 10px;
1991
+ font-weight: 800;
1992
+ }
1993
+
1994
+ .di-library-component-status {
1995
+ padding: 4px 7px;
1996
+ border-radius: 999px;
1997
+ background: #fff;
1998
+ }
1999
+
2000
+ .di-library-note,
2001
+ .di-library-empty,
2002
+ .di-library-more {
2003
+ padding: 10px;
2004
+ border-radius: 10px;
2005
+ background: #f8fafc;
2006
+ color: #64748b;
2007
+ font-size: 11px;
2008
+ font-weight: 700;
2009
+ line-height: 1.35;
2010
+ }
2011
+
2012
+ .di-library-empty,
2013
+ .di-library-more {
2014
+ text-align: center;
2015
+ }
2016
+
2017
+ .di-component-create-layer {
2018
+ position: absolute;
2019
+ z-index: 4;
2020
+ inset: 48px 0 0;
2021
+ display: flex;
2022
+ min-height: 0;
2023
+ padding: 10px 14px;
2024
+ background: rgba(255, 255, 255, 0.82);
2025
+ backdrop-filter: blur(2px);
2026
+ box-sizing: border-box;
2027
+ overflow: hidden;
2028
+ }
2029
+ .di-component-create-drawer {
2030
+ display: flex;
2031
+ flex-direction: column;
2032
+ gap: 10px;
2033
+ width: 100%;
2034
+ height: 100%;
2035
+ min-height: 0;
2036
+ max-height: 100%;
2037
+ overflow: hidden;
2038
+ padding: 10px;
2039
+ border: 1px solid #e5e7eb;
2040
+ border-radius: 12px;
2041
+ background: #fff;
2042
+ box-shadow: 0 12px 34px rgba(15, 23, 42, 0.14), 0 2px 10px rgba(15, 23, 42, 0.08);
2043
+ box-sizing: border-box;
2044
+ }
2045
+ .di-component-create-head {
2046
+ display: flex;
2047
+ align-items: center;
2048
+ justify-content: space-between;
2049
+ gap: 8px;
2050
+ flex: 0 0 auto;
2051
+ }
2052
+ .di-component-create-title {
2053
+ display: inline-flex;
2054
+ align-items: center;
2055
+ gap: 6px;
2056
+ color: #7c3aed;
2057
+ font-size: 13px;
2058
+ font-weight: 850;
2059
+ }
2060
+ .di-component-create-scroll {
2061
+ min-height: 0;
2062
+ display: grid;
2063
+ gap: 10px;
2064
+ overflow-y: auto;
2065
+ overscroll-behavior: contain;
2066
+ padding-right: 2px;
2067
+ }
2068
+ .di-component-create-summary {
2069
+ display: grid;
2070
+ gap: 6px;
2071
+ min-width: 0;
2072
+ padding: 10px;
2073
+ border-radius: 10px;
2074
+ background: #f8fafc;
2075
+ }
2076
+ .di-component-create-summary div {
2077
+ display: flex;
2078
+ align-items: center;
2079
+ gap: 8px;
2080
+ min-width: 0;
2081
+ }
2082
+ .di-component-create-summary span,
2083
+ .di-component-create-field > span,
2084
+ .di-component-create-rules-title {
2085
+ color: #94a3b8;
2086
+ font-size: 11px;
2087
+ font-weight: 800;
2088
+ white-space: nowrap;
2089
+ }
2090
+ .di-component-create-summary strong {
2091
+ min-width: 0;
2092
+ color: #111827;
2093
+ font-size: 13px;
2094
+ font-weight: 850;
2095
+ overflow: hidden;
2096
+ text-overflow: ellipsis;
2097
+ white-space: nowrap;
2098
+ }
2099
+ .di-component-create-summary code,
2100
+ .di-component-create-summary p {
2101
+ margin: 0;
2102
+ min-width: 0;
2103
+ color: #64748b;
2104
+ font-size: 11px;
2105
+ font-weight: 650;
2106
+ line-height: 1.35;
2107
+ overflow: hidden;
2108
+ text-overflow: ellipsis;
2109
+ white-space: nowrap;
2110
+ }
2111
+ .di-component-create-form {
2112
+ display: grid;
2113
+ grid-template-columns: repeat(2, minmax(0, 1fr));
2114
+ gap: var(--di-control-gap-y);
2115
+ }
2116
+ .di-component-create-field {
2117
+ display: grid;
2118
+ grid-template-columns: max-content minmax(0, 1fr);
2119
+ align-items: center;
2120
+ gap: var(--di-field-label-gap);
2121
+ min-height: 44px;
2122
+ min-width: 0;
2123
+ padding: var(--di-tool-row-padding-block) var(--di-tool-row-padding-inline);
2124
+ border-radius: 10px;
2125
+ background: #f8fafc;
2126
+ }
2127
+ .di-component-create-field > span {
2128
+ color: #9ca3af;
2129
+ font-size: 10px;
2130
+ font-weight: 800;
2131
+ line-height: 1.2;
2132
+ }
2133
+ .di-component-create-field--wide {
2134
+ grid-column: 1 / -1;
2135
+ }
2136
+ .di-component-create-field input {
2137
+ min-width: 0;
2138
+ width: 100%;
2139
+ height: 30px;
2140
+ border: 1px solid #e5e7eb;
2141
+ border-radius: 7px;
2142
+ background: #fff;
2143
+ color: #111827;
2144
+ padding: 0 10px;
2145
+ font: inherit;
2146
+ font-size: 12px;
2147
+ font-weight: 750;
2148
+ outline: none;
2149
+ }
2150
+ .di-component-create-field input:focus {
2151
+ border-color: #c4b5fd;
2152
+ box-shadow: 0 0 0 1px #c4b5fd;
2153
+ }
2154
+ .di-component-type-combobox {
2155
+ position: relative;
2156
+ min-width: 0;
2157
+ }
2158
+ .di-component-type-combobox input {
2159
+ padding-right: 30px;
2160
+ }
2161
+ .di-component-type-trigger {
2162
+ width: 100%;
2163
+ min-width: 0;
2164
+ height: 30px;
2165
+ display: flex;
2166
+ align-items: center;
2167
+ justify-content: space-between;
2168
+ gap: var(--di-control-gap-x);
2169
+ padding: 0 9px;
2170
+ border: 1px solid #e5e7eb;
2171
+ border-radius: 7px;
2172
+ background: #fff;
2173
+ color: #111827;
2174
+ font-family: inherit;
2175
+ cursor: pointer;
2176
+ }
2177
+ .di-component-type-trigger:hover,
2178
+ .di-component-type-trigger[aria-expanded="true"] {
2179
+ border-color: #c4b5fd;
2180
+ box-shadow: 0 0 0 1px #c4b5fd;
2181
+ }
2182
+ .di-component-create-field .di-component-type-trigger-value {
2183
+ min-width: 0;
2184
+ color: #111827;
2185
+ font-size: 12px;
2186
+ font-weight: 750;
2187
+ overflow: hidden;
2188
+ text-overflow: ellipsis;
2189
+ white-space: nowrap;
2190
+ }
2191
+ .di-component-type-trigger svg {
2192
+ color: #94a3b8;
2193
+ flex-shrink: 0;
2194
+ }
2195
+ .di-component-type-toggle {
2196
+ position: absolute;
2197
+ top: 4px;
2198
+ right: 4px;
2199
+ width: 22px;
2200
+ height: 22px;
2201
+ display: inline-flex;
2202
+ align-items: center;
2203
+ justify-content: center;
2204
+ border: 0;
2205
+ border-radius: 6px;
2206
+ background: transparent;
2207
+ color: #94a3b8;
2208
+ cursor: pointer;
2209
+ }
2210
+ .di-component-type-toggle:hover {
2211
+ background: #f5f3ff;
2212
+ color: #7c3aed;
2213
+ }
2214
+ .di-component-create-existing {
2215
+ grid-column: 1 / -1;
2216
+ display: grid;
2217
+ gap: var(--di-control-gap-y);
2218
+ padding: var(--di-tool-row-padding-block) var(--di-tool-row-padding-inline);
2219
+ border: 1px solid #ede9fe;
2220
+ border-radius: 10px;
2221
+ background: #faf5ff;
2222
+ }
2223
+ .di-component-create-existing-copy {
2224
+ display: grid;
2225
+ grid-template-columns: max-content max-content minmax(0, 1fr);
2226
+ align-items: center;
2227
+ gap: var(--di-field-label-gap);
2228
+ min-width: 0;
2229
+ }
2230
+ .di-component-create-existing-copy span {
2231
+ color: #94a3b8;
2232
+ font-size: 10px;
2233
+ font-weight: 850;
2234
+ }
2235
+ .di-component-create-existing-copy strong {
2236
+ color: #111827;
2237
+ font-size: 12px;
2238
+ font-weight: 850;
2239
+ }
2240
+ .di-component-create-existing-copy small {
2241
+ min-width: 0;
2242
+ color: #64748b;
2243
+ font-size: 10px;
2244
+ font-weight: 700;
2245
+ overflow: hidden;
2246
+ text-overflow: ellipsis;
2247
+ white-space: nowrap;
2248
+ }
2249
+ .di-component-create-existing-actions {
2250
+ display: grid;
2251
+ grid-template-columns: repeat(2, minmax(0, 1fr));
2252
+ gap: var(--di-control-gap-x);
2253
+ }
2254
+ .di-segment-pill {
2255
+ height: 30px;
2256
+ min-width: 0;
2257
+ border: 1px solid #e5e7eb;
2258
+ border-radius: 8px;
2259
+ background: #fff;
2260
+ color: #334155;
2261
+ font-family: inherit;
2262
+ font-size: 12px;
2263
+ font-weight: 850;
2264
+ cursor: pointer;
2265
+ }
2266
+ .di-segment-pill:hover {
2267
+ border-color: #c4b5fd;
2268
+ color: #7c3aed;
2269
+ }
2270
+ .di-segment-pill--active {
2271
+ border-color: #c4b5fd;
2272
+ background: #f5f3ff;
2273
+ color: #7c3aed;
2274
+ }
2275
+ .di-component-type-menu {
2276
+ position: absolute;
2277
+ z-index: 6;
2278
+ top: calc(100% + 4px);
2279
+ left: 0;
2280
+ right: 0;
2281
+ max-height: 220px;
2282
+ overflow: auto;
2283
+ padding: 4px;
2284
+ border: 1px solid #e5e7eb;
2285
+ border-radius: 10px;
2286
+ background: #fff;
2287
+ box-shadow: 0 14px 30px rgba(15, 23, 42, 0.14), 0 2px 8px rgba(15, 23, 42, 0.08);
2288
+ }
2289
+ .di-component-type-menu-head {
2290
+ padding: 6px 9px 7px;
2291
+ color: #94a3b8;
2292
+ font-size: 10px;
2293
+ font-weight: 800;
2294
+ line-height: 1.25;
2295
+ }
2296
+ .di-component-type-option {
2297
+ width: 100%;
2298
+ display: grid;
2299
+ gap: 2px;
2300
+ padding: 8px 9px;
2301
+ border: 0;
2302
+ border-radius: 8px;
2303
+ background: transparent;
2304
+ text-align: left;
2305
+ cursor: pointer;
2306
+ font-family: inherit;
2307
+ }
2308
+ .di-component-type-option:hover,
2309
+ .di-component-type-option--active {
2310
+ background: #f5f3ff;
2311
+ }
2312
+ .di-component-type-option strong {
2313
+ color: #111827;
2314
+ font-size: 12px;
2315
+ font-weight: 850;
2316
+ }
2317
+ .di-component-type-option--active strong,
2318
+ .di-component-type-option--new strong {
2319
+ color: #7c3aed;
2320
+ }
2321
+ .di-component-type-option span,
2322
+ .di-component-type-empty {
2323
+ color: #64748b;
2324
+ font-size: 10px;
2325
+ font-weight: 650;
2326
+ line-height: 1.3;
2327
+ }
2328
+ .di-component-type-empty {
2329
+ padding: 10px;
2330
+ text-align: center;
2331
+ }
2332
+ .di-component-create-rules {
2333
+ display: grid;
2334
+ gap: 6px;
2335
+ padding: 10px;
2336
+ border-radius: 10px;
2337
+ background: #faf5ff;
2338
+ border: 1px solid #ede9fe;
2339
+ }
2340
+ .di-component-create-rules ul {
2341
+ margin: 0;
2342
+ padding-left: 16px;
2343
+ display: grid;
2344
+ gap: 4px;
2345
+ }
2346
+ .di-component-create-rules li {
2347
+ color: #475569;
2348
+ font-size: 11px;
2349
+ font-weight: 650;
2350
+ line-height: 1.35;
2351
+ }
2352
+ .di-component-create-actions {
2353
+ display: grid;
2354
+ grid-template-columns: minmax(0, 1fr);
2355
+ gap: var(--di-control-gap-x);
2356
+ flex: 0 0 auto;
2357
+ padding-top: 8px;
2358
+ border-top: 1px solid #f3f4f6;
2359
+ background: #fff;
2360
+ }
2361
+ /* ── 主体 ── */
2362
+ .di-body {
2363
+ overflow-y: auto;
2364
+ flex: 1;
2365
+ padding: 2px 0 4px;
2366
+ }
2367
+ .di-body--plugin-page {
2368
+ padding-top: 0;
2369
+ }
2370
+ .di-body--plugin-page > .di-section:not(.di-plugin-section--page) {
2371
+ display: none;
2372
+ }
2373
+ .di-body--readonly {
2374
+ pointer-events: none;
2375
+ opacity: 0.72;
2376
+ user-select: none;
2377
+ }
2378
+
2379
+ /* ── 区块 ── */
2380
+ .di-section {
2381
+ padding: 8px 14px;
2382
+ border-bottom: 1px solid #f3f4f6;
2383
+ }
2384
+ .di-section:last-child { border-bottom: none; }
2385
+ .di-section-title {
2386
+ font-size: 12px;
2387
+ font-weight: 700;
2388
+ color: #111827;
2389
+ margin-bottom: var(--di-section-title-gap);
2390
+ }
2391
+ .di-section-title-row {
2392
+ display: flex;
2393
+ align-items: center;
2394
+ gap: var(--di-control-gap-x);
2395
+ margin-bottom: var(--di-section-title-gap);
2396
+ }
2397
+ .di-section-title-row--action {
2398
+ justify-content: space-between;
2399
+ min-height: 24px;
2400
+ }
2401
+ .di-section-title-row--empty {
2402
+ margin-bottom: 0;
2403
+ }
2404
+ .di-section-title-row .di-section-title {
2405
+ margin-bottom: 0;
2406
+ }
2407
+ .di-section-title-group {
2408
+ display: inline-flex;
2409
+ align-items: center;
2410
+ gap: 6px;
2411
+ min-width: 0;
2412
+ }
2413
+ .di-section-icon-action {
2414
+ width: 24px;
2415
+ height: 24px;
2416
+ border: 1px solid #e5e7eb;
2417
+ border-radius: 7px;
2418
+ background: #fff;
2419
+ color: #64748b;
2420
+ display: inline-flex;
2421
+ align-items: center;
2422
+ justify-content: center;
2423
+ padding: 0;
2424
+ cursor: pointer;
2425
+ transition: background 0.12s, border-color 0.12s, color 0.12s, box-shadow 0.12s;
2426
+ }
2427
+ .di-section-icon-action:hover,
2428
+ .di-section-icon-action:focus-visible {
2429
+ background: #faf5ff;
2430
+ border-color: #c4b5fd;
2431
+ color: #7c3aed;
2432
+ outline: none;
2433
+ box-shadow: 0 1px 3px rgba(124, 58, 237, 0.12);
2434
+ }
2435
+ .di-section-icon-action svg {
2436
+ width: 14px;
2437
+ height: 14px;
2438
+ }
2439
+ .di-section-icon-action--reset {
2440
+ color: #64748b;
2441
+ }
2442
+ .di-plugin-section {
2443
+ padding-top: 6px;
2444
+ padding-bottom: 6px;
2445
+ }
2446
+ .di-plugin-section--page {
2447
+ display: grid;
2448
+ gap: 8px;
2449
+ min-height: 100%;
2450
+ padding-top: 8px;
2451
+ padding-bottom: 10px;
2452
+ border-bottom: none;
2453
+ }
2454
+
2455
+ .di-structure-section {
2456
+ padding-top: 8px;
2457
+ padding-bottom: 8px;
2458
+ }
2459
+
2460
+ .di-structure-callout {
2461
+ display: grid;
2462
+ grid-template-columns: minmax(0, 1fr) max-content;
2463
+ align-items: center;
2464
+ gap: var(--di-control-gap-x);
2465
+ padding: 9px 10px;
2466
+ border-radius: 10px;
2467
+ background: #f5f3ff;
2468
+ }
2469
+
2470
+ .di-page-shell-callout {
2471
+ border: 1px solid #dbeafe;
2472
+ background: #eff6ff;
2473
+ }
2474
+
2475
+ .di-layout-container-callout {
2476
+ grid-template-columns: minmax(0, 1fr);
2477
+ border: 1px solid #e2e8f0;
2478
+ background: #f8fafc;
2479
+ }
2480
+
2481
+ .di-page-shell-section .di-structure-action {
2482
+ border-color: #bfdbfe;
2483
+ background: #fff;
2484
+ color: #2563eb;
2485
+ }
2486
+
2487
+ .di-page-shell-section .di-structure-action:hover,
2488
+ .di-page-shell-section .di-structure-action:focus-visible {
2489
+ background: #dbeafe;
2490
+ }
2491
+
2492
+ .di-page-shell-section .di-structure-link {
2493
+ color: #2563eb;
2494
+ }
2495
+
2496
+ .di-page-shell-section .di-structure-child-group-head small {
2497
+ background: #dbeafe;
2498
+ color: #2563eb;
2499
+ }
2500
+
2501
+ .di-layout-container-section .di-structure-link {
2502
+ color: #475569;
2503
+ }
2504
+
2505
+ .di-layout-container-section .di-structure-link:hover,
2506
+ .di-layout-container-section .di-structure-link:focus-visible {
2507
+ background: #f1f5f9;
2508
+ border-color: #cbd5e1;
2509
+ }
2510
+
2511
+ .di-layout-container-section .di-structure-child-group-head small {
2512
+ background: #e2e8f0;
2513
+ color: #475569;
2514
+ }
2515
+
2516
+ .di-layout-container-section .di-structure-child-item:hover,
2517
+ .di-layout-container-section .di-structure-child-item:focus-visible {
2518
+ border-color: #cbd5e1;
2519
+ }
2520
+
2521
+ .di-structure-callout-copy {
2522
+ min-width: 0;
2523
+ }
2524
+
2525
+ .di-structure-title {
2526
+ font-size: 13px;
2527
+ font-weight: 800;
2528
+ line-height: 1.25;
2529
+ color: #111827;
2530
+ }
2531
+
2532
+ .di-structure-desc {
2533
+ margin-top: 3px;
2534
+ font-size: 11px;
2535
+ font-weight: 600;
2536
+ line-height: 1.35;
2537
+ color: #64748b;
2538
+ }
2539
+
2540
+ .di-structure-action {
2541
+ height: 30px;
2542
+ padding: 0 10px;
2543
+ border: 1px solid #c4b5fd;
2544
+ border-radius: 8px;
2545
+ background: #faf5ff;
2546
+ color: #7c3aed;
2547
+ font-family: inherit;
2548
+ font-size: 12px;
2549
+ font-weight: 800;
2550
+ white-space: nowrap;
2551
+ cursor: pointer;
2552
+ }
2553
+
2554
+ .di-structure-action:hover,
2555
+ .di-structure-action:focus-visible {
2556
+ background: #f3e8ff;
2557
+ outline: none;
2558
+ }
2559
+
2560
+ .di-structure-summary-grid {
2561
+ display: grid;
2562
+ gap: 8px;
2563
+ margin-top: 8px;
2564
+ }
2565
+
2566
+ .di-structure-summary-card {
2567
+ display: grid;
2568
+ grid-template-columns: minmax(0, 1fr) max-content;
2569
+ align-items: center;
2570
+ gap: var(--di-control-gap-x);
2571
+ min-width: 0;
2572
+ padding: 9px 10px;
2573
+ border-radius: 10px;
2574
+ background: #f8fafc;
2575
+ }
2576
+
2577
+ .di-structure-summary-main {
2578
+ display: grid;
2579
+ gap: 2px;
2580
+ min-width: 0;
2581
+ }
2582
+
2583
+ .di-structure-summary-label {
2584
+ color: #94a3b8;
2585
+ font-size: 11px;
2586
+ font-weight: 800;
2587
+ line-height: 1.2;
2588
+ }
2589
+
2590
+ .di-structure-summary-main strong {
2591
+ min-width: 0;
2592
+ color: #111827;
2593
+ font-size: 12px;
2594
+ font-weight: 850;
2595
+ line-height: 1.25;
2596
+ overflow: hidden;
2597
+ text-overflow: ellipsis;
2598
+ white-space: nowrap;
2599
+ }
2600
+
2601
+ .di-structure-summary-main small {
2602
+ min-width: 0;
2603
+ color: #64748b;
2604
+ font-size: 11px;
2605
+ font-weight: 650;
2606
+ line-height: 1.35;
2607
+ overflow: hidden;
2608
+ text-overflow: ellipsis;
2609
+ white-space: nowrap;
2610
+ }
2611
+
2612
+ .di-structure-link {
2613
+ height: 28px;
2614
+ border: 1px solid #e5e7eb;
2615
+ border-radius: 8px;
2616
+ background: #fff;
2617
+ color: #7c3aed;
2618
+ padding: 0 10px;
2619
+ font-family: inherit;
2620
+ font-size: 12px;
2621
+ font-weight: 800;
2622
+ white-space: nowrap;
2623
+ cursor: pointer;
2624
+ }
2625
+
2626
+ .di-structure-link:hover,
2627
+ .di-structure-link:focus-visible {
2628
+ background: #faf5ff;
2629
+ border-color: #c4b5fd;
2630
+ outline: none;
2631
+ }
2632
+
2633
+ .di-structure-child-groups {
2634
+ display: grid;
2635
+ gap: 6px;
2636
+ min-width: 0;
2637
+ }
2638
+
2639
+ .di-structure-child-group {
2640
+ display: grid;
2641
+ gap: 5px;
2642
+ min-width: 0;
2643
+ padding: 8px;
2644
+ border-radius: 10px;
2645
+ background: #f8fafc;
2646
+ }
2647
+
2648
+ .di-structure-child-group-head {
2649
+ display: flex;
2650
+ align-items: center;
2651
+ gap: 6px;
2652
+ min-width: 0;
2653
+ }
2654
+
2655
+ .di-structure-child-group-head span {
2656
+ color: #111827;
2657
+ font-size: 12px;
2658
+ font-weight: 850;
2659
+ }
2660
+
2661
+ .di-structure-child-group-head small {
2662
+ border-radius: 999px;
2663
+ background: #f4efff;
2664
+ color: #7c3aed;
2665
+ padding: 1px 6px;
2666
+ font-size: 11px;
2667
+ font-weight: 850;
2668
+ line-height: 1.3;
2669
+ }
2670
+
2671
+ .di-structure-child-list {
2672
+ display: grid;
2673
+ gap: 4px;
2674
+ min-width: 0;
2675
+ }
2676
+
2677
+ .di-structure-child-item {
2678
+ display: grid;
2679
+ grid-template-columns: minmax(64px, max-content) minmax(0, 1fr);
2680
+ align-items: center;
2681
+ gap: 8px;
2682
+ min-width: 0;
2683
+ height: 30px;
2684
+ border: 1px solid #e5e7eb;
2685
+ border-radius: 8px;
2686
+ background: #fff;
2687
+ padding: 0 9px;
2688
+ font-family: inherit;
2689
+ text-align: left;
2690
+ cursor: pointer;
2691
+ }
2692
+
2693
+ .di-structure-child-item:hover,
2694
+ .di-structure-child-item:focus-visible {
2695
+ border-color: #c4b5fd;
2696
+ outline: none;
2697
+ }
2698
+
2699
+ .di-structure-child-item span {
2700
+ color: #334155;
2701
+ font-size: 12px;
2702
+ font-weight: 800;
2703
+ }
2704
+
2705
+ .di-structure-child-item small {
2706
+ min-width: 0;
2707
+ color: #64748b;
2708
+ font-size: 11px;
2709
+ font-weight: 650;
2710
+ overflow: hidden;
2711
+ text-overflow: ellipsis;
2712
+ white-space: nowrap;
2713
+ }
2714
+ .di-plugin-page-head {
2715
+ display: flex;
2716
+ align-items: center;
2717
+ gap: 8px;
2718
+ min-width: 0;
2719
+ }
2720
+ .di-plugin-back {
2721
+ height: 28px;
2722
+ border: 1px solid #e5e7eb;
2723
+ border-radius: 8px;
2724
+ background: #fff;
2725
+ color: #334155;
2726
+ display: inline-flex;
2727
+ align-items: center;
2728
+ gap: 5px;
2729
+ padding: 0 9px;
2730
+ font-family: inherit;
2731
+ font-size: 12px;
2732
+ font-weight: 800;
2733
+ white-space: nowrap;
2734
+ cursor: pointer;
2735
+ transition: background 0.12s, border-color 0.12s, color 0.12s, box-shadow 0.12s;
2736
+ }
2737
+ .di-plugin-back:hover,
2738
+ .di-plugin-back:focus-visible {
2739
+ background: #faf5ff;
2740
+ border-color: #c4b5fd;
2741
+ color: #7c3aed;
2742
+ outline: none;
2743
+ box-shadow: 0 1px 3px rgba(124, 58, 237, 0.12);
2744
+ }
2745
+ .di-plugin-page-title {
2746
+ min-width: 0;
2747
+ display: inline-flex;
2748
+ align-items: center;
2749
+ gap: 5px;
2750
+ color: #7c3aed;
2751
+ font-size: 12px;
2752
+ font-weight: 850;
2753
+ overflow: hidden;
2754
+ text-overflow: ellipsis;
2755
+ white-space: nowrap;
2756
+ }
2757
+ .di-plugin-toolbar {
2758
+ display: flex;
2759
+ align-items: center;
2760
+ gap: 6px;
2761
+ min-width: 0;
2762
+ }
2763
+ .di-plugin-tab {
2764
+ height: 28px;
2765
+ border: 1px solid #e5e7eb;
2766
+ border-radius: 8px;
2767
+ background: #fff;
2768
+ color: #334155;
2769
+ display: inline-flex;
2770
+ align-items: center;
2771
+ gap: 5px;
2772
+ padding: 0 10px;
2773
+ font-size: 12px;
2774
+ font-weight: 700;
2775
+ font-family: inherit;
2776
+ line-height: 1;
2777
+ white-space: nowrap;
2778
+ cursor: pointer;
2779
+ transition: background 0.12s, border-color 0.12s, color 0.12s, box-shadow 0.12s;
2780
+ }
2781
+ .di-plugin-tab:hover,
2782
+ .di-plugin-tab:focus-visible {
2783
+ background: #faf5ff;
2784
+ border-color: #c4b5fd;
2785
+ color: #7c3aed;
2786
+ outline: none;
2787
+ }
2788
+ .di-plugin-tab--on {
2789
+ background: #f4efff;
2790
+ border-color: #c4b5fd;
2791
+ color: #7c3aed;
2792
+ }
2793
+ .di-plugin-msg {
2794
+ margin-left: auto;
2795
+ color: #7c3aed;
2796
+ font-size: 11px;
2797
+ font-weight: 700;
2798
+ white-space: nowrap;
2799
+ }
2800
+ .di-plugin-panel {
2801
+ margin-top: 6px;
2802
+ padding: 8px;
2803
+ border-radius: 10px;
2804
+ background: #f8fafc;
2805
+ display: grid;
2806
+ gap: 6px;
2807
+ }
2808
+ .di-plugin-panel--maker {
2809
+ background: transparent;
2810
+ padding: 0;
2811
+ gap: 8px;
2812
+ }
2813
+ .di-plugin-context-card,
2814
+ .di-plugin-maker-compact,
2815
+ .di-plugin-control-card {
2816
+ display: grid;
2817
+ gap: 6px;
2818
+ min-width: 0;
2819
+ padding: 8px;
2820
+ border-radius: 10px;
2821
+ background: #f8fafc;
2822
+ }
2823
+ .di-plugin-maker-compact {
2824
+ gap: 7px;
2825
+ }
2826
+ .di-plugin-maker-compact--variant {
2827
+ background: #fff;
2828
+ border: 1px solid #eef2f7;
2829
+ }
2830
+ .di-plugin-row {
2831
+ display: flex;
2832
+ align-items: center;
2833
+ gap: 8px;
2834
+ min-width: 0;
2835
+ }
2836
+ .di-plugin-label {
2837
+ flex: 0 0 auto;
2838
+ color: #94a3b8;
2839
+ font-size: 11px;
2840
+ font-weight: 700;
2841
+ }
2842
+ .di-plugin-value,
2843
+ .di-plugin-code {
2844
+ min-width: 0;
2845
+ color: #111827;
2846
+ font-size: 12px;
2847
+ font-weight: 700;
2848
+ overflow: hidden;
2849
+ text-overflow: ellipsis;
2850
+ white-space: nowrap;
2851
+ }
2852
+ .di-plugin-code {
2853
+ color: #64748b;
2854
+ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
2855
+ font-weight: 600;
2856
+ }
2857
+ .di-plugin-control-row {
2858
+ display: flex;
2859
+ align-items: center;
2860
+ gap: 8px;
2861
+ min-width: 0;
2862
+ }
2863
+ .di-plugin-control-row--input {
2864
+ align-items: stretch;
2865
+ }
2866
+ .di-plugin-component-main {
2867
+ display: flex;
2868
+ align-items: baseline;
2869
+ gap: 6px;
2870
+ min-width: 0;
2871
+ }
2872
+ .di-plugin-component-main strong {
2873
+ min-width: 0;
2874
+ color: #111827;
2875
+ font-size: 13px;
2876
+ font-weight: 850;
2877
+ overflow: hidden;
2878
+ text-overflow: ellipsis;
2879
+ white-space: nowrap;
2880
+ }
2881
+ .di-plugin-component-main span {
2882
+ color: #64748b;
2883
+ font-size: 11px;
2884
+ font-weight: 750;
2885
+ }
2886
+ .di-plugin-source-toggle,
2887
+ .di-plugin-action-tiles {
2888
+ display: flex;
2889
+ align-items: center;
2890
+ gap: 6px;
2891
+ min-width: 0;
2892
+ flex-wrap: wrap;
2893
+ }
2894
+ .di-plugin-choice,
2895
+ .di-plugin-action-tile {
2896
+ height: 28px;
2897
+ border: 1px solid #e5e7eb;
2898
+ border-radius: 8px;
2899
+ background: #fff;
2900
+ color: #334155;
2901
+ padding: 0 10px;
2902
+ font-family: inherit;
2903
+ font-size: 12px;
2904
+ font-weight: 800;
2905
+ white-space: nowrap;
2906
+ cursor: pointer;
2907
+ transition: background 0.12s, border-color 0.12s, color 0.12s;
2908
+ }
2909
+ .di-plugin-choice:hover:not(:disabled),
2910
+ .di-plugin-choice:focus-visible:not(:disabled),
2911
+ .di-plugin-action-tile:hover,
2912
+ .di-plugin-action-tile:focus-visible {
2913
+ background: #faf5ff;
2914
+ border-color: #c4b5fd;
2915
+ color: #7c3aed;
2916
+ outline: none;
2917
+ }
2918
+ .di-plugin-choice--on,
2919
+ .di-plugin-action-tile--on {
2920
+ background: #fff;
2921
+ border-color: #c4b5fd;
2922
+ color: #7c3aed;
2923
+ box-shadow: inset 0 0 0 1px #c4b5fd;
2924
+ }
2925
+ .di-plugin-choice:disabled {
2926
+ color: #cbd5e1;
2927
+ cursor: not-allowed;
2928
+ }
2929
+ .di-plugin-inline-input {
2930
+ height: 30px;
2931
+ min-width: 0;
2932
+ flex: 1 1 auto;
2933
+ border: 1px solid #e5e7eb;
2934
+ border-radius: 8px;
2935
+ background: #fff;
2936
+ color: #111827;
2937
+ padding: 0 10px;
2938
+ font-family: inherit;
2939
+ font-size: 12px;
2940
+ font-weight: 750;
2941
+ outline: none;
2942
+ }
2943
+ .di-plugin-inline-input:focus {
2944
+ border-color: #c4b5fd;
2945
+ box-shadow: 0 0 0 1px #c4b5fd;
2946
+ }
2947
+ .di-plugin-code-name-input {
2948
+ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
2949
+ font-weight: 750;
2950
+ }
2951
+ .di-plugin-empty-note,
2952
+ .di-plugin-action-hint {
2953
+ color: #94a3b8;
2954
+ font-size: 11px;
2955
+ font-weight: 700;
2956
+ line-height: 1.35;
2957
+ }
2958
+ .di-plugin-action-hint {
2959
+ padding-left: 58px;
2960
+ }
2961
+ .di-plugin-preview {
2962
+ display: flex;
2963
+ flex-wrap: wrap;
2964
+ gap: 5px;
2965
+ min-width: 0;
2966
+ }
2967
+ .di-plugin-preview span {
2968
+ max-width: 100%;
2969
+ padding: 4px 7px;
2970
+ border-radius: 7px;
2971
+ background: #fff;
2972
+ color: #64748b;
2973
+ font-size: 11px;
2974
+ font-weight: 600;
2975
+ line-height: 1.25;
2976
+ overflow: hidden;
2977
+ text-overflow: ellipsis;
2978
+ white-space: nowrap;
2979
+ }
2980
+ .di-plugin-subtitle {
2981
+ color: #111827;
2982
+ font-size: 12px;
2983
+ font-weight: 800;
2984
+ line-height: 1.2;
2985
+ }
2986
+ .di-plugin-spec-grid {
2987
+ display: grid;
2988
+ grid-template-columns: repeat(2, minmax(0, 1fr));
2989
+ gap: 6px;
2990
+ min-width: 0;
2991
+ }
2992
+ .di-plugin-spec-field {
2993
+ display: grid;
2994
+ grid-template-columns: max-content minmax(0, 1fr);
2995
+ align-items: center;
2996
+ gap: 8px;
2997
+ min-width: 0;
2998
+ padding: 6px 8px;
2999
+ border-radius: 8px;
3000
+ background: #fff;
3001
+ }
3002
+ .di-plugin-spec-field--wide {
3003
+ grid-column: 1 / -1;
3004
+ align-items: start;
3005
+ }
3006
+ .di-plugin-spec-field span {
3007
+ color: #94a3b8;
3008
+ font-size: 11px;
3009
+ font-weight: 800;
3010
+ white-space: nowrap;
3011
+ }
3012
+ .di-plugin-spec-field input,
3013
+ .di-plugin-spec-field select,
3014
+ .di-plugin-spec-field textarea {
3015
+ min-width: 0;
3016
+ width: 100%;
3017
+ border: 0;
3018
+ padding: 0;
3019
+ background: transparent;
3020
+ color: #111827;
3021
+ font: inherit;
3022
+ font-size: 12px;
3023
+ font-weight: 650;
3024
+ outline: none;
3025
+ }
3026
+ .di-plugin-spec-field select {
3027
+ appearance: none;
3028
+ cursor: pointer;
3029
+ }
3030
+ .di-plugin-spec-field textarea {
3031
+ min-height: 34px;
3032
+ resize: vertical;
3033
+ line-height: 1.35;
3034
+ }
3035
+ .di-plugin-variant-builder {
3036
+ display: grid;
3037
+ gap: 8px;
3038
+ min-width: 0;
3039
+ }
3040
+ .di-plugin-variant-base,
3041
+ .di-plugin-variant-head {
3042
+ display: flex;
3043
+ align-items: center;
3044
+ justify-content: space-between;
3045
+ gap: 8px;
3046
+ min-width: 0;
3047
+ }
3048
+ .di-plugin-variant-base {
3049
+ min-height: 34px;
3050
+ padding: 6px 8px;
3051
+ border-radius: 9px;
3052
+ background: #fff;
3053
+ }
3054
+ .di-plugin-variant-base-copy {
3055
+ display: flex;
3056
+ align-items: center;
3057
+ gap: 6px;
3058
+ min-width: 0;
3059
+ color: #94a3b8;
3060
+ font-size: 11px;
3061
+ font-weight: 800;
3062
+ }
3063
+ .di-plugin-variant-base-copy strong {
3064
+ min-width: 0;
3065
+ color: #111827;
3066
+ font-size: 12px;
3067
+ overflow: hidden;
3068
+ text-overflow: ellipsis;
3069
+ white-space: nowrap;
3070
+ }
3071
+ .di-plugin-variant-count {
3072
+ flex: 0 0 auto;
3073
+ padding: 3px 7px;
3074
+ border-radius: 999px;
3075
+ background: #f3e8ff;
3076
+ color: #7c3aed;
3077
+ font-size: 11px;
3078
+ font-weight: 850;
3079
+ line-height: 1.2;
3080
+ }
3081
+ .di-plugin-variant-head {
3082
+ color: #64748b;
3083
+ font-size: 11px;
3084
+ font-weight: 800;
3085
+ }
3086
+ .di-plugin-variant-tools {
3087
+ display: inline-flex;
3088
+ align-items: center;
3089
+ gap: 4px;
3090
+ }
3091
+ .di-plugin-variant-tools button {
3092
+ border: 0;
3093
+ background: transparent;
3094
+ color: #7c3aed;
3095
+ padding: 2px 4px;
3096
+ font-family: inherit;
3097
+ font-size: 11px;
3098
+ font-weight: 800;
3099
+ cursor: pointer;
3100
+ }
3101
+ .di-plugin-variant-tools button:hover,
3102
+ .di-plugin-variant-tools button:focus-visible {
3103
+ text-decoration: underline;
3104
+ outline: none;
3105
+ }
3106
+ .di-plugin-variant-grid {
3107
+ display: grid;
3108
+ grid-template-columns: repeat(2, minmax(0, 1fr));
3109
+ gap: 6px;
3110
+ min-width: 0;
3111
+ }
3112
+ .di-plugin-variant-card {
3113
+ position: relative;
3114
+ display: grid;
3115
+ grid-template-columns: 22px minmax(0, 1fr);
3116
+ align-items: center;
3117
+ column-gap: 7px;
3118
+ row-gap: 4px;
3119
+ min-width: 0;
3120
+ min-height: 52px;
3121
+ border: 1px solid #e5e7eb;
3122
+ border-radius: 9px;
3123
+ background: #fff;
3124
+ color: #111827;
3125
+ padding: 7px 8px;
3126
+ font-family: inherit;
3127
+ text-align: left;
3128
+ cursor: pointer;
3129
+ transition: background 0.12s, border-color 0.12s, color 0.12s, box-shadow 0.12s;
3130
+ }
3131
+ .di-plugin-variant-card:hover,
3132
+ .di-plugin-variant-card:focus-visible {
3133
+ border-color: #c4b5fd;
3134
+ outline: none;
3135
+ }
3136
+ .di-plugin-variant-card--on {
3137
+ border-color: #c4b5fd;
3138
+ background: #faf5ff;
3139
+ box-shadow: inset 0 0 0 1px #c4b5fd;
3140
+ }
3141
+ .di-plugin-variant-swatch {
3142
+ width: 22px;
3143
+ height: 22px;
3144
+ border-radius: 7px;
3145
+ background: #f8fafc;
3146
+ border: 1px solid #e2e8f0;
3147
+ }
3148
+ .di-plugin-variant-swatch--brand { background: linear-gradient(135deg, #7c3aed, #6d5dfc); }
3149
+ .di-plugin-variant-swatch--compact { background: linear-gradient(135deg, #fff, #eef2ff); }
3150
+ .di-plugin-variant-swatch--floating { background: #fff; box-shadow: 0 8px 18px rgba(15, 23, 42, 0.18); }
3151
+ .di-plugin-variant-swatch--emphasis { background: #111827; }
3152
+ .di-plugin-variant-swatch--success { background: #bbf7d0; border-color: #86efac; }
3153
+ .di-plugin-variant-swatch--warning { background: #fef3c7; border-color: #fde68a; }
3154
+ .di-plugin-variant-swatch--danger { background: #fee2e2; border-color: #fecaca; }
3155
+ .di-plugin-variant-swatch--disabled { background: #f1f5f9; border-color: #e2e8f0; opacity: 0.72; }
3156
+ .di-plugin-variant-swatch--size {
3157
+ background:
3158
+ linear-gradient(90deg, transparent 0 5px, #7c3aed 5px 9px, transparent 9px 13px, #7c3aed 13px 17px, transparent 17px),
3159
+ #faf5ff;
3160
+ }
3161
+ .di-plugin-variant-card-copy {
3162
+ display: grid;
3163
+ gap: 1px;
3164
+ min-width: 0;
3165
+ }
3166
+ .di-plugin-variant-card-copy strong {
3167
+ color: #7c3aed;
3168
+ font-size: 12px;
3169
+ font-weight: 850;
3170
+ line-height: 1.15;
3171
+ overflow: hidden;
3172
+ text-overflow: ellipsis;
3173
+ white-space: nowrap;
3174
+ }
3175
+ .di-plugin-variant-card-copy span {
3176
+ color: #64748b;
3177
+ font-size: 10.5px;
3178
+ font-weight: 700;
3179
+ line-height: 1.15;
3180
+ overflow: hidden;
3181
+ text-overflow: ellipsis;
3182
+ white-space: nowrap;
3183
+ }
3184
+ .di-plugin-variant-card-desc {
3185
+ grid-column: 1 / -1;
3186
+ color: #94a3b8;
3187
+ font-size: 10.5px;
3188
+ font-weight: 650;
3189
+ line-height: 1.2;
3190
+ overflow: hidden;
3191
+ text-overflow: ellipsis;
3192
+ white-space: nowrap;
3193
+ }
3194
+ .di-plugin-variant-sandbox {
3195
+ display: grid;
3196
+ gap: 8px;
3197
+ min-width: 0;
3198
+ }
3199
+ .di-plugin-control-card--variant-flow {
3200
+ gap: 8px;
3201
+ }
3202
+ .di-plugin-variant-workflow {
3203
+ display: grid;
3204
+ gap: 8px;
3205
+ min-width: 0;
3206
+ }
3207
+ .di-plugin-library-row,
3208
+ .di-plugin-sandbox-row,
3209
+ .di-plugin-selected-variants {
3210
+ display: grid;
3211
+ grid-template-columns: max-content minmax(0, 1fr);
3212
+ align-items: center;
3213
+ gap: 8px;
3214
+ min-width: 0;
3215
+ }
3216
+ .di-plugin-library-pills,
3217
+ .di-plugin-sandbox-options,
3218
+ .di-plugin-selected-chip-row {
3219
+ display: flex;
3220
+ flex-wrap: wrap;
3221
+ align-items: center;
3222
+ gap: 6px;
3223
+ min-width: 0;
3224
+ }
3225
+ .di-plugin-library-pill,
3226
+ .di-plugin-sandbox-option,
3227
+ .di-plugin-selected-chip {
3228
+ min-width: 0;
3229
+ height: 28px;
3230
+ border: 1px solid #e5e7eb;
3231
+ border-radius: 8px;
3232
+ background: #fff;
3233
+ color: #334155;
3234
+ padding: 0 9px;
3235
+ font-family: inherit;
3236
+ font-size: 12px;
3237
+ font-weight: 800;
3238
+ line-height: 1;
3239
+ cursor: pointer;
3240
+ }
3241
+ .di-plugin-library-pill {
3242
+ max-width: 128px;
3243
+ overflow: hidden;
3244
+ text-overflow: ellipsis;
3245
+ white-space: nowrap;
3246
+ }
3247
+ .di-plugin-library-pill:hover,
3248
+ .di-plugin-library-pill:focus-visible,
3249
+ .di-plugin-sandbox-option:hover,
3250
+ .di-plugin-sandbox-option:focus-visible,
3251
+ .di-plugin-selected-chip:hover,
3252
+ .di-plugin-selected-chip:focus-visible {
3253
+ border-color: #c4b5fd;
3254
+ outline: none;
3255
+ }
3256
+ .di-plugin-library-pill--on,
3257
+ .di-plugin-sandbox-option--on {
3258
+ border-color: #c4b5fd;
3259
+ background: #f5f3ff;
3260
+ color: #7c3aed;
3261
+ }
3262
+ .di-plugin-sandbox-option--preview {
3263
+ box-shadow: inset 0 0 0 1px #a78bfa;
3264
+ }
3265
+ .di-plugin-live-preview {
3266
+ display: grid;
3267
+ gap: 7px;
3268
+ min-width: 0;
3269
+ padding: 8px;
3270
+ border-radius: 10px;
3271
+ background: #fff;
3272
+ border: 1px solid #e5e7eb;
3273
+ }
3274
+ .di-plugin-live-preview--floating {
3275
+ box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
3276
+ }
3277
+ .di-plugin-live-preview--emphasis {
3278
+ background: #f8fafc;
3279
+ border-color: #cbd5e1;
3280
+ }
3281
+ .di-plugin-live-preview--brand {
329
3282
  border-color: #c4b5fd;
330
- color: #7c3aed;
331
- outline: none;
332
- box-shadow: 0 1px 3px rgba(124,58,237,0.12);
3283
+ background: #faf5ff;
333
3284
  }
334
- .di-head-icon-btn:disabled {
3285
+ .di-plugin-live-preview--compact {
3286
+ padding: 6px;
3287
+ }
3288
+ .di-plugin-live-preview--disabled {
3289
+ opacity: 0.72;
3290
+ }
3291
+ .di-plugin-live-preview-head,
3292
+ .di-plugin-live-base,
3293
+ .di-plugin-preview-meta {
3294
+ display: flex;
3295
+ align-items: center;
3296
+ justify-content: space-between;
3297
+ gap: 8px;
3298
+ min-width: 0;
3299
+ }
3300
+ .di-plugin-real-preview-frame {
3301
+ min-width: 0;
3302
+ max-height: 180px;
3303
+ overflow: hidden;
3304
+ border-radius: 9px;
335
3305
  background: #fff;
336
- border-color: #eef2f7;
337
- color: #cbd5e1;
338
- cursor: not-allowed;
339
- box-shadow: none;
340
3306
  }
341
- .di-head-icon-btn svg {
342
- width: 15px;
343
- height: 15px;
344
- flex: 0 0 auto;
3307
+ .di-plugin-real-preview-inner {
3308
+ min-width: 0;
3309
+ padding: 8px;
3310
+ overflow: hidden;
345
3311
  }
346
- .di-head-right { display: flex; align-items: center; gap: 8px; }
347
- .di-title { font-size: 15px; font-weight: 700; color: #111827; }
348
- .di-badge-dev {
349
- padding: 2px 8px;
350
- border-radius: 6px;
351
- background: rgba(124,58,237,0.1);
352
- color: #7c3aed;
3312
+ .di-plugin-real-preview-inner > * {
3313
+ max-width: 100%;
3314
+ margin-left: 0 !important;
3315
+ margin-right: 0 !important;
3316
+ pointer-events: none;
3317
+ }
3318
+ .di-plugin-live-preview--compact .di-plugin-real-preview-inner {
3319
+ padding: 6px;
3320
+ }
3321
+ .di-plugin-preview-meta {
3322
+ color: #64748b;
353
3323
  font-size: 11px;
354
- font-weight: 600;
3324
+ font-weight: 750;
355
3325
  }
356
- .di-spec-link {
357
- background: none;
358
- border: none;
3326
+ .di-plugin-preview-meta strong {
3327
+ min-width: 0;
359
3328
  color: #7c3aed;
360
- font-size: 12px;
361
- font-family: inherit;
362
- cursor: pointer;
363
- padding: 0;
3329
+ overflow: hidden;
3330
+ text-overflow: ellipsis;
3331
+ white-space: nowrap;
364
3332
  }
365
- .di-spec-link:hover { text-decoration: underline; }
366
- /* ── 主体 ── */
367
- .di-body {
368
- overflow-y: auto;
369
- flex: 1;
370
- padding: 2px 0 4px;
3333
+ .di-plugin-live-card {
3334
+ display: grid;
3335
+ grid-template-columns: 24px minmax(0, 1fr);
3336
+ align-items: center;
3337
+ column-gap: 8px;
3338
+ row-gap: 3px;
3339
+ min-width: 0;
3340
+ min-height: 56px;
3341
+ padding: 8px;
3342
+ border-radius: 9px;
3343
+ background: #f8fafc;
371
3344
  }
372
- .di-body--readonly {
373
- pointer-events: none;
374
- opacity: 0.72;
375
- user-select: none;
3345
+ .di-plugin-live-preview--compact .di-plugin-live-card {
3346
+ min-height: 46px;
3347
+ padding: 6px;
376
3348
  }
377
-
378
- /* ── 区块 ── */
379
- .di-section {
380
- padding: 8px 14px;
381
- border-bottom: 1px solid #f3f4f6;
3349
+ .di-plugin-live-preview--emphasis .di-plugin-live-card {
3350
+ background: #0f172a;
382
3351
  }
383
- .di-section:last-child { border-bottom: none; }
384
- .di-section-title {
385
- font-size: 12px;
3352
+ .di-plugin-live-card-copy {
3353
+ display: grid;
3354
+ gap: 1px;
3355
+ min-width: 0;
3356
+ }
3357
+ .di-plugin-live-card-copy strong {
3358
+ color: #7c3aed;
3359
+ font-size: 13px;
3360
+ font-weight: 850;
3361
+ line-height: 1.15;
3362
+ overflow: hidden;
3363
+ text-overflow: ellipsis;
3364
+ white-space: nowrap;
3365
+ }
3366
+ .di-plugin-live-preview--emphasis .di-plugin-live-card-copy strong {
3367
+ color: #fff;
3368
+ }
3369
+ .di-plugin-live-card-copy span,
3370
+ .di-plugin-live-card p,
3371
+ .di-plugin-live-base {
3372
+ color: #64748b;
3373
+ font-size: 11px;
386
3374
  font-weight: 700;
3375
+ line-height: 1.2;
3376
+ }
3377
+ .di-plugin-live-preview--emphasis .di-plugin-live-card-copy span,
3378
+ .di-plugin-live-preview--emphasis .di-plugin-live-card p {
3379
+ color: #cbd5e1;
3380
+ }
3381
+ .di-plugin-live-card p {
3382
+ grid-column: 1 / -1;
3383
+ margin: 0;
3384
+ overflow: hidden;
3385
+ text-overflow: ellipsis;
3386
+ white-space: nowrap;
3387
+ }
3388
+ .di-plugin-live-base strong {
3389
+ min-width: 0;
387
3390
  color: #111827;
388
- margin-bottom: var(--di-section-title-gap);
3391
+ overflow: hidden;
3392
+ text-overflow: ellipsis;
3393
+ white-space: nowrap;
389
3394
  }
390
- .di-section-title-row {
391
- display: flex;
3395
+ .di-plugin-sandbox-controls {
3396
+ display: grid;
3397
+ gap: 6px;
3398
+ min-width: 0;
3399
+ }
3400
+ .di-plugin-sandbox-controls--single .di-plugin-sandbox-row {
392
3401
  align-items: center;
393
- gap: var(--di-control-gap-x);
394
- margin-bottom: var(--di-section-title-gap);
395
3402
  }
396
- .di-section-title-row--action {
397
- justify-content: space-between;
398
- min-height: 24px;
3403
+ .di-plugin-sandbox-controls--single .di-plugin-sandbox-option {
3404
+ min-width: 54px;
399
3405
  }
400
- .di-section-title-row--empty {
401
- margin-bottom: 0;
3406
+ .di-plugin-selected-variants {
3407
+ align-items: start;
402
3408
  }
403
- .di-section-title-row .di-section-title {
404
- margin-bottom: 0;
3409
+ .di-plugin-selected-chip {
3410
+ color: #7c3aed;
405
3411
  }
406
- .di-section-title-group {
407
- display: inline-flex;
408
- align-items: center;
3412
+ .di-plugin-selected-variants .di-plugin-variant-tools {
3413
+ grid-column: 2;
3414
+ justify-content: flex-start;
3415
+ }
3416
+ .di-plugin-actions {
3417
+ display: flex;
3418
+ flex-wrap: wrap;
409
3419
  gap: 6px;
410
- min-width: 0;
3420
+ align-items: center;
411
3421
  }
412
- .di-section-icon-action {
413
- width: 24px;
414
- height: 24px;
3422
+ .di-plugin-action {
3423
+ justify-self: start;
3424
+ height: 28px;
415
3425
  border: 1px solid #e5e7eb;
416
- border-radius: 7px;
3426
+ border-radius: 8px;
417
3427
  background: #fff;
418
- color: #64748b;
419
- display: inline-flex;
420
- align-items: center;
421
- justify-content: center;
422
- padding: 0;
3428
+ color: #334155;
3429
+ padding: 0 10px;
3430
+ font-family: inherit;
3431
+ font-size: 12px;
3432
+ font-weight: 700;
423
3433
  cursor: pointer;
424
- transition: background 0.12s, border-color 0.12s, color 0.12s, box-shadow 0.12s;
3434
+ transition: background 0.12s, border-color 0.12s, color 0.12s;
425
3435
  }
426
- .di-section-icon-action:hover,
427
- .di-section-icon-action:focus-visible {
3436
+ .di-plugin-action:hover:not(:disabled),
3437
+ .di-plugin-action:focus-visible:not(:disabled) {
428
3438
  background: #faf5ff;
429
3439
  border-color: #c4b5fd;
430
3440
  color: #7c3aed;
431
3441
  outline: none;
432
- box-shadow: 0 1px 3px rgba(124, 58, 237, 0.12);
433
3442
  }
434
- .di-section-icon-action svg {
435
- width: 14px;
436
- height: 14px;
3443
+ .di-plugin-action:disabled {
3444
+ color: #cbd5e1;
3445
+ cursor: not-allowed;
437
3446
  }
438
- .di-section-icon-action--reset {
3447
+ .di-plugin-action--secondary {
439
3448
  color: #64748b;
440
3449
  }
441
3450
  .di-source-action {
@@ -1349,6 +4358,33 @@
1349
4358
  grid-template-columns: repeat(3, minmax(0, 1fr));
1350
4359
  row-gap: 6px;
1351
4360
  }
4361
+ .di-appearance-toolbar.di-container-toolbar--custom {
4362
+ grid-template-columns: repeat(2, minmax(0, 1fr));
4363
+ gap: var(--di-control-gap-y) var(--di-control-gap-x);
4364
+ }
4365
+ .di-appearance-field {
4366
+ display: grid;
4367
+ grid-template-columns: max-content minmax(0, 1fr);
4368
+ align-items: center;
4369
+ gap: var(--di-field-label-gap);
4370
+ min-width: 0;
4371
+ }
4372
+ .di-appearance-field-label {
4373
+ align-self: center;
4374
+ color: #9ca3af;
4375
+ font-size: 10px;
4376
+ font-weight: 800;
4377
+ line-height: 1.2;
4378
+ white-space: nowrap;
4379
+ }
4380
+ .di-appearance-field .di-custom-select {
4381
+ min-width: 0;
4382
+ }
4383
+ .di-appearance-field .di-typography-control-wrap,
4384
+ .di-appearance-field .di-color-select,
4385
+ .di-appearance-field .di-typography-control {
4386
+ min-width: 0;
4387
+ }
1352
4388
  .di-border-control--width,
1353
4389
  .di-border-control--line,
1354
4390
  .di-border-control--radius {
@@ -1738,9 +4774,38 @@
1738
4774
 
1739
4775
  /* ── 自定义底部 ── */
1740
4776
  .di-custom-bottom {
4777
+ --di-custom-color-control-height: 28px;
1741
4778
  border-top: 1px solid #f3f4f6;
1742
- padding: 8px 12px;
4779
+ margin: 0 -12px;
4780
+ padding: 12px;
4781
+ min-height: 52px;
1743
4782
  display: flex; align-items: center; gap: 6px;
4783
+ flex: 0 0 auto;
4784
+ box-sizing: border-box;
4785
+ }
4786
+ .di-custom-bottom .di-custom-color-trigger {
4787
+ box-sizing: border-box;
4788
+ width: var(--di-custom-color-control-height);
4789
+ height: var(--di-custom-color-control-height);
4790
+ border-radius: 6px;
4791
+ padding: 0;
4792
+ appearance: none;
4793
+ display: block;
4794
+ }
4795
+ .di-custom-bottom .di-custom-color-trigger:hover {
4796
+ transform: none;
4797
+ }
4798
+ .di-custom-color-input {
4799
+ position: absolute;
4800
+ width: 1px;
4801
+ height: 1px;
4802
+ opacity: 0;
4803
+ pointer-events: none;
4804
+ }
4805
+ .di-custom-bottom .di-field-wrap {
4806
+ box-sizing: border-box;
4807
+ height: var(--di-custom-color-control-height);
4808
+ border-radius: 6px;
1744
4809
  }
1745
4810
  /* 带前/后缀的输入组 */
1746
4811
  .di-field-wrap {
@@ -1831,13 +4896,20 @@
1831
4896
  border: 1px solid #e5e7eb;
1832
4897
  border-radius: 12px;
1833
4898
  box-shadow: 0 8px 24px rgba(0,0,0,0.12);
1834
- padding: 10px 12px 4px;
4899
+ padding: 12px 12px 0;
1835
4900
  min-width: 200px;
1836
4901
  max-width: 240px;
1837
4902
  max-height: 280px;
4903
+ display: flex;
4904
+ flex-direction: column;
4905
+ overflow: hidden;
4906
+ }
4907
+ .di-palette-scroll {
4908
+ min-height: 0;
1838
4909
  overflow-y: auto;
1839
4910
  }
1840
4911
  .di-palette-group { margin-bottom: 8px; }
4912
+ .di-palette-group--last { margin-bottom: 12px; }
1841
4913
  .di-palette-group-label {
1842
4914
  font-size: 10px;
1843
4915
  font-weight: 700;
@@ -1852,15 +4924,29 @@
1852
4924
  gap: 5px;
1853
4925
  }
1854
4926
  .di-palette-swatch {
4927
+ box-sizing: border-box;
4928
+ width: 26px;
4929
+ height: 26px;
4930
+ border-radius: 7px;
4931
+ border: 0;
4932
+ background: transparent;
4933
+ cursor: pointer;
4934
+ padding: 0;
4935
+ display: flex;
4936
+ align-items: center;
4937
+ justify-content: center;
4938
+ transition: box-shadow 0.1s, background 0.1s;
4939
+ flex-shrink: 0;
4940
+ }
4941
+ .di-palette-swatch:hover { background: #f8fafc; }
4942
+ .di-palette-swatch-fill {
4943
+ box-sizing: border-box;
1855
4944
  width: 22px;
1856
4945
  height: 22px;
1857
4946
  border-radius: 5px;
1858
4947
  border: 1px solid rgba(0,0,0,0.15);
1859
- cursor: pointer;
1860
- transition: transform 0.1s, box-shadow 0.1s;
1861
- flex-shrink: 0;
4948
+ flex: 0 0 auto;
1862
4949
  }
1863
- .di-palette-swatch:hover { transform: scale(1.15); box-shadow: 0 2px 6px rgba(0,0,0,0.15); }
1864
4950
  .di-palette-none {
1865
4951
  width: 22px; height: 22px; border-radius: 5px;
1866
4952
  border: 1px solid rgba(0,0,0,0.15); cursor: pointer; flex-shrink: 0;
@@ -1878,8 +4964,11 @@
1878
4964
  transform-origin: center;
1879
4965
  }
1880
4966
  .di-palette-swatch--on {
1881
- outline: 2px solid #7c3aed;
1882
- outline-offset: 1px;
4967
+ box-shadow: inset 0 0 0 2px #7c3aed;
4968
+ }
4969
+ .di-palette-swatch--on:hover {
4970
+ background: transparent;
4971
+ box-shadow: inset 0 0 0 2px #7c3aed;
1883
4972
  }
1884
4973
 
1885
4974
  /* ── 布局控制:位置 + 尺寸 ── */
@@ -2798,14 +5887,24 @@
2798
5887
  /* ── 底部 ── */
2799
5888
  .di-foot {
2800
5889
  display: flex;
5890
+ align-items: center;
2801
5891
  gap: 8px;
2802
5892
  padding: 8px 14px;
2803
5893
  border-top: 1px solid #f3f4f6;
2804
5894
  flex-shrink: 0;
2805
5895
  }
5896
+ .di-foot-secondary-actions {
5897
+ display: flex;
5898
+ align-items: center;
5899
+ flex: 0 0 auto;
5900
+ gap: 8px;
5901
+ min-width: 0;
5902
+ }
2806
5903
  .di-btn-cancel {
2807
- flex: 1;
2808
- padding: 7px 0;
5904
+ flex: 0 0 auto;
5905
+ min-width: 70px;
5906
+ height: 42px;
5907
+ padding: 0 10px;
2809
5908
  border-radius: 8px;
2810
5909
  border: 1px solid #e5e7eb;
2811
5910
  background: #fff;
@@ -2817,6 +5916,16 @@
2817
5916
  transition: background 0.12s;
2818
5917
  }
2819
5918
  .di-btn-cancel:hover { background: #f9fafb; }
5919
+ .di-btn-maker {
5920
+ flex: 0 0 auto;
5921
+ color: #7c3aed;
5922
+ border-color: #c4b5fd;
5923
+ background: #faf5ff;
5924
+ white-space: nowrap;
5925
+ }
5926
+ .di-btn-maker:hover {
5927
+ background: #f3e8ff;
5928
+ }
2820
5929
  .di-btn-submit {
2821
5930
  flex: 1.3;
2822
5931
  padding: 7px 0;
@@ -2850,8 +5959,10 @@
2850
5959
  }
2851
5960
  .di-btn-paste:hover { background: #ede9fe; }
2852
5961
  .di-btn-save {
2853
- flex: 1.6;
2854
- padding: 7px 12px;
5962
+ flex: 1 1 auto;
5963
+ min-width: 112px;
5964
+ height: 42px;
5965
+ padding: 0 16px;
2855
5966
  border-radius: 8px;
2856
5967
  border: none;
2857
5968
  background: #7c3aed;
@@ -2864,6 +5975,18 @@
2864
5975
  transition: background 0.12s;
2865
5976
  box-shadow: 0 2px 8px rgba(124,58,237,0.3);
2866
5977
  }
5978
+ .di-foot > .di-btn-save {
5979
+ flex: 0 0 102px;
5980
+ width: 102px;
5981
+ min-width: 102px;
5982
+ padding: 0 12px;
5983
+ }
5984
+ .di-foot--without-maker > .di-btn-save {
5985
+ flex: 1 1 auto;
5986
+ width: auto;
5987
+ min-width: 112px;
5988
+ padding: 0 16px;
5989
+ }
2867
5990
  .di-btn-save:hover { background: #6d28d9; }
2868
5991
 
2869
5992
  .di-section-title--spaced {