@24vlh/vds 0.1.9 → 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.
Files changed (61) hide show
  1. package/dist/components/action-bar.css +111 -0
  2. package/dist/components/action-bar.min.css +1 -0
  3. package/dist/components/authoring.css +262 -42
  4. package/dist/components/authoring.min.css +1 -1
  5. package/dist/components/avatar.css +229 -0
  6. package/dist/components/avatar.min.css +1 -0
  7. package/dist/components/badge-tag.css +235 -0
  8. package/dist/components/badge-tag.min.css +1 -0
  9. package/dist/components/buttons.css +90 -98
  10. package/dist/components/buttons.min.css +1 -1
  11. package/dist/components/command.css +846 -2
  12. package/dist/components/command.min.css +1 -1
  13. package/dist/components/content-blocks.css +328 -6
  14. package/dist/components/content-blocks.min.css +1 -1
  15. package/dist/components/description-list.css +117 -0
  16. package/dist/components/description-list.min.css +1 -0
  17. package/dist/components/feedback.css +106 -4
  18. package/dist/components/feedback.min.css +1 -1
  19. package/dist/components/flows.css +60 -47
  20. package/dist/components/flows.min.css +1 -1
  21. package/dist/components/forms-advanced.css +575 -4
  22. package/dist/components/forms-advanced.min.css +1 -1
  23. package/dist/components/forms.css +244 -0
  24. package/dist/components/forms.min.css +1 -1
  25. package/dist/components/guidance.css +989 -0
  26. package/dist/components/guidance.min.css +1 -0
  27. package/dist/components/header-footer.css +178 -18
  28. package/dist/components/header-footer.min.css +1 -1
  29. package/dist/components/hero.css +148 -14
  30. package/dist/components/hero.min.css +1 -1
  31. package/dist/components/icons.css +23 -11
  32. package/dist/components/icons.min.css +1 -1
  33. package/dist/components/navigation.css +67 -7
  34. package/dist/components/navigation.min.css +1 -1
  35. package/dist/components/overlays.css +121 -19
  36. package/dist/components/overlays.min.css +1 -1
  37. package/dist/components/progress.css +322 -0
  38. package/dist/components/progress.min.css +1 -0
  39. package/dist/components/sections.css +181 -41
  40. package/dist/components/sections.min.css +1 -1
  41. package/dist/components/skeleton.css +22 -3
  42. package/dist/components/skeleton.min.css +1 -1
  43. package/dist/components/state.css +172 -0
  44. package/dist/components/state.min.css +1 -0
  45. package/dist/components/tables.css +93 -15
  46. package/dist/components/tables.min.css +1 -1
  47. package/dist/components/tabs.css +116 -4
  48. package/dist/components/tabs.min.css +1 -1
  49. package/dist/components/toasts.css +115 -41
  50. package/dist/components/toasts.min.css +1 -1
  51. package/dist/components/tooltips-popovers.css +135 -93
  52. package/dist/components/tooltips-popovers.min.css +1 -1
  53. package/dist/components/utilities.css +33 -3
  54. package/dist/components/utilities.min.css +1 -1
  55. package/dist/core.css +43 -21
  56. package/dist/core.min.css +1 -1
  57. package/dist/identity.css +107 -1
  58. package/dist/identity.min.css +1 -1
  59. package/dist/vds.css +10058 -4141
  60. package/dist/vds.min.css +1 -1
  61. package/package.json +1 -1
@@ -8,6 +8,8 @@
8
8
  * metadata, icons, disabled/active/selected states
9
9
  * - Provide empty states and footer guidance for fuzzy-search systems
10
10
  * - Support compact density mode and optional leading/trailing icons
11
+ * - Extend command landing pages: actions, queues, glances, nudges,
12
+ * progress lanes, and activity snapshots
11
13
  * - Maintain predictable accessibility: focus-visible, aria-selected,
12
14
  * aria-disabled, and reduced motion
13
15
  *
@@ -49,6 +51,28 @@
49
51
  --command-label-muted: var(--color-text-muted);
50
52
  --command-scrollbar-thumb: var(--color-border-subtle);
51
53
  --command-scrollbar-track: transparent;
