@momo-webplatform/mobase-next 1.0.3 → 1.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@momo-webplatform/mobase-next",
3
- "version": "1.0.3",
3
+ "version": "1.0.5",
4
4
  "sideEffects": [
5
5
  "**/*.css",
6
6
  "./src/styles/**"
@@ -68,8 +68,8 @@
68
68
  "eslint": "^8.57.0",
69
69
  "tsup": "^8.0.2",
70
70
  "typescript": "5.5.4",
71
- "@repo/typescript-config": "0.0.0",
72
- "@repo/eslint-config": "0.0.0"
71
+ "@repo/eslint-config": "0.0.0",
72
+ "@repo/typescript-config": "0.0.0"
73
73
  },
74
74
  "publishConfig": {
75
75
  "access": "public"
@@ -448,10 +448,693 @@ html {
448
448
  tab-size: 4;
449
449
  touch-action: manipulation;
450
450
  text-rendering: optimizelegibility;
451
- -webkit-font-smoothing: antialiased;
452
451
  -moz-osx-font-smoothing: grayscale;
453
452
  font-synthesis: none;
454
453
  -webkit-text-size-adjust: 100%;
455
454
  -moz-text-size-adjust: 100%;
456
455
  text-size-adjust: 100%;
456
+ }
457
+
458
+
459
+ /* MOBASE PROSE */
460
+
461
+ /* Biến toàn cục (được chuyển từ biến SCSS $) */
462
+ :root {
463
+ --prose-divider-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='16'%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M8 15h2v1H8zm-2.5-3h7v1h-7zM3 9h12v1H3zM0 6h18v1H0zm2-3h14v1H2zm5-3h4v1H7z'/%3E%3C/svg%3E");
464
+ }
465
+
466
+ /* Base style cho .mobase-prose áp dụng các tokens mặc định (Desktop) */
467
+ .mobase-prose {
468
+ /* Tokens Colors */
469
+ --prose-color-accent: rgb(var(--mobase-pink-500));
470
+ --prose-color-text: #212123;
471
+ --prose-color-muted: #000000a3;
472
+ --prose-color-caption: #0000007a;
473
+ --prose-color-footnote: #858585;
474
+ --prose-color-link: var(--prose-color-accent);
475
+ --prose-color-link-visited: rgb(var(--mobase-pink-700));
476
+ --prose-color-link-hover: rgb(var(--mobase-pink-400));
477
+ --prose-color-figure-border: #0000000a;
478
+ --prose-color-kbd-text: #000;
479
+ --prose-color-kbd-bg: #ffffff7a;
480
+ --prose-color-table-head: #333;
481
+
482
+ /* Tokens Weights */
483
+ --prose-weight-normal: 400;
484
+ --prose-weight-medium: 500;
485
+ --prose-weight-semibold: 600;
486
+ --prose-weight-bold: bold;
487
+
488
+ /* Tokens Spacing */
489
+ --prose-space-xs: 0.25rem;
490
+ --prose-space-sm: 0.625rem;
491
+ --prose-space-md: 1.25rem;
492
+ --prose-space-lg: 1.5rem;
493
+ --prose-space-xl: 2rem;
494
+ --prose-space-2xl: 2.5rem;
495
+ --prose-space-3xl: 3.5rem;
496
+ --prose-space-4xl: 3.75rem;
497
+ --prose-space-5xl: 5rem;
498
+ --prose-heading-margin: var(--prose-space-xl) 0 var(--prose-space-md);
499
+ --prose-subheading-margin: var(--prose-space-xl) 0 var(--prose-space-sm);
500
+ --prose-h2-h3-gap: var(--prose-space-2xl);
501
+ --prose-blockquote-margin: var(--prose-space-5xl) 0;
502
+ --prose-blockquote-padding-top-mobile: var(--prose-space-3xl);
503
+ --prose-blockquote-mark-gap: var(--prose-space-lg);
504
+ --prose-table-section-margin: var(--prose-space-xl);
505
+ --prose-figure-gap: var(--prose-space-2xl);
506
+ --prose-figure-caption-gap: var(--prose-space-sm);
507
+
508
+ /* Tokens Typography Desktop */
509
+ --prose-h1-size: 4.75rem;
510
+ --prose-h1-line: 4.75rem;
511
+ --prose-h2-size: 1.75rem;
512
+ --prose-h2-line: 2.25rem;
513
+ --prose-h3-size: 1.25rem;
514
+ --prose-h3-line: 1.5rem;
515
+ --prose-h4-size: 1.125rem;
516
+ --prose-h4-line: 1.5rem;
517
+ --prose-h5-size: 1.125rem;
518
+ --prose-h5-line: 1.5rem;
519
+ --prose-h6-size: 1rem;
520
+ --prose-h6-line: 1.25rem;
521
+ --prose-body-size: 1rem;
522
+ --prose-body-line: 1.5rem;
523
+ --prose-large-size: 1.25rem;
524
+ --prose-large-line: 2rem;
525
+ --prose-footnote-size: 0.9375rem;
526
+ --prose-footnote-line: 1.25rem;
527
+ --prose-caption-size: 0.875rem;
528
+ --prose-caption-line: 1.25rem;
529
+ --prose-code-size: 0.9375rem;
530
+ --prose-code-line: 1.5rem;
531
+ --prose-quote-size: 1.5rem;
532
+ --prose-quote-line: 2rem;
533
+ --prose-quote-small-size: 1.5rem;
534
+ --prose-quote-small-line: 2rem;
535
+ --prose-quote-mark-size: 4.75rem;
536
+ --prose-quote-letter-spacing: -0.03125rem;
537
+ --prose-blockquote-size: 1.125rem;
538
+ --prose-blockquote-line: 1.5rem;
539
+ --prose-table-head-size: 0.875rem;
540
+ --prose-table-head-line: 1rem;
541
+ --prose-table-body-size: 0.9375rem;
542
+ --prose-table-body-line: 1.25rem;
543
+
544
+ /* Tokens Misc */
545
+ --prose-media-radius: 0.625rem;
546
+ --prose-kbd-radius: 8px;
547
+ --prose-divider-width: 1.125rem;
548
+ --prose-divider-height: 1rem;
549
+ --prose-divider-opacity: 0.25;
550
+ --prose-divider-margin: var(--prose-space-4xl) auto;
551
+ --prose-large-divider-margin: var(--prose-space-3xl) auto;
552
+ --prose-transition-duration: 0.125s;
553
+ --prose-blockquote-width-desktop: 125%;
554
+ --prose-list-bullet-size: 0.375rem;
555
+ --prose-list-bullet-radius: 0.1875rem;
556
+ --prose-table-cell-min-width: 12.5rem;
557
+
558
+ position: relative;
559
+ }
560
+
561
+ /* Responsive: Ghi đè Typography trên Mobile (max-width: 767px) */
562
+ @media screen and (max-width: 767px) {
563
+ .mobase-prose {
564
+ --prose-h1-size: 4.75rem;
565
+ --prose-h1-line: 4.75rem;
566
+ --prose-h2-size: 1.5rem;
567
+ --prose-h2-line: 2rem;
568
+ --prose-h3-size: 1.25rem;
569
+ --prose-h3-line: 1.5rem;
570
+ --prose-h4-size: 1.125rem;
571
+ --prose-quote-size: 1.5rem;
572
+ --prose-quote-line: 2rem;
573
+ --prose-quote-small-size: 1.25rem;
574
+ --prose-quote-small-line: 1.5rem;
575
+ --prose-quote-letter-spacing: 0;
576
+ }
577
+ }
578
+
579
+ /* Media query cho khoảng màn hình từ tablet đến desktop nhỏ */
580
+ @media screen and (min-width: 768px) and (max-width: 1439px) {
581
+ .mobase-prose {
582
+ margin-left: auto;
583
+ margin-right: auto;
584
+ }
585
+ }
586
+
587
+ /* Chi tiết các Selector con bên trong .mobase-prose */
588
+ .mobase-prose h1,
589
+ .mobase-prose h2,
590
+ .mobase-prose h3 {
591
+ margin: var(--prose-heading-margin);
592
+ }
593
+
594
+ .mobase-prose h1,
595
+ .mobase-prose h2,
596
+ .mobase-prose h3,
597
+ .mobase-prose h4,
598
+ .mobase-prose h6 {
599
+ text-wrap: pretty;
600
+ }
601
+
602
+ .mobase-prose h1 {
603
+ font-size: var(--prose-h1-size);
604
+ font-weight: var(--prose-weight-bold);
605
+ line-height: var(--prose-h1-line);
606
+ }
607
+
608
+ .mobase-prose h2 {
609
+ font-size: var(--prose-h2-size);
610
+ font-weight: var(--prose-weight-bold);
611
+ line-height: var(--prose-h2-line);
612
+ }
613
+
614
+ .mobase-prose h2+h3 {
615
+ margin-top: var(--prose-h2-h3-gap);
616
+ }
617
+
618
+ .mobase-prose h3 {
619
+ font-size: var(--prose-h3-size);
620
+ font-weight: var(--prose-weight-bold);
621
+ line-height: var(--prose-h3-line);
622
+ }
623
+
624
+ @media screen and (max-width: 767px) {
625
+ .mobase-prose h3 {
626
+ letter-spacing: 0;
627
+ }
628
+ }
629
+
630
+ .mobase-prose h4,
631
+ .mobase-prose h5,
632
+ .mobase-prose h6 {
633
+ letter-spacing: 0;
634
+ margin: var(--prose-subheading-margin);
635
+ }
636
+
637
+ .mobase-prose h4 {
638
+ font-size: var(--prose-h4-size);
639
+ font-weight: var(--prose-weight-bold);
640
+ line-height: var(--prose-h4-line);
641
+ }
642
+
643
+ .mobase-prose h5 {
644
+ font-size: var(--prose-h5-size);
645
+ line-height: var(--prose-h5-line);
646
+ }
647
+
648
+ .mobase-prose h6 {
649
+ font-size: var(--prose-h6-size);
650
+ font-weight: var(--prose-weight-bold);
651
+ line-height: var(--prose-h6-line);
652
+ }
653
+
654
+ .mobase-prose p {
655
+ letter-spacing: 0;
656
+ text-wrap: pretty;
657
+ margin-bottom: var(--prose-space-md);
658
+ font-size: var(--prose-body-size);
659
+ font-weight: var(--prose-weight-normal);
660
+ line-height: var(--prose-body-line);
661
+ }
662
+
663
+ .mobase-prose p strong {
664
+ font-weight: var(--prose-weight-semibold);
665
+ }
666
+
667
+ .mobase-prose p:last-child {
668
+ margin-bottom: 0;
669
+ }
670
+
671
+ .mobase-prose .large {
672
+ color: var(--prose-color-text);
673
+ font-size: var(--prose-large-size);
674
+ line-height: var(--prose-large-line);
675
+ }
676
+
677
+ .mobase-prose .large+.large {
678
+ margin-top: var(--prose-space-md);
679
+ }
680
+
681
+ /* Giả lập mixin prose-divider-icon bằng CSS thuần */
682
+ .mobase-prose .large:not(:last-child):not(:has(+ .large)):not(:has(+ hr))::after {
683
+ content: "";
684
+ margin: var(--prose-large-divider-margin);
685
+ background-color: var(--prose-color-accent);
686
+ border: none;
687
+ width: var(--prose-divider-width);
688
+ height: var(--prose-divider-height);
689
+ display: block;
690
+ -webkit-mask-image: var(--prose-divider-mask);
691
+ mask-image: var(--prose-divider-mask);
692
+ -webkit-mask-repeat: no-repeat;
693
+ mask-repeat: no-repeat;
694
+ }
695
+
696
+ .mobase-prose .footnote {
697
+ color: var(--prose-color-footnote);
698
+ font-size: var(--prose-footnote-size);
699
+ font-weight: var(--prose-weight-normal);
700
+ line-height: var(--prose-footnote-line);
701
+ }
702
+
703
+ .mobase-prose hr {
704
+ opacity: var(--prose-divider-opacity);
705
+ margin: var(--prose-divider-margin);
706
+ background-color: var(--prose-color-accent);
707
+ border: none;
708
+ width: var(--prose-divider-width);
709
+ height: var(--prose-divider-height);
710
+ display: block;
711
+ -webkit-mask-image: var(--prose-divider-mask);
712
+ mask-image: var(--prose-divider-mask);
713
+ -webkit-mask-repeat: no-repeat;
714
+ mask-repeat: no-repeat;
715
+ }
716
+
717
+ .mobase-prose img,
718
+ .mobase-prose video {
719
+ border-radius: var(--prose-media-radius);
720
+ width: 100%;
721
+ display: block;
722
+ max-width: 100% !important;
723
+ height: auto !important;
724
+ margin-bottom: var(--prose-space-md);
725
+ }
726
+
727
+ .mobase-prose em {
728
+ font-style: italic;
729
+ }
730
+
731
+ .mobase-prose strong {
732
+ font-weight: var(--prose-weight-semibold);
733
+ }
734
+
735
+ .mobase-prose ol,
736
+ .mobase-prose ul {
737
+ margin-bottom: var(--prose-space-md);
738
+ }
739
+
740
+ .mobase-prose ol li,
741
+ .mobase-prose ul li {
742
+ margin-bottom: var(--prose-space-sm);
743
+ padding-left: 1.75rem;
744
+ font-size: var(--prose-body-size);
745
+ line-height: var(--prose-body-line);
746
+ position: relative;
747
+ }
748
+
749
+ .mobase-prose ol {
750
+ counter-reset: ordered-list;
751
+ }
752
+
753
+ .mobase-prose ol li {
754
+ counter-increment: ordered-list;
755
+ padding-left: 2rem;
756
+ }
757
+
758
+ .mobase-prose ol li::before {
759
+ content: counter(ordered-list) ".";
760
+ font-weight: var(--prose-weight-semibold);
761
+ display: block;
762
+ position: absolute;
763
+ top: 0;
764
+ left: 0;
765
+ }
766
+
767
+ .mobase-prose ul li {
768
+ padding-left: 1.5625rem;
769
+ }
770
+
771
+ .mobase-prose ul li::before {
772
+ content: "";
773
+ background-color: var(--prose-color-accent);
774
+ border-radius: var(--prose-list-bullet-radius);
775
+ width: var(--prose-list-bullet-size);
776
+ height: var(--prose-list-bullet-size);
777
+ display: block;
778
+ position: absolute;
779
+ top: 0.5625rem;
780
+ left: 0.4375rem;
781
+ }
782
+
783
+ .mobase-prose ul li ul {
784
+ margin: var(--prose-space-sm) 0;
785
+ }
786
+
787
+ .mobase-prose figure.no-border video,
788
+ .mobase-prose figure.no-border img {
789
+ border: none;
790
+ }
791
+
792
+ .mobase-prose figure.no-border .video-player {
793
+ box-shadow: none;
794
+ border: none;
795
+ }
796
+
797
+ .mobase-prose figure video,
798
+ .mobase-prose figure img {
799
+ border: 1px solid var(--prose-color-figure-border);
800
+ }
801
+
802
+ .mobase-prose figure p {
803
+ color: var(--prose-color-caption);
804
+ margin-top: var(--prose-figure-caption-gap);
805
+ font-size: var(--prose-caption-size);
806
+ line-height: var(--prose-caption-line);
807
+ }
808
+
809
+ /* Giả lập mixin prose-color-transition */
810
+ .mobase-prose figure a {
811
+ color: inherit;
812
+ font-weight: var(--prose-weight-bold);
813
+ text-decoration: underline;
814
+ transition: color var(--prose-transition-duration) ease-out;
815
+ }
816
+
817
+ @media (prefers-reduced-motion: reduce) {
818
+ .mobase-prose figure a {
819
+ transition-duration: 1ms;
820
+ }
821
+ }
822
+
823
+ .mobase-prose figure a:visited {
824
+ color: var(--prose-color-text);
825
+ }
826
+
827
+ .mobase-prose figure a:hover,
828
+ .mobase-prose figure a:active {
829
+ color: var(--prose-color-caption);
830
+ }
831
+
832
+ .mobase-prose figure kbd {
833
+ min-width: 1.125rem;
834
+ min-height: 1.125rem;
835
+ }
836
+
837
+ .mobase-prose p+figure,
838
+ .mobase-prose ul+figure {
839
+ margin: var(--prose-figure-gap) 0;
840
+ }
841
+
842
+ .mobase-prose figure+p {
843
+ margin-top: var(--prose-space-md);
844
+ }
845
+
846
+ .mobase-prose a:not(.button) {
847
+ color: var(--prose-color-link);
848
+ font-weight: var(--prose-weight-semibold);
849
+ text-decoration: underline;
850
+ transition: color var(--prose-transition-duration) ease-out;
851
+ }
852
+
853
+ @media (prefers-reduced-motion: reduce) {
854
+ .mobase-prose a:not(.button) {
855
+ transition-duration: 1ms;
856
+ }
857
+ }
858
+
859
+ .mobase-prose a:not(.button):visited {
860
+ color: var(--prose-color-link-visited);
861
+ }
862
+
863
+ .mobase-prose a:not(.button):hover,
864
+ .mobase-prose a:not(.button):active {
865
+ color: var(--prose-color-link-hover);
866
+ }
867
+
868
+ .mobase-prose kbd {
869
+ color: var(--prose-color-kbd-text);
870
+ background-color: var(--prose-color-kbd-bg);
871
+ border-radius: var(--prose-kbd-radius);
872
+ justify-content: center;
873
+ align-items: center;
874
+ min-width: 1.5rem;
875
+ min-height: 1.5rem;
876
+ padding: 0 var(--prose-space-xs);
877
+ font-size: var(--prose-caption-size);
878
+ font-weight: var(--prose-weight-bold);
879
+ display: inline-flex;
880
+ box-shadow: inset 0 0 0 1px #0000001a, inset 0 -1px #0000001a, inset 0 -2px #0000001a;
881
+ }
882
+
883
+ .mobase-prose kbd~kbd {
884
+ margin-left: var(--prose-space-xs);
885
+ }
886
+
887
+ .mobase-prose blockquote {
888
+ font-size: var(--prose-blockquote-size);
889
+ line-height: var(--prose-blockquote-line);
890
+ overflow-wrap: break-word;
891
+ box-sizing: border-box;
892
+ border: 0 solid;
893
+ margin: 0;
894
+ padding: 0;
895
+ color: var(--gray-900);
896
+ border-inline-start-width: .25rem;
897
+ border-inline-start-color: rgba(var(--mobase-pink-500));
898
+ quotes: "“" "”" "‘" "’";
899
+ margin-top: 1.66667em;
900
+ margin-bottom: 1.66667em;
901
+ padding-inline-start: 1em;
902
+ margin-block: var(--prose-space-xl);
903
+ border-left-style: solid;
904
+ padding-left: var(--prose-space-md);
905
+ font-weight: var(--prose-weight-normal);
906
+ border-color: rgba(var(--mobase-pink-500));
907
+ border-left-width: 2px;
908
+ font-style: normal;
909
+ }
910
+
911
+ .mobase-prose blockquote>p:last-of-type {
912
+ margin-bottom: 0;
913
+ }
914
+
915
+ @media screen and (max-width: 767px) {
916
+ .mobase-prose blockquote {
917
+ padding-left: var(--prose-space-sm);
918
+ }
919
+ }
920
+
921
+ .mobase-prose pre code {
922
+ padding: var(--prose-space-lg);
923
+ font-size: var(--prose-code-size);
924
+ line-height: var(--prose-code-line);
925
+ }
926
+
927
+ .mobase-prose .table-wrapper,
928
+ .mobase-prose .table-responsive {
929
+ overflow: auto;
930
+ margin-bottom: var(--prose-table-section-margin);
931
+ }
932
+
933
+ @media screen and (max-width: 767px) {
934
+
935
+ .mobase-prose .table-wrapper,
936
+ .mobase-prose .table-responsive {
937
+ margin-right: -1rem;
938
+ }
939
+ }
940
+
941
+ .mobase-prose .table-wrapper table,
942
+ .mobase-prose .table-responsive table {
943
+ margin-bottom: 0;
944
+ }
945
+
946
+ @media screen and (max-width: 1023px) {
947
+
948
+ .mobase-prose .table-wrapper table,
949
+ .mobase-prose .table-responsive table {
950
+ min-width: -webkit-max-content;
951
+ min-width: max-content;
952
+ }
953
+
954
+ .mobase-prose .table-wrapper table thead th,
955
+ .mobase-prose .table-responsive table thead th {
956
+ width: var(--prose-table-cell-min-width);
957
+ padding-right: var(--prose-space-md);
958
+ }
959
+ }
960
+
961
+ .mobase-prose table {
962
+ width: 100%;
963
+ box-sizing: border-box;
964
+ border: 0 solid;
965
+ margin-bottom: var(--prose-table-section-margin);
966
+ padding: 0;
967
+ }
968
+
969
+ @media screen and (min-width: 1024px) {
970
+ .mobase-prose table {
971
+ table-layout: fixed;
972
+ }
973
+ }
974
+
975
+ .mobase-prose thead,
976
+ .mobase-prose tbody {
977
+ border-bottom-width: 1px;
978
+ border-bottom-color: rgba(var(--mobase-gray-300));
979
+ }
980
+
981
+ .mobase-prose thead tr th,
982
+ .mobase-prose tbody tr th {
983
+ color: var(--prose-color-table-head);
984
+ text-align: left;
985
+ font-size: var(--prose-table-head-size);
986
+ font-weight: var(--prose-weight-semibold);
987
+ line-height: var(--prose-table-head-line);
988
+ padding-bottom: var(--prose-space-sm);
989
+ }
990
+
991
+ .mobase-prose thead tr th *,
992
+ .mobase-prose tbody tr th * {
993
+ font-weight: bold;
994
+ }
995
+
996
+ .mobase-prose thead tr th:first-child,
997
+ .mobase-prose tbody tr th:first-child {
998
+ padding-left: var(--prose-space-sm);
999
+ }
1000
+
1001
+ .mobase-prose thead tr th:last-child,
1002
+ .mobase-prose tbody tr th:last-child {
1003
+ padding-right: var(--prose-space-sm);
1004
+ }
1005
+
1006
+ .mobase-prose tbody {
1007
+ font-size: var(--prose-table-body-size);
1008
+ font-weight: 300;
1009
+ line-height: var(--prose-table-body-line);
1010
+ }
1011
+
1012
+ .mobase-prose tbody p {
1013
+ margin-bottom: 0;
1014
+ }
1015
+
1016
+ .mobase-prose tbody tr {
1017
+ opacity: 1;
1018
+ padding: var(--prose-space-sm);
1019
+ border-bottom-width: 1px;
1020
+ border-bottom-color: rgba(var(--mobase-gray-200));
1021
+ }
1022
+
1023
+ .mobase-prose tbody tr td {
1024
+ padding: var(--prose-space-sm) 0.625rem var(--prose-space-sm) 0;
1025
+ border: none;
1026
+ }
1027
+
1028
+ .mobase-prose tbody tr td:first-child {
1029
+ padding-left: var(--prose-space-sm);
1030
+ }
1031
+
1032
+ .mobase-prose tbody tr td:last-child {
1033
+ padding-right: var(--prose-space-sm);
1034
+ }
1035
+
1036
+ .mobase-prose tbody tr td strong {
1037
+ font-weight: var(--prose-weight-medium);
1038
+ }
1039
+
1040
+
1041
+ /* Biến thể 1: Variant .mobase-prose-md (FAQ, Feature rich text, v.v...) */
1042
+ .mobase-prose.mobase-prose-md {
1043
+ /* Ghi đè tokens mobile lên mọi kích thước màn hình */
1044
+ --prose-h1-size: 4.75rem;
1045
+ --prose-h1-line: 4.75rem;
1046
+ --prose-h2-size: 1.5rem;
1047
+ --prose-h2-line: 2rem;
1048
+ --prose-h3-size: 1.25rem;
1049
+ --prose-h3-line: 1.5rem;
1050
+ --prose-h4-size: 1.125rem;
1051
+ --prose-quote-size: 1.5rem;
1052
+ --prose-quote-line: 2rem;
1053
+ --prose-quote-small-size: 1.25rem;
1054
+ --prose-quote-small-line: 1.5rem;
1055
+ --prose-quote-letter-spacing: 0;
1056
+ }
1057
+
1058
+ .mobase-prose.mobase-prose-md h3 {
1059
+ letter-spacing: 0;
1060
+ }
1061
+
1062
+ .mobase-prose.mobase-prose-md blockquote {
1063
+ padding-left: var(--prose-space-sm);
1064
+ }
1065
+
1066
+ .mobase-prose.mobase-prose-md .table-wrapper,
1067
+ .mobase-prose.mobase-prose-md .table-responsive {
1068
+ margin-right: -1rem;
1069
+ }
1070
+
1071
+
1072
+ /* Biến thể 2: Variant .mobase-prose-sm (Bản thu gọn - Compact) */
1073
+ .mobase-prose.mobase-prose-sm {
1074
+ /* Tokens Spacing Compact */
1075
+ --prose-space-xs: 0.25rem;
1076
+ --prose-space-sm: 0.5rem;
1077
+ --prose-space-md: 1rem;
1078
+ --prose-space-lg: 1.25rem;
1079
+ --prose-space-xl: 1.75rem;
1080
+ --prose-space-2xl: 2rem;
1081
+ --prose-space-3xl: 3rem;
1082
+ --prose-space-4xl: 3.25rem;
1083
+ --prose-space-5xl: 4.25rem;
1084
+
1085
+ /* Tokens Typography Compact */
1086
+ --prose-h1-size: 4.15625rem;
1087
+ --prose-h1-line: 4.15625rem;
1088
+ --prose-h2-size: 1.3125rem;
1089
+ --prose-h2-line: 1.75rem;
1090
+ --prose-h3-size: 1.09375rem;
1091
+ --prose-h3-line: 1.3125rem;
1092
+ --prose-h4-size: 0.984375rem;
1093
+ --prose-h4-line: 1.3125rem;
1094
+ --prose-h5-size: 0.984375rem;
1095
+ --prose-h5-line: 1.3125rem;
1096
+ --prose-h6-size: 0.875rem;
1097
+ --prose-h6-line: 1.09375rem;
1098
+ --prose-body-size: 0.875rem;
1099
+ --prose-body-line: 1.3125rem;
1100
+ --prose-large-size: 1.09375rem;
1101
+ --prose-large-line: 1.75rem;
1102
+ --prose-footnote-size: 0.8125rem;
1103
+ --prose-footnote-line: 1.09375rem;
1104
+ --prose-caption-size: 0.75rem;
1105
+ --prose-caption-line: 1.09375rem;
1106
+ --prose-code-size: 0.8125rem;
1107
+ --prose-code-line: 1.3125rem;
1108
+ --prose-quote-size: 1.3125rem;
1109
+ --prose-quote-line: 1.75rem;
1110
+ --prose-quote-small-size: 1.09375rem;
1111
+ --prose-quote-small-line: 1.3125rem;
1112
+ --prose-quote-mark-size: 4.15625rem;
1113
+ --prose-quote-letter-spacing: 0;
1114
+ --prose-blockquote-size: 0.984375rem;
1115
+ --prose-blockquote-line: 1.3125rem;
1116
+ --prose-table-head-size: 0.75rem;
1117
+ --prose-table-head-line: 0.875rem;
1118
+ --prose-table-body-size: 0.8125rem;
1119
+ --prose-table-body-line: 1.09375rem;
1120
+
1121
+ /* Tokens Misc Compact */
1122
+ --prose-media-radius: 0.625rem;
1123
+ --prose-divider-width: 1rem;
1124
+ --prose-divider-height: 0.875rem;
1125
+ --prose-list-bullet-size: 0.3125rem;
1126
+ --prose-table-cell-min-width: 10.9375rem;
1127
+ }
1128
+
1129
+ .mobase-prose.mobase-prose-sm h3 {
1130
+ letter-spacing: 0;
1131
+ }
1132
+
1133
+ .mobase-prose.mobase-prose-sm blockquote {
1134
+ padding-left: var(--prose-space-sm);
1135
+ }
1136
+
1137
+ .mobase-prose.mobase-prose-sm .table-wrapper,
1138
+ .mobase-prose.mobase-prose-sm .table-responsive {
1139
+ margin-right: -1rem;
457
1140
  }