54
+
55
+ --command-page-bg: var(--color-bg);
56
+ --command-page-gap: var(--space-6);
57
+ --command-page-padding: var(--space-6);
58
+ --command-page-max-width: var(--content-width-xl);
59
+ --command-surface-bg: var(--color-surface);
60
+ --command-surface-border: var(--color-border-subtle);
61
+ --command-surface-radius: var(--radius-lg);
62
+ --command-surface-shadow: var(--shadow-sm);
63
+ --command-surface-pad: var(--space-4);
64
+ --command-surface-gap: var(--space-3);
65
+ --command-surface-title: var(--color-text);
66
+ --command-surface-muted: var(--color-text-muted);
67
+ --command-rail-width: var(--border-width-strong);
68
+ --command-accent: var(--color-accent);
69
+ --command-accent-soft: var(--color-accent-soft);
70
+ --command-accent-text: var(--color-on-accent);
71
+ --command-pill-bg: var(--color-surface-subtle);
72
+ --command-pill-border: var(--color-border-subtle);
73
+ --command-pill-text: var(--color-text-muted);
74
+ --command-progress-track: var(--color-muted-bg);
75
+ --command-progress-fill: var(--color-accent);
52
76
  }
53
77
 
54
78
  .command {
@@ -508,14 +532,834 @@
508
532
  }
509
533
 
510
534
  /* ---------------------------------------------------------
511
- 8. REDUCED MOTION SAFETY (optional extra)
535
+ 8. COMMAND PAGE FOUNDATION (Landing / Hub)
536
+ --------------------------------------------------------- */
537
+
538
+ .command-page {
539
+ display: flex;
540
+ flex-direction: column;
541
+ gap: var(--command-page-gap);
542
+ max-width: var(--command-page-max-width);
543
+ margin: 0 auto;
544
+ color: var(--command-surface-title);
545
+ }
546
+
547
+ .command-page--dense {
548
+ --command-page-gap: var(--space-4);
549
+ }
550
+
551
+ .command-page__header {
552
+ display: flex;
553
+ flex-direction: column;
554
+ gap: var(--space-2);
555
+ }
556
+
557
+ .command-page__kicker {
558
+ font-size: var(--text-xs);
559
+ letter-spacing: 0.1em;
560
+ text-transform: uppercase;
561
+ color: var(--command-surface-muted);
562
+ }
563
+
564
+ .command-page__title {
565
+ font-size: var(--text-2xl);
566
+ font-weight: 600;
567
+ font-weight: var(--font-weight-semibold, 600);
568
+ }
569
+
570
+ .command-page__subtitle {
571
+ font-size: var(--text-sm);
572
+ color: var(--command-surface-muted);
573
+ max-width: 60ch;
574
+ }
575
+
576
+ .command-page__actions,
577
+ .command-page__meta {
578
+ display: flex;
579
+ flex-wrap: wrap;
580
+ align-items: center;
581
+ gap: var(--space-2);
582
+ }
583
+
584
+ .command-page__meta {
585
+ font-size: var(--text-xs);
586
+ color: var(--command-surface-muted);
587
+ }
588
+
589
+ .command-layout {
590
+ display: grid;
591
+ grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
592
+ grid-gap: var(--space-6);
593
+ gap: var(--space-6);
594
+ }
595
+
596
+ .command-layout--balanced {
597
+ grid-template-columns: repeat(2, minmax(0, 1fr));
598
+ }
599
+
600
+ @media (max-width: 1024px) {
601
+ .command-layout,
602
+ .command-layout--balanced {
603
+ grid-template-columns: 1fr;
604
+ }
605
+ }
606
+
607
+ .command-stack {
608
+ display: flex;
609
+ flex-direction: column;
610
+ gap: var(--command-surface-gap);
611
+ }
612
+
613
+ .command-stack--loose {
614
+ gap: var(--space-5);
615
+ }
616
+
617
+ /* ---------------------------------------------------------
618
+ 9. COMMAND TOOLBAR
619
+ --------------------------------------------------------- */
620
+
621
+ .command-toolbar {
622
+ display: flex;
623
+ flex-wrap: wrap;
624
+ align-items: center;
625
+ justify-content: space-between;
626
+ gap: var(--space-3);
627
+ padding: var(--space-3) var(--space-4);
628
+ border: 1px solid var(--command-surface-border);
629
+ border: var(--border-width, 1px) solid var(--command-surface-border);
630
+ border-radius: var(--command-surface-radius);
631
+ background: var(--command-surface-bg);
632
+ box-shadow: var(--command-surface-shadow);
633
+ }
634
+
635
+ .command-toolbar__group,
636
+ .command-toolbar__actions {
637
+ display: flex;
638
+ flex-wrap: wrap;
639
+ align-items: center;
640
+ gap: var(--space-2);
641
+ }
642
+
643
+ .command-toolbar__search {
644
+ flex: 1 1 14rem;
645
+ min-width: 12rem;
646
+ }
647
+
648
+ /* ---------------------------------------------------------
649
+ 10. GRID + VARIANTS
650
+ --------------------------------------------------------- */
651
+
652
+ .command-grid {
653
+ display: grid;
654
+ grid-gap: var(--command-surface-gap);
655
+ gap: var(--command-surface-gap);
656
+ grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
657
+ }
658
+
659
+ .command-grid--2 {
660
+ grid-template-columns: repeat(2, minmax(0, 1fr));
661
+ }
662
+
663
+ .command-grid--3 {
664
+ grid-template-columns: repeat(3, minmax(0, 1fr));
665
+ }
666
+
667
+ .command-grid--4 {
668
+ grid-template-columns: repeat(4, minmax(0, 1fr));
669
+ }
670
+
671
+ @media (max-width: 1024px) {
672
+ .command-grid--3,
673
+ .command-grid--4 {
674
+ grid-template-columns: repeat(2, minmax(0, 1fr));
675
+ }
676
+ }
677
+
678
+ @media (max-width: 720px) {
679
+ .command-grid--2,
680
+ .command-grid--3,
681
+ .command-grid--4 {
682
+ grid-template-columns: 1fr;
683
+ }
684
+ }
685
+
686
+ :where(.command-card,
687
+ .command-action,
688
+ .command-nudge,
689
+ .command-glance,
690
+ .command-pill,
691
+ .command-step)[data-variant="info"] {
692
+ --command-variant-rail: var(--semantic-info-border, var(--color-info));
693
+ --command-variant-tint: var(--semantic-info-bg, var(--color-info-soft));
694
+ --command-variant-text: var(--semantic-info-text, var(--color-text));
695
+ --command-variant-muted: var(--semantic-info-text, var(--color-text-muted));
696
+ }
697
+
698
+ :where(.command-card,
699
+ .command-action,
700
+ .command-nudge,
701
+ .command-glance,
702
+ .command-pill,
703
+ .command-step)[data-variant="success"] {
704
+ --command-variant-rail: var(--semantic-success-border, var(--color-success));
705
+ --command-variant-tint: var(--semantic-success-bg, var(--color-success-soft));
706
+ --command-variant-text: var(--semantic-success-text, var(--color-text));
707
+ --command-variant-muted: var(--semantic-success-text, var(--color-text-muted));
708
+ }
709
+
710
+ :where(.command-card,
711
+ .command-action,
712
+ .command-nudge,
713
+ .command-glance,
714
+ .command-pill,
715
+ .command-step)[data-variant="warning"] {
716
+ --command-variant-rail: var(--semantic-warning-border, var(--color-warning));
717
+ --command-variant-tint: var(--semantic-warning-bg, var(--color-warning-soft));
718
+ --command-variant-text: var(--semantic-warning-text, var(--color-text));
719
+ --command-variant-muted: var(--semantic-warning-text, var(--color-text-muted));
720
+ }
721
+
722
+ :where(.command-card,
723
+ .command-action,
724
+ .command-nudge,
725
+ .command-glance,
726
+ .command-pill,
727
+ .command-step)[data-variant="danger"] {
728
+ --command-variant-rail: var(--semantic-danger-border, var(--color-danger));
729
+ --command-variant-tint: var(--semantic-danger-bg, var(--color-danger-soft));
730
+ --command-variant-text: var(--semantic-danger-text, var(--color-text));
731
+ --command-variant-muted: var(--semantic-danger-text, var(--color-text-muted));
732
+ }
733
+
734
+ :where(.command-card,
735
+ .command-action,
736
+ .command-nudge,
737
+ .command-glance,
738
+ .command-pill,
739
+ .command-step)[data-variant="accent"] {
740
+ --command-variant-rail: var(--accent-soft-border, var(--color-accent));
741
+ --command-variant-tint: var(--accent-soft-surface, var(--color-accent-soft));
742
+ --command-variant-text: var(--accent-soft-on, var(--color-on-accent));
743
+ --command-variant-muted: var(--accent-soft-on, var(--color-on-accent));
744
+ }
745
+
746
+ :where(.command-card,
747
+ .command-action,
748
+ .command-nudge,
749
+ .command-glance,
750
+ .command-pill,
751
+ .command-step)[data-variant="neutral"] {
752
+ --command-variant-rail: var(--color-border-strong);
753
+ --command-variant-tint: var(--color-surface-subtle);
754
+ --command-variant-text: var(--color-text);
755
+ --command-variant-muted: var(--color-text-muted);
756
+ }
757
+
758
+ /* ---------------------------------------------------------
759
+ 11. CARD + SURFACE
760
+ --------------------------------------------------------- */
761
+
762
+ .command-card {
763
+ --command-variant-rail: var(--command-accent);
764
+ --command-variant-tint: var(--command-accent-soft);
765
+ --command-variant-text: var(--command-surface-title);
766
+ --command-variant-muted: var(--command-surface-muted);
767
+
768
+ display: flex;
769
+ flex-direction: column;
770
+ gap: var(--space-2);
771
+ padding: var(--command-surface-pad);
772
+ border-radius: var(--command-surface-radius);
773
+ border: 1px solid var(--command-surface-border);
774
+ border: var(--border-width, 1px) solid var(--command-surface-border);
775
+ background: var(--command-surface-bg);
776
+ box-shadow: var(--command-surface-shadow);
777
+ color: var(--command-variant-text);
778
+ }
779
+
780
+ .command-card--rail {
781
+ border-left: var(--command-rail-width) solid var(--command-variant-rail);
782
+ }
783
+
784
+ .command-card--tint {
785
+ background: var(--command-variant-tint);
786
+ }
787
+
788
+ .command-card--flat {
789
+ box-shadow: none;
790
+ }
791
+
792
+ .command-card__kicker {
793
+ font-size: var(--text-xs);
794
+ text-transform: uppercase;
795
+ letter-spacing: 0.08em;
796
+ color: var(--command-variant-muted);
797
+ }
798
+
799
+ .command-card__title {
800
+ font-size: var(--text-md);
801
+ font-weight: 600;
802
+ font-weight: var(--font-weight-semibold, 600);
803
+ }
804
+
805
+ .command-card__subtitle {
806
+ font-size: var(--text-sm);
807
+ color: var(--command-variant-muted);
808
+ }
809
+
810
+ .command-card__meta,
811
+ .command-card__footer {
812
+ display: flex;
813
+ flex-wrap: wrap;
814
+ gap: var(--space-2);
815
+ font-size: var(--text-xs);
816
+ color: var(--command-variant-muted);
817
+ }
818
+
819
+ /* ---------------------------------------------------------
820
+ 12. PILLS / TAGS
821
+ --------------------------------------------------------- */
822
+
823
+ .command-pill {
824
+ --command-variant-rail: var(--command-pill-border);
825
+ --command-variant-tint: var(--command-pill-bg);
826
+ --command-variant-text: var(--command-pill-text);
827
+
828
+ display: inline-flex;
829
+ align-items: center;
830
+ gap: var(--space-1);
831
+ padding: 0 var(--space-2);
832
+ border-radius: var(--radius-pill);
833
+ border: 1px solid var(--command-variant-rail);
834
+ border: var(--border-width, 1px) solid var(--command-variant-rail);
835
+ background: var(--command-variant-tint);
836
+ color: var(--command-variant-text);
837
+ font-size: var(--text-xxs);
838
+ text-transform: uppercase;
839
+ letter-spacing: 0.08em;
840
+ white-space: nowrap;
841
+ }
842
+
843
+ /* ---------------------------------------------------------
844
+ 13. ACTIONS (Tiles + Rows)
845
+ --------------------------------------------------------- */
846
+
847
+ .command-action {
848
+ --command-variant-rail: var(--command-accent);
849
+ --command-variant-tint: var(--command-accent-soft);
850
+ --command-variant-text: var(--command-surface-title);
851
+ --command-variant-muted: var(--command-surface-muted);
852
+
853
+ position: relative;
854
+ display: flex;
855
+ flex-direction: column;
856
+ gap: var(--space-1);
857
+ padding: var(--command-surface-pad);
858
+ border-radius: var(--command-surface-radius);
859
+ border: 1px solid var(--command-surface-border);
860
+ border: var(--border-width, 1px) solid var(--command-surface-border);
861
+ background: var(--command-surface-bg);
862
+ box-shadow: var(--shadow-xs);
863
+ color: var(--command-variant-text);
864
+ -webkit-text-decoration: none;
865
+ text-decoration: none;
866
+
867
+ transition: transform 120ms ease-out, box-shadow 120ms ease-out, border-color 120ms ease-out, background-color 120ms ease-out;
868
+
869
+ transition: transform var(--transition-fast, 120ms ease-out), box-shadow var(--transition-fast, 120ms ease-out), border-color var(--transition-fast, 120ms ease-out), background-color var(--transition-fast, 120ms ease-out);
870
+ }
871
+
872
+ .command-action:hover {
873
+ background: var(--command-variant-tint);
874
+ border-color: var(--command-variant-rail);
875
+ transform: translateY(-1px);
876
+ }
877
+
878
+ .command-action--primary {
879
+ padding: var(--space-5);
880
+ grid-column: span 2;
881
+ }
882
+
883
+ .command-action--row {
884
+ flex-direction: row;
885
+ align-items: center;
886
+ justify-content: space-between;
887
+ gap: var(--space-3);
888
+ }
889
+
890
+ .command-action--row .command-action__content {
891
+ flex: 1;
892
+ }
893
+
894
+ .command-action--row .command-action__meta {
895
+ margin-left: auto;
896
+ }
897
+
898
+ @media (max-width: 720px) {
899
+ .command-action--primary {
900
+ grid-column: span 1;
901
+ }
902
+ }
903
+
904
+ .command-action__icon {
905
+ display: inline-flex;
906
+ align-items: center;
907
+ justify-content: center;
908
+ width: 1.25rem;
909
+ width: var(--icon-md, 1.25rem);
910
+ height: 1.25rem;
911
+ height: var(--icon-md, 1.25rem);
912
+ color: var(--command-variant-rail);
913
+ }
914
+
915
+ .command-action__icon svg,
916
+ .command-action__icon .icon {
917
+ width: 100%;
918
+ height: 100%;
919
+ }
920
+
921
+ .command-action__content {
922
+ display: flex;
923
+ flex-direction: column;
924
+ gap: var(--space-1);
925
+ min-width: 0;
926
+ }
927
+
928
+ .command-action__title {
929
+ font-size: var(--text-sm);
930
+ font-weight: 600;
931
+ font-weight: var(--font-weight-semibold, 600);
932
+ }
933
+
934
+ .command-action__desc {
935
+ font-size: var(--text-xs);
936
+ color: var(--command-variant-muted);
937
+ }
938
+
939
+ .command-action__meta {
940
+ display: flex;
941
+ flex-wrap: wrap;
942
+ gap: var(--space-2);
943
+ font-size: var(--text-xs);
944
+ color: var(--command-variant-muted);
945
+ }
946
+
947
+ /* ---------------------------------------------------------
948
+ 14. NEXT STEPS
949
+ --------------------------------------------------------- */
950
+
951
+ .command-steps {
952
+ list-style: none;
953
+ margin: 0;
954
+ padding: 0;
955
+ display: grid;
956
+ grid-gap: var(--space-2);
957
+ gap: var(--space-2);
958
+ }
959
+
960
+ .command-step {
961
+ --command-variant-rail: var(--command-accent);
962
+ --command-variant-tint: var(--command-accent-soft);
963
+ --command-variant-text: var(--command-surface-title);
964
+ --command-variant-muted: var(--command-surface-muted);
965
+
966
+ display: grid;
967
+ grid-template-columns: auto minmax(0, 1fr) auto;
968
+ grid-gap: var(--space-3);
969
+ gap: var(--space-3);
970
+ align-items: start;
971
+ padding: var(--space-3);
972
+ border-radius: var(--command-surface-radius);
973
+ border: 1px solid var(--command-surface-border);
974
+ border: var(--border-width, 1px) solid var(--command-surface-border);
975
+ background: var(--command-surface-bg);
976
+ }
977
+
978
+ .command-step__index {
979
+ width: var(--space-6);
980
+ height: var(--space-6);
981
+ border-radius: 999px;
982
+ background: var(--command-variant-tint);
983
+ color: var(--command-variant-text);
984
+ font-size: var(--text-xs);
985
+ font-weight: 600;
986
+ font-weight: var(--font-weight-semibold, 600);
987
+ display: inline-flex;
988
+ align-items: center;
989
+ justify-content: center;
990
+ }
991
+
992
+ .command-step__content {
993
+ display: flex;
994
+ flex-direction: column;
995
+ gap: var(--space-1);
996
+ min-width: 0;
997
+ }
998
+
999
+ .command-step__title {
1000
+ font-size: var(--text-sm);
1001
+ font-weight: 600;
1002
+ font-weight: var(--font-weight-semibold, 600);
1003
+ }
1004
+
1005
+ .command-step__desc {
1006
+ font-size: var(--text-xs);
1007
+ color: var(--command-variant-muted);
1008
+ }
1009
+
1010
+ .command-step__meta {
1011
+ display: flex;
1012
+ flex-wrap: wrap;
1013
+ gap: var(--space-2);
1014
+ font-size: var(--text-xs);
1015
+ color: var(--command-variant-muted);
1016
+ }
1017
+
1018
+ .command-step__actions {
1019
+ display: flex;
1020
+ align-items: center;
1021
+ gap: var(--space-2);
1022
+ }
1023
+
1024
+ .command-step--done {
1025
+ opacity: 0.7;
1026
+ }
1027
+
1028
+ /* ---------------------------------------------------------
1029
+ 15. QUEUE + LANES
1030
+ --------------------------------------------------------- */
1031
+
1032
+ .command-lanes {
1033
+ display: grid;
1034
+ grid-gap: var(--space-3);
1035
+ gap: var(--space-3);
1036
+ grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
1037
+ }
1038
+
1039
+ .command-lane {
1040
+ display: flex;
1041
+ flex-direction: column;
1042
+ gap: var(--space-2);
1043
+ padding: var(--space-3);
1044
+ border-radius: var(--command-surface-radius);
1045
+ border: 1px solid var(--command-surface-border);
1046
+ border: var(--border-width, 1px) solid var(--command-surface-border);
1047
+ background: var(--command-surface-bg);
1048
+ }
1049
+
1050
+ .command-lane__header {
1051
+ display: flex;
1052
+ align-items: center;
1053
+ justify-content: space-between;
1054
+ gap: var(--space-2);
1055
+ }
1056
+
1057
+ .command-lane__title {
1058
+ font-size: var(--text-xs);
1059
+ text-transform: uppercase;
1060
+ letter-spacing: 0.08em;
1061
+ color: var(--command-surface-muted);
1062
+ }
1063
+
1064
+ .command-lane__count {
1065
+ font-size: var(--text-xs);
1066
+ color: var(--command-surface-muted);
1067
+ }
1068
+
1069
+ .command-queue {
1070
+ display: grid;
1071
+ grid-gap: var(--space-2);
1072
+ gap: var(--space-2);
1073
+ }
1074
+
1075
+ .command-queue__item {
1076
+ display: grid;
1077
+ grid-template-columns: auto minmax(0, 1fr) auto;
1078
+ grid-gap: var(--space-3);
1079
+ gap: var(--space-3);
1080
+ align-items: center;
1081
+ padding: var(--space-3);
1082
+ border-radius: var(--command-surface-radius);
1083
+ border: 1px solid var(--command-surface-border);
1084
+ border: var(--border-width, 1px) solid var(--command-surface-border);
1085
+ background: var(--command-surface-bg);
1086
+ }
1087
+
1088
+ .command-queue__status {
1089
+ width: 0.6rem;
1090
+ height: 0.6rem;
1091
+ border-radius: 999px;
1092
+ background: var(--color-info);
1093
+ }
1094
+
1095
+ .command-queue__status--success {
1096
+ background: var(--color-success);
1097
+ }
1098
+
1099
+ .command-queue__status--warning {
1100
+ background: var(--color-warning);
1101
+ }
1102
+
1103
+ .command-queue__status--danger {
1104
+ background: var(--color-danger);
1105
+ }
1106
+
1107
+ .command-queue__content {
1108
+ display: flex;
1109
+ flex-direction: column;
1110
+ gap: var(--space-1);
1111
+ min-width: 0;
1112
+ }
1113
+
1114
+ .command-queue__title {
1115
+ font-size: var(--text-sm);
1116
+ font-weight: 600;
1117
+ font-weight: var(--font-weight-semibold, 600);
1118
+ }
1119
+
1120
+ .command-queue__meta {
1121
+ display: flex;
1122
+ flex-wrap: wrap;
1123
+ gap: var(--space-2);
1124
+ font-size: var(--text-xs);
1125
+ color: var(--command-surface-muted);
1126
+ }
1127
+
1128
+ .command-queue__actions {
1129
+ display: flex;
1130
+ align-items: center;
1131
+ gap: var(--space-2);
1132
+ }
1133
+
1134
+ .command-progress {
1135
+ height: 0.35rem;
1136
+ border-radius: 999px;
1137
+ background: var(--command-progress-track);
1138
+ overflow: hidden;
1139
+ }
1140
+
1141
+ .command-progress__bar {
1142
+ height: 100%;
1143
+ width: 0;
1144
+ background: var(--command-progress-fill);
1145
+ transition: width 180ms ease-out;
1146
+ transition: width var(--transition-normal, 180ms ease-out);
1147
+ }
1148
+
1149
+ .command-progress--success {
1150
+ --command-progress-fill: var(--color-success);
1151
+ }
1152
+
1153
+ .command-progress--warning {
1154
+ --command-progress-fill: var(--color-warning);
1155
+ }
1156
+
1157
+ .command-progress--danger {
1158
+ --command-progress-fill: var(--color-danger);
1159
+ }
1160
+
1161
+ /* ---------------------------------------------------------
1162
+ 16. GLANCE METRICS
1163
+ --------------------------------------------------------- */
1164
+
1165
+ .command-glance-grid {
1166
+ display: grid;
1167
+ grid-gap: var(--space-3);
1168
+ gap: var(--space-3);
1169
+ grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
1170
+ }
1171
+
1172
+ .command-glance {
1173
+ --command-variant-rail: var(--command-accent);
1174
+ --command-variant-tint: var(--command-accent-soft);
1175
+ --command-variant-text: var(--command-surface-title);
1176
+ --command-variant-muted: var(--command-surface-muted);
1177
+
1178
+ display: flex;
1179
+ flex-direction: column;
1180
+ gap: var(--space-1);
1181
+ padding: var(--space-3);
1182
+ border-radius: var(--radius-md);
1183
+ border: 1px solid var(--command-surface-border);
1184
+ border: var(--border-width, 1px) solid var(--command-surface-border);
1185
+ background: var(--command-surface-bg);
1186
+ color: var(--command-variant-text);
1187
+ }
1188
+
1189
+ .command-glance--tint {
1190
+ background: var(--command-variant-tint);
1191
+ border-color: var(--command-variant-rail);
1192
+ }
1193
+
1194
+ .command-glance__value {
1195
+ font-size: var(--text-lg);
1196
+ font-weight: 600;
1197
+ font-weight: var(--font-weight-semibold, 600);
1198
+ }
1199
+
1200
+ .command-glance__label {
1201
+ font-size: var(--text-xxs);
1202
+ text-transform: uppercase;
1203
+ letter-spacing: 0.08em;
1204
+ color: var(--command-variant-muted);
1205
+ }
1206
+
1207
+ .command-glance__meta {
1208
+ font-size: var(--text-xs);
1209
+ color: var(--command-variant-muted);
1210
+ }
1211
+
1212
+ /* ---------------------------------------------------------
1213
+ 17. NUDGES
1214
+ --------------------------------------------------------- */
1215
+
1216
+ .command-nudge {
1217
+ --command-variant-rail: var(--command-accent);
1218
+ --command-variant-tint: var(--command-accent-soft);
1219
+ --command-variant-text: var(--command-surface-title);
1220
+ --command-variant-muted: var(--command-surface-muted);
1221
+
1222
+ display: flex;
1223
+ gap: var(--space-3);
1224
+ align-items: flex-start;
1225
+ padding: var(--space-3) var(--space-4);
1226
+ border-radius: var(--command-surface-radius);
1227
+ border: 1px solid var(--command-surface-border);
1228
+ border: var(--border-width, 1px) solid var(--command-surface-border);
1229
+ background: var(--command-surface-bg);
1230
+ color: var(--command-variant-text);
1231
+ }
1232
+
1233
+ .command-nudge--tint {
1234
+ background: var(--command-variant-tint);
1235
+ border-color: var(--command-variant-rail);
1236
+ }
1237
+
1238
+ .command-nudge__icon {
1239
+ width: 1.25rem;
1240
+ width: var(--icon-md, 1.25rem);
1241
+ height: 1.25rem;
1242
+ height: var(--icon-md, 1.25rem);
1243
+ display: inline-flex;
1244
+ align-items: center;
1245
+ justify-content: center;
1246
+ color: var(--command-variant-rail);
1247
+ flex-shrink: 0;
1248
+ }
1249
+
1250
+ .command-nudge__body {
1251
+ display: flex;
1252
+ flex-direction: column;
1253
+ gap: var(--space-1);
1254
+ }
1255
+
1256
+ .command-nudge__title {
1257
+ font-size: var(--text-sm);
1258
+ font-weight: 600;
1259
+ font-weight: var(--font-weight-semibold, 600);
1260
+ }
1261
+
1262
+ .command-nudge__text {
1263
+ font-size: var(--text-xs);
1264
+ color: var(--command-variant-muted);
1265
+ }
1266
+
1267
+ .command-nudge__actions {
1268
+ display: flex;
1269
+ flex-wrap: wrap;
1270
+ gap: var(--space-2);
1271
+ }
1272
+
1273
+ /* ---------------------------------------------------------
1274
+ 18. ACTIVITY STREAM
1275
+ --------------------------------------------------------- */
1276
+
1277
+ .command-activity {
1278
+ list-style: none;
1279
+ margin: 0;
1280
+ padding: 0;
1281
+ display: grid;
1282
+ grid-gap: var(--space-2);
1283
+ gap: var(--space-2);
1284
+ }
1285
+
1286
+ .command-activity__item {
1287
+ display: grid;
1288
+ grid-template-columns: auto minmax(0, 1fr);
1289
+ grid-gap: var(--space-3);
1290
+ gap: var(--space-3);
1291
+ align-items: start;
1292
+ padding-bottom: var(--space-2);
1293
+ border-bottom: 1px solid var(--command-surface-border);
1294
+ border-bottom: var(--border-width, 1px) solid var(--command-surface-border);
1295
+ }
1296
+
1297
+ .command-activity__item:last-child {
1298
+ border-bottom: 0;
1299
+ padding-bottom: 0;
1300
+ }
1301
+
1302
+ .command-activity__time {
1303
+ font-size: var(--text-xs);
1304
+ color: var(--command-surface-muted);
1305
+ white-space: nowrap;
1306
+ }
1307
+
1308
+ .command-activity__title {
1309
+ font-size: var(--text-sm);
1310
+ font-weight: 600;
1311
+ font-weight: var(--font-weight-semibold, 600);
1312
+ }
1313
+
1314
+ .command-activity__meta {
1315
+ font-size: var(--text-xs);
1316
+ color: var(--command-surface-muted);
1317
+ }
1318
+
1319
+ /* ---------------------------------------------------------
1320
+ 19. EMPTY STATE
1321
+ --------------------------------------------------------- */
1322
+
1323
+ .command-empty {
1324
+ padding: var(--space-6);
1325
+ border-radius: var(--command-surface-radius);
1326
+ border: 1px dashed var(--command-surface-border);
1327
+ border: var(--border-width, 1px) dashed var(--command-surface-border);
1328
+ text-align: center;
1329
+ color: var(--command-surface-muted);
1330
+ }
1331
+
1332
+ .command-empty__title {
1333
+ font-size: var(--text-md);
1334
+ font-weight: 600;
1335
+ font-weight: var(--font-weight-semibold, 600);
1336
+ color: var(--command-surface-title);
1337
+ }
1338
+
1339
+ .command-empty__body {
1340
+ font-size: var(--text-sm);
1341
+ margin-top: var(--space-1);
1342
+ }
1343
+
1344
+ .command-empty__actions {
1345
+ display: flex;
1346
+ justify-content: center;
1347
+ flex-wrap: wrap;
1348
+ gap: var(--space-2);
1349
+ margin-top: var(--space-3);
1350
+ }
1351
+
1352
+ /* ---------------------------------------------------------
1353
+ 20. REDUCED MOTION SAFETY (optional extra)
512
1354
  --------------------------------------------------------- */
513
1355
 
514
1356
  @media (prefers-reduced-motion: reduce) {
515
1357
  .command,
516
1358
  .command::before,
517
1359
  .command__panel,
518
- .command__item {
1360
+ .command__item,
1361
+ .command-action,
1362
+ .command-progress__bar {
519
1363
  transition: none !important;
520
1364
  }
521
1365
  }