@stackoverflow/stacks 3.0.0-beta.22 → 3.0.0-beta.24

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 (72) hide show
  1. package/dist/css/stacks.css +16809 -17138
  2. package/dist/css/stacks.min.css +1 -1
  3. package/lib/atomic/backgrounds.less +67 -0
  4. package/lib/atomic/border-radius.less +38 -0
  5. package/lib/atomic/borders.less +73 -0
  6. package/lib/atomic/box-shadow.less +29 -0
  7. package/lib/atomic/box-sizing.less +3 -0
  8. package/lib/atomic/current-color.less +2 -0
  9. package/lib/atomic/cursors.less +8 -0
  10. package/lib/atomic/display.less +15 -0
  11. package/lib/atomic/floats.less +20 -0
  12. package/lib/atomic/gap.less +2 -0
  13. package/lib/atomic/grid.less +2 -0
  14. package/lib/atomic/interactivity.less +45 -0
  15. package/lib/atomic/lists.less +29 -0
  16. package/lib/atomic/{spacing.less → margin.less} +0 -10
  17. package/lib/atomic/object-fit.less +9 -0
  18. package/lib/atomic/opacity.less +54 -0
  19. package/lib/atomic/outline.less +11 -0
  20. package/lib/atomic/overflow.less +17 -0
  21. package/lib/atomic/padding.less +12 -0
  22. package/lib/atomic/positioning.less +7 -0
  23. package/lib/atomic/sizing.less +3 -28
  24. package/lib/atomic/transitions.less +20 -0
  25. package/lib/atomic/truncation.less +58 -0
  26. package/lib/atomic/typography.less +19 -124
  27. package/lib/atomic/vertical-alignment.less +9 -0
  28. package/lib/atomic/visibility.less +18 -0
  29. package/lib/atomic/z-index.less +12 -0
  30. package/lib/base/reset-normalize.less +2 -2
  31. package/lib/components/activity-indicator/activity-indicator.less +3 -3
  32. package/lib/components/anchor/anchor.less +28 -39
  33. package/lib/components/avatar/avatar.less +17 -16
  34. package/lib/components/badge/badge.less +14 -4
  35. package/lib/components/banner/banner.less +1 -1
  36. package/lib/components/button/button.less +78 -17
  37. package/lib/components/button-group/button-group.less +2 -2
  38. package/lib/components/card/card.less +1 -1
  39. package/lib/components/checkbox_radio/checkbox_radio.less +3 -3
  40. package/lib/components/code-block/code-block.less +1 -2
  41. package/lib/components/description/description.less +2 -1
  42. package/lib/components/form-group/form-group.less +14 -1
  43. package/lib/components/input-fill/input-fill.less +3 -3
  44. package/lib/components/input-icon/input-icon.less +2 -2
  45. package/lib/components/input-message/input-message.less +1 -0
  46. package/lib/components/input_textarea/input_textarea.less +2 -2
  47. package/lib/components/label/label.less +12 -56
  48. package/lib/components/link/link.less +44 -98
  49. package/lib/components/link-preview/link-preview.less +5 -13
  50. package/lib/components/menu/menu.less +9 -1
  51. package/lib/components/navigation/navigation.less +7 -1
  52. package/lib/components/notice/notice.less +1 -1
  53. package/lib/components/page-title/page-title.less +1 -1
  54. package/lib/components/pagination/pagination.less +11 -4
  55. package/lib/components/popover/popover.less +2 -2
  56. package/lib/components/post-summary/post-summary.less +223 -385
  57. package/lib/components/progress-bar/progress-bar.less +17 -17
  58. package/lib/components/prose/prose.less +35 -9
  59. package/lib/components/select/select.less +26 -10
  60. package/lib/components/table/table.less +48 -14
  61. package/lib/components/tag/tag.less +15 -5
  62. package/lib/components/toggle-switch/toggle-switch.less +2 -2
  63. package/lib/components/topbar/topbar.less +13 -13
  64. package/lib/components/uploader/uploader.less +5 -5
  65. package/lib/components/user-card/user-card.less +14 -3
  66. package/lib/exports/constants-helpers.less +6 -6
  67. package/lib/exports/mixins.less +27 -278
  68. package/lib/stacks-static.less +41 -20
  69. package/package.json +1 -1
  70. package/lib/atomic/border.less +0 -121
  71. package/lib/atomic/misc.less +0 -380
  72. package/lib/components/block-link/block-link.less +0 -82
@@ -0,0 +1,67 @@
1
+ // BACKGROUND POSITION
2
+ .bg-bottom { background-position: bottom !important; }
3
+ .bg-center { background-position: center !important; }
4
+ .bg-left { background-position: left !important; }
5
+ .bg-left-bottom { background-position: left bottom !important; }
6
+ .bg-left-top { background-position: left top !important; }
7
+ .bg-right { background-position: right !important; }
8
+ .bg-right-bottom { background-position: right bottom !important; }
9
+ .bg-right-top { background-position: right top !important; }
10
+ .bg-top { background-position: top !important; }
11
+
12
+ // BACKGROUND REPEAT
13
+ .bg-repeat { background-repeat: repeat !important; }
14
+ .bg-no-repeat { background-repeat: no-repeat !important; }
15
+ .bg-repeat-x { background-repeat: repeat-x !important; }
16
+ .bg-repeat-y { background-repeat: repeat-y !important; }
17
+
18
+ // BACKGROUND SIZE
19
+ .bg-auto { background-size: auto !important; }
20
+ .bg-cover { background-size: cover !important; }
21
+ .bg-contain { background-size: contain !important; }
22
+
23
+ // BACKGROUND ATTACHMENT
24
+ .bg-fixed { background-attachment: fixed !important; }
25
+ .bg-local { background-attachment: local !important; }
26
+ .bg-scroll { background-attachment: scroll !important; }
27
+
28
+ // BACKGROUND IMAGE
29
+ .bg-image-none { background-image: none !important; }
30
+
31
+ // BACKGROUND LOADING
32
+ .bg-loading {
33
+ animation: loadingBgAnimation 1.5s ease-out infinite;
34
+ animation-delay: 1ms;
35
+ }
36
+
37
+ @keyframes loadingBgAnimation {
38
+ 0% {
39
+ background-color: var(--black-150);
40
+ opacity: 1;
41
+ }
42
+ 50% {
43
+ background-color: var(--black-100);
44
+ opacity: 0.7;
45
+ }
46
+ 100% {
47
+ background-color: var(--black-150);
48
+ opacity: 1;
49
+ }
50
+ }
51
+
52
+ // BACKGROUND CONFETTI
53
+ .bg-confetti-animated {
54
+ background-repeat: repeat-x;
55
+ background-position: top -10px center;
56
+ background-image: url("data:image/svg+xml;,%3Csvg width='600' height='90' viewBox='0 0 600 90' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='42' y='-10' width='6' height='10'/%3E%3Crect x='84' y='-10' width='6' height='10'/%3E%3Crect x='126' y='-13' width='5' height='13'/%3E%3Crect x='168' y='-13' width='5' height='13'/%3E%3Crect x='210' y='-10' width='6' height='10'/%3E%3Crect x='252' y='-13' width='5' height='13'/%3E%3Crect x='294' y='-10' width='6' height='10'/%3E%3Crect x='336' y='-13' width='5' height='13'/%3E%3Crect x='378' y='-13' width='5' height='13'/%3E%3Crect x='420' y='-10' width='6' height='10'/%3E%3Crect x='462' y='-10' width='6' height='10'/%3E%3Crect x='504' y='-13' width='5' height='13'/%3E%3Crect x='546' y='-10' width='6' height='10'/%3E%3Cstyle type='text/css'%3E rect %7B opacity: 0; %7D rect:nth-child(1) %7B transform-origin: 45px 5px; transform: rotate(-145deg); animation: blast 700ms infinite ease-out; animation-delay: 88ms; animation-duration: 631ms; %7D rect:nth-child(2) %7B transform-origin: 87px 5px; transform: rotate(164deg); animation: blast 700ms infinite ease-out; animation-delay: 131ms; animation-duration: 442ms; %7D rect:nth-child(3) %7B transform-origin: 128px 6px; transform: rotate(4deg); animation: blast 700ms infinite ease-out; animation-delay: 92ms; animation-duration: 662ms; %7D rect:nth-child(4) %7B transform-origin: 170px 6px; transform: rotate(-175deg); animation: blast 700ms infinite ease-out; animation-delay: 17ms; animation-duration: 593ms; %7D rect:nth-child(5) %7B transform-origin: 213px 5px; transform: rotate(-97deg); animation: blast 700ms infinite ease-out; animation-delay: 122ms; animation-duration: 476ms; %7D rect:nth-child(6) %7B transform-origin: 255px 6px; transform: rotate(57deg); animation: blast 700ms infinite ease-out; animation-delay: 271ms; animation-duration: 381ms; %7D rect:nth-child(7) %7B transform-origin: 297px 5px; transform: rotate(-46deg); animation: blast 700ms infinite ease-out; animation-delay: 131ms; animation-duration: 619ms; %7D rect:nth-child(8) %7B transform-origin: 338px 6px; transform: rotate(-65deg); animation: blast 700ms infinite ease-out; animation-delay: 85ms; animation-duration: 668ms; %7D rect:nth-child(9) %7B transform-origin: 380px 6px; transform: rotate(13deg); animation: blast 700ms infinite ease-out; animation-delay: 128ms; animation-duration: 377ms; %7D rect:nth-child(10) %7B transform-origin: 423px 5px; transform: rotate(176deg); animation: blast 700ms infinite ease-out; animation-delay: 311ms; animation-duration: 508ms; %7D rect:nth-child(11) %7B transform-origin: 465px 5px; transform: rotate(108deg); animation: blast 700ms infinite ease-out; animation-delay: 108ms; animation-duration: 595ms; %7D rect:nth-child(12) %7B transform-origin: 506px 6px; transform: rotate(62deg); animation: blast 700ms infinite ease-out; animation-delay: 105ms; animation-duration: 375ms; %7D rect:nth-child(13) %7B transform-origin: 549px 5px; transform: rotate(16deg); animation: blast 700ms infinite ease-out; animation-delay: 149ms; animation-duration: 491ms; %7D rect:nth-child(odd) %7B fill: %2365BB5C; %7D rect:nth-child(even) %7B z-index: 1; fill: %2333AAFF; %7D rect:nth-child(4n) %7B animation-duration: 1400ms; fill: %23F23B14; %7D rect:nth-child(3n) %7B animation-duration: 1750ms; animation-delay: 700ms; %7D rect:nth-child(4n-7) %7B fill: %232A2F6A; %7D rect:nth-child(6n) %7B fill: %23FBBA23; %7D @keyframes blast %7B from %7B opacity: 0; %7D 20%25 %7B opacity: 1; %7D to %7B transform: translateY(90px); %7D %7D %3C/style%3E%3C/svg%3E%0A");
57
+
58
+ @media (prefers-reduced-motion) {
59
+ background-image: url("data:image/svg+xml;,%3Csvg width='574' height='60' viewBox='0 0 574 60' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect opacity='0.8' x='27.1224' y='20.0458' width='5' height='13' transform='rotate(-139 27.1224 20.0458)' fill='%23F23B14'/%3E%3Crect opacity='0.8' x='118.478' y='7.00201' width='5' height='13' transform='rotate(-38.8114 118.478 7.00201)' fill='%23FBBA23'/%3E%3Crect opacity='0.8' x='504.616' y='25.4479' width='5' height='13' transform='rotate(-60.2734 504.616 25.4479)' fill='%23F23B14'/%3E%3Crect opacity='0.6' x='538.983' y='45.555' width='5' height='13' transform='rotate(16.7826 538.983 45.555)' fill='%232A2F6A'/%3E%3Crect opacity='0.3' x='470.322' y='2.63625' width='5' height='13' transform='rotate(11.295 470.322 2.63625)' fill='%2333AAFF'/%3E%3Crect opacity='0.3' x='190.295' y='4.58138' width='5' height='13' transform='rotate(27.5954 190.295 4.58138)' fill='%23F23B14'/%3E%3Crect opacity='0.8' x='234.303' y='16.3233' width='5' height='13' transform='rotate(-41.8233 234.303 16.3233)' fill='%2365BB5C'/%3E%3Crect opacity='0.6' x='369.702' y='40.9875' width='5' height='13' transform='rotate(-56.419 369.702 40.9875)' fill='%2333AAFF'/%3E%3Crect opacity='0.3' x='402.121' y='31.0848' width='5' height='13' transform='rotate(-17.9234 402.121 31.0848)' fill='%23F23B14'/%3E%3Crect opacity='0.6' x='200.316' y='31.9328' width='5' height='13' transform='rotate(-15.8896 200.316 31.9328)' fill='%232A2F6A'/%3E%3Crect opacity='0.6' x='69.6745' y='23.4725' width='6' height='10' transform='rotate(70.0266 69.6745 23.4725)' fill='%2365BB5C'/%3E%3Crect opacity='0.6' x='291.945' y='7.16931' width='6' height='10' transform='rotate(30.4258 291.945 7.16931)' fill='%23FBBA23'/%3E%3Crect opacity='0.3' x='33.7754' y='38.2208' width='6' height='10' transform='rotate(38.6056 33.7754 38.2208)' fill='%23FBBA23'/%3E%3Crect opacity='0.8' x='109.752' y='31.1743' width='6' height='10' transform='rotate(28.5296 109.752 31.1743)' fill='%2333AAFF'/%3E%3Crect opacity='0.3' x='278.081' y='37.8695' width='6' height='10' transform='rotate(-26.5651 278.081 37.8695)' fill='%23F23B14'/%3E%3Crect opacity='0.8' x='416.294' y='11.5573' width='6' height='10' transform='rotate(-22.8498 416.294 11.5573)' fill='%23FBBA23'/%3E%3Crect opacity='0.3' x='354.667' y='9.32341' width='6' height='10' transform='rotate(17.7506 354.667 9.32341)' fill='%232A2F6A'/%3E%3Crect opacity='0.8' x='532.404' y='16.6372' width='6' height='10' transform='rotate(-75.3432 532.404 16.6372)' fill='%23FBBA23'/%3E%3Crect opacity='0.6' x='460.463' y='39.3557' width='6' height='10' transform='rotate(45.4982 460.463 39.3557)' fill='%2365BB5C'/%3E%3C/svg%3E");
60
+ }
61
+ }
62
+
63
+ .bg-confetti-static {
64
+ background-repeat: repeat-x;
65
+ background-position: top -10px center;
66
+ background-image: url("data:image/svg+xml;,%3Csvg width='574' height='60' viewBox='0 0 574 60' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect opacity='0.8' x='27.1224' y='20.0458' width='5' height='13' transform='rotate(-139 27.1224 20.0458)' fill='%23F23B14'/%3E%3Crect opacity='0.8' x='118.478' y='7.00201' width='5' height='13' transform='rotate(-38.8114 118.478 7.00201)' fill='%23FBBA23'/%3E%3Crect opacity='0.8' x='504.616' y='25.4479' width='5' height='13' transform='rotate(-60.2734 504.616 25.4479)' fill='%23F23B14'/%3E%3Crect opacity='0.6' x='538.983' y='45.555' width='5' height='13' transform='rotate(16.7826 538.983 45.555)' fill='%232A2F6A'/%3E%3Crect opacity='0.3' x='470.322' y='2.63625' width='5' height='13' transform='rotate(11.295 470.322 2.63625)' fill='%2333AAFF'/%3E%3Crect opacity='0.3' x='190.295' y='4.58138' width='5' height='13' transform='rotate(27.5954 190.295 4.58138)' fill='%23F23B14'/%3E%3Crect opacity='0.8' x='234.303' y='16.3233' width='5' height='13' transform='rotate(-41.8233 234.303 16.3233)' fill='%2365BB5C'/%3E%3Crect opacity='0.6' x='369.702' y='40.9875' width='5' height='13' transform='rotate(-56.419 369.702 40.9875)' fill='%2333AAFF'/%3E%3Crect opacity='0.3' x='402.121' y='31.0848' width='5' height='13' transform='rotate(-17.9234 402.121 31.0848)' fill='%23F23B14'/%3E%3Crect opacity='0.6' x='200.316' y='31.9328' width='5' height='13' transform='rotate(-15.8896 200.316 31.9328)' fill='%232A2F6A'/%3E%3Crect opacity='0.6' x='69.6745' y='23.4725' width='6' height='10' transform='rotate(70.0266 69.6745 23.4725)' fill='%2365BB5C'/%3E%3Crect opacity='0.6' x='291.945' y='7.16931' width='6' height='10' transform='rotate(30.4258 291.945 7.16931)' fill='%23FBBA23'/%3E%3Crect opacity='0.3' x='33.7754' y='38.2208' width='6' height='10' transform='rotate(38.6056 33.7754 38.2208)' fill='%23FBBA23'/%3E%3Crect opacity='0.8' x='109.752' y='31.1743' width='6' height='10' transform='rotate(28.5296 109.752 31.1743)' fill='%2333AAFF'/%3E%3Crect opacity='0.3' x='278.081' y='37.8695' width='6' height='10' transform='rotate(-26.5651 278.081 37.8695)' fill='%23F23B14'/%3E%3Crect opacity='0.8' x='416.294' y='11.5573' width='6' height='10' transform='rotate(-22.8498 416.294 11.5573)' fill='%23FBBA23'/%3E%3Crect opacity='0.3' x='354.667' y='9.32341' width='6' height='10' transform='rotate(17.7506 354.667 9.32341)' fill='%232A2F6A'/%3E%3Crect opacity='0.8' x='532.404' y='16.6372' width='6' height='10' transform='rotate(-75.3432 532.404 16.6372)' fill='%23FBBA23'/%3E%3Crect opacity='0.6' x='460.463' y='39.3557' width='6' height='10' transform='rotate(45.4982 460.463 39.3557)' fill='%2365BB5C'/%3E%3C/svg%3E");
67
+ }
@@ -0,0 +1,38 @@
1
+ @import (reference) "../base/internal.less";
2
+
3
+ #stacks-internals #responsify('.bar0', { border-radius: 0 !important; });
4
+ .bar-md { border-radius: var(--br-md) !important; }
5
+ .bar-circle { border-radius: var(--br-circle) !important; }
6
+ .bar-pill { border-radius: var(--br-pill) !important; }
7
+
8
+ // Top Left
9
+ .btlr0 { border-top-left-radius: 0 !important; }
10
+ .btlr-md { border-top-left-radius: var(--br-md) !important; }
11
+
12
+ // Top Right
13
+ .btrr0 { border-top-right-radius: 0 !important; }
14
+ .btrr-md { border-top-right-radius: var(--br-md) !important; }
15
+
16
+ // Bottom Left
17
+ .bblr0 { border-bottom-left-radius: 0 !important; }
18
+ .bblr-md { border-bottom-left-radius: var(--br-md) !important; }
19
+
20
+ // Bottom Right
21
+ .bbrr0 { border-bottom-right-radius: 0 !important; }
22
+ .bbrr-md { border-bottom-right-radius: var(--br-md) !important; }
23
+
24
+ // Top left and right
25
+ .btr0 { .btlr0; .btrr0; }
26
+ .btr-md { .btlr-md; .btrr-md; }
27
+
28
+ // Top and bottom right
29
+ .brr0 { .btrr0; .bbrr0; }
30
+ .brr-md { .btrr-md; .bbrr-md; }
31
+
32
+ // Bottom left and right
33
+ .bbr0 { .bblr0; .bbrr0; }
34
+ .bbr-md { .bblr-md; .bbrr-md; }
35
+
36
+ // Top and bottom left
37
+ .blr0 { .btlr0; .bblr0; }
38
+ .blr-md { .btlr-md; .bblr-md; }
@@ -0,0 +1,73 @@
1
+ @import (reference) "../base/internal.less";
2
+
3
+ // BORDER
4
+ #stacks-internals #responsify('.ba', { .bas-solid; .baw1; });
5
+ #stacks-internals #responsify('.bt', { .bts-solid; .btw1; });
6
+ #stacks-internals #responsify('.br', { .brs-solid; .brw1; });
7
+ #stacks-internals #responsify('.bb', { .bbs-solid; .bbw1; });
8
+ #stacks-internals #responsify('.bl', { .bls-solid; .blw1; });
9
+ .bx { .bls-solid; .brs-solid; .bxw1; }
10
+ .by { .bts-solid; .bbs-solid; .byw1; }
11
+
12
+ // BORDER WIDTH
13
+ #stacks-internals #responsify('.baw0', { border-width: 0 !important; });
14
+ .baw1 { border-width: var(--su1) !important; }
15
+ .baw2 { border-width: var(--su2) !important; }
16
+ .baw3 { border-width: var(--su4) !important; }
17
+
18
+ // Top border width
19
+ #stacks-internals #responsify('.btw0', { border-top-width: 0 !important; });
20
+ .btw1 { border-top-width: var(--su1) !important; }
21
+ .btw2 { border-top-width: var(--su2) !important; }
22
+ .btw3 { border-top-width: var(--su4) !important; }
23
+
24
+ // Right border width
25
+ #stacks-internals #responsify('.brw0', { border-right-width: 0 !important; });
26
+ .brw1 { border-right-width: var(--su1) !important; }
27
+ .brw2 { border-right-width: var(--su2) !important; }
28
+ .brw3 { border-right-width: var(--su4) !important; }
29
+
30
+ // Bottom border width
31
+ #stacks-internals #responsify('.bbw0', { border-bottom-width: 0 !important; });
32
+ .bbw1 { border-bottom-width: var(--su1) !important; }
33
+ .bbw2 { border-bottom-width: var(--su2) !important; }
34
+ .bbw3 { border-bottom-width: var(--su4) !important; }
35
+
36
+ // Left border width
37
+ #stacks-internals #responsify('.blw0', { border-left-width: 0 !important; });
38
+ .blw0 { border-left-width: 0 !important; }
39
+ .blw1 { border-left-width: var(--su1) !important; }
40
+ .blw2 { border-left-width: var(--su2) !important; }
41
+ .blw3 { border-left-width: var(--su4) !important; }
42
+
43
+ // Top and bottom border width
44
+ .byw0 { .btw0; .bbw0; }
45
+ .byw1 { .btw1; .bbw1; }
46
+ .byw2 { .btw2; .bbw2; }
47
+ .byw3 { .btw3; .bbw3; }
48
+
49
+ // Left and right border width
50
+ .bxw0 { .brw0; .blw0; }
51
+ .bxw1 { .brw1; .blw1; }
52
+ .bxw2 { .brw2; .blw2; }
53
+ .bxw3 { .brw3; .blw3; }
54
+
55
+ // BORDER STYLE
56
+ .bas-solid { border-style: solid !important; }
57
+ .bas-dashed { border-style: dashed !important; }
58
+
59
+ // Top border style
60
+ .bts-solid { border-top-style: solid !important; }
61
+ .bts-dashed { border-top-style: dashed !important; }
62
+
63
+ // Right border style
64
+ .brs-solid { border-right-style: solid !important; }
65
+ .brs-dashed { border-right-style: dashed !important; }
66
+
67
+ // Bottom border style
68
+ .bbs-solid { border-bottom-style: solid !important; }
69
+ .bbs-dashed { border-bottom-style: dashed !important; }
70
+
71
+ // Left border style
72
+ .bls-solid { border-left-style: solid !important; }
73
+ .bls-dashed { border-left-style: dashed !important; }
@@ -0,0 +1,29 @@
1
+ @import (reference) "../base/internal.less";
2
+ @import (reference) "../exports/color-mixins.less";
3
+ @import (reference) "../exports/constants-helpers.less";
4
+ // @import (reference) "../exports/mixins.less";
5
+
6
+ #stacks-internals #responsify('.bs-none', {
7
+ box-shadow: none !important;
8
+ });
9
+
10
+ .bs-sm,
11
+ .h\:bs-sm:hover {
12
+ box-shadow: var(--bs-sm) !important;
13
+ }
14
+
15
+ .bs-md,
16
+ .h\:bs-md:hover { box-shadow: var(--bs-md) !important; }
17
+
18
+ .bs-lg,
19
+ .h\:bs-lg:hover { box-shadow: var(--bs-lg) !important; }
20
+
21
+ .bs-xl,
22
+ .h\:bs-xl:hover { box-shadow: var(--bs-xl) !important; }
23
+
24
+ .bs-ring,
25
+ .h\:bs-ring:hover,
26
+ .f\:bs-ring:focus,
27
+ .f\:bs-ring:focus-within {
28
+ box-shadow: 0 0 0 var(--su4) var(--focus-ring);
29
+ }
@@ -0,0 +1,3 @@
1
+ .box-content { box-sizing: content-box !important; }
2
+ .box-border { box-sizing: border-box !important; }
3
+ .box-unset { box-sizing: unset !important; }
@@ -0,0 +1,2 @@
1
+ .fill-current { fill: currentColor !important; }
2
+ .stroke-current { stroke: currentColor !important; }
@@ -0,0 +1,8 @@
1
+ .c-auto { cursor: auto !important; }
2
+ .c-default { cursor: default !important; }
3
+ .c-pointer { cursor: pointer !important; }
4
+ .c-text { cursor: text !important; }
5
+ .c-wait { cursor: wait !important; }
6
+ .c-move { cursor: move !important; }
7
+ .c-not-allowed { cursor: not-allowed !important; }
8
+ .c-help { cursor: help !important; }
@@ -0,0 +1,15 @@
1
+ @import (reference) "../exports/constants-helpers.less";
2
+ @import (reference) "../base/configuration-static.less";
3
+ @import (reference) "../base/internal.less";
4
+
5
+ #stacks-internals #responsify('.d-block', { display: block !important; });
6
+ #stacks-internals #responsify('.d-flex', { display: flex !important; });
7
+ #stacks-internals #responsify('.d-inline-flex', { display: inline-flex !important; });
8
+ #stacks-internals #responsify('.d-grid', { display: grid !important; });
9
+ #stacks-internals #responsify('.d-inline-grid', { display: inline-grid !important; });
10
+ #stacks-internals #responsify('.d-inline', { display: inline !important; });
11
+ #stacks-internals #responsify('.d-inline-block', { display: inline-block !important; });
12
+ .d-table { display: table !important; }
13
+ .d-table-cell { display: table-cell !important; }
14
+ #stacks-internals #responsify('.d-none', { display: none !important; });
15
+ .d-unset { display: unset !important; }
@@ -0,0 +1,20 @@
1
+ // FLOAT
2
+ .float-left { float: left !important; }
3
+ .float-right { float: right !important; }
4
+ .float-none { float: none !important; }
5
+
6
+ // CLEARFIX
7
+ .clearfix {
8
+ &:before,
9
+ &:after {
10
+ content: "";
11
+ display: table;
12
+ }
13
+ &:after {
14
+ clear: both;
15
+ }
16
+ }
17
+ .clear-left { clear: left !important; }
18
+ .clear-right { clear: right !important; }
19
+ .clear-both { clear: both !important; }
20
+ .clear-none { clear: none !important; }
@@ -1,3 +1,5 @@
1
+ @import (reference) "../base/internal.less";
2
+
1
3
  #stacks-internals #responsify('.g0', { --_gap-y: 0; --_gap-x: 0; });
2
4
  #stacks-internals #responsify('.g1', { --_gap-y: var(--su1); --_gap-x: var(--su1); });
3
5
  #stacks-internals #responsify('.g2', { --_gap-y: var(--su2); --_gap-x: var(--su2); });
@@ -1,3 +1,5 @@
1
+ @import (reference) "../base/internal.less";
2
+
1
3
  // ============================================================================
2
4
  // $ GRID FLOW
3
5
  // ----------------------------------------------------------------------------
@@ -0,0 +1,45 @@
1
+ @import (reference) "../exports/mixins.less";
2
+
3
+ // FOCUS
4
+ .focus,
5
+ .f\:focus:focus,
6
+ .f\:focus:focus-within {
7
+ .focus-styles();
8
+ }
9
+
10
+ .focus-inset,
11
+ .f\:focus-inset:focus,
12
+ .f\:focus-inset:focus-within {
13
+ .focus-styles(true);
14
+ }
15
+
16
+ .focus-bordered,
17
+ .f\:focus-bordered:focus,
18
+ .f\:focus-bordered:focus-within {
19
+ .focus-styles(false, true);
20
+ }
21
+
22
+ .focus-inset-bordered,
23
+ .f\:focus-inset-bordered:focus,
24
+ .f\:focus-inset-bordered:focus-within {
25
+ .focus-styles(true, true);
26
+ }
27
+
28
+ // POINTER EVENTS
29
+ .pe-auto { pointer-events: auto !important; }
30
+ .pe-none { pointer-events: none !important; }
31
+
32
+ // USER SELECT
33
+ .us-auto {
34
+ -webkit-user-select: auto !important;
35
+ -moz-user-select: auto !important;
36
+ -ms-user-select: auto !important;
37
+ user-select: auto !important;
38
+ }
39
+
40
+ .us-none {
41
+ -webkit-user-select: none !important;
42
+ -moz-user-select: none !important;
43
+ -ms-user-select: none !important;
44
+ user-select: none !important;
45
+ }
@@ -0,0 +1,29 @@
1
+ ul,
2
+ ol {
3
+ padding: 0;
4
+ margin-left: 2.8em;
5
+
6
+ ul,
7
+ ol {
8
+ margin-bottom: 0;
9
+ }
10
+ }
11
+
12
+ ul { list-style-type: disc; }
13
+ ol { list-style-type: decimal; }
14
+
15
+ .list-reset {
16
+ list-style: none;
17
+ margin: 0;
18
+ padding: 0;
19
+ }
20
+
21
+ // List Style Types
22
+ .list-ls-none { list-style: none !important; }
23
+ .list-ls-disc { list-style-type: disc !important; }
24
+ .list-ls-decimal { list-style-type: decimal !important; }
25
+ .list-ls-unset { list-style-type: unset !important; }
26
+
27
+ // List Position
28
+ .list-inside { list-style-position: inside !important; }
29
+ .list-outside { list-style-position: outside !important; }
@@ -5,7 +5,6 @@
5
5
  @px-values-negative: 1 2 4 6 8 12 16 24 32 48 64 96 128;
6
6
  @percent-values: 50 100;
7
7
 
8
- // MARGIN
9
8
  .m-auto { margin: auto !important; }
10
9
  .generate-sizing('.m', margin, @px-values, 'px', true);
11
10
  .generate-sizing('.mn', margin, @px-values-negative, 'px', true, true);
@@ -47,12 +46,3 @@
47
46
  .generate-sizing('.mxn'; margin-left, margin-right; @px-values-negative; 'px'; true; true);
48
47
  .generate-sizing('.my'; margin-top, margin-bottom; @px-values; 'px'; true);
49
48
  .generate-sizing('.myn'; margin-top, margin-bottom; @px-values-negative; 'px'; true; true);
50
-
51
- // PADDING
52
- .generate-sizing('.p', padding, @px-values, 'px', true);
53
- .generate-sizing('.pt', padding-top, @px-values, 'px', true);
54
- .generate-sizing('.pr', padding-right, @px-values, 'px', true);
55
- .generate-sizing('.pb', padding-bottom, @px-values, 'px', true);
56
- .generate-sizing('.pl', padding-left, @px-values, 'px', true);
57
- .generate-sizing('.px'; padding-left, padding-right; @px-values; 'px'; true);
58
- .generate-sizing('.py'; padding-top, padding-bottom; @px-values; 'px'; true);
@@ -0,0 +1,9 @@
1
+ // OBJECT FIT
2
+ .of-contain { object-fit: contain !important; }
3
+ .of-cover { object-fit: cover !important; }
4
+ .of-fill { object-fit: fill !important; }
5
+ .of-none { object-fit: none !important; }
6
+ .of-scale-down { object-fit: scale-down !important; }
7
+
8
+ // OBJECT POSITION
9
+ .op-center { object-position: center !important; }
@@ -0,0 +1,54 @@
1
+ .o0,
2
+ .h\:o0:hover {
3
+ opacity: 0 !important;
4
+ }
5
+
6
+ .o5,
7
+ .h\:o5:hover {
8
+ opacity: 0.05 !important;
9
+ }
10
+
11
+ .o10 {
12
+ opacity: 0.1 !important;
13
+ }
14
+
15
+ .o20 {
16
+ opacity: 0.2 !important;
17
+ }
18
+
19
+ .o30 {
20
+ opacity: 0.3 !important;
21
+ }
22
+
23
+ .o40 {
24
+ opacity: 0.4 !important;
25
+ }
26
+
27
+ .o50,
28
+ .h\:o50:hover {
29
+ opacity: 0.5 !important;
30
+ }
31
+
32
+ .o60 {
33
+ opacity: 0.6 !important;
34
+ }
35
+
36
+ .o70 {
37
+ opacity: 0.7 !important;
38
+ }
39
+
40
+ .o80,
41
+ .h\:o80:hover {
42
+ opacity: 0.8 !important;
43
+ }
44
+
45
+ .o90 {
46
+ opacity: 0.9 !important;
47
+ }
48
+
49
+ .o100,
50
+ .h\:o100:hover,
51
+ .f\:o100:focus,
52
+ .f\:o100:focus-within {
53
+ opacity: 1 !important;
54
+ }
@@ -0,0 +1,11 @@
1
+ @import (reference) "../exports/mixins.less";
2
+
3
+ .outline-none { outline: 0 !important; }
4
+ .outline-ring { .focus-styles(false, true); }
5
+
6
+ .f\:outline-ring {
7
+ &:focus,
8
+ &:focus-within {
9
+ .outline-ring;
10
+ }
11
+ }
@@ -0,0 +1,17 @@
1
+ @import (reference) "../exports/constants-helpers.less";
2
+
3
+ // OVERFLOW
4
+ .overflow-auto { overflow: auto !important; @scrollbar-styles(); }
5
+ .overflow-hidden { overflow: hidden !important; @scrollbar-styles(); }
6
+ .overflow-scroll { overflow: scroll !important; @scrollbar-styles(); }
7
+ .overflow-visible { overflow: visible !important; }
8
+
9
+ // OVERFLOW X
10
+ .overflow-x-auto { overflow-x: auto !important; @scrollbar-styles(); }
11
+ .overflow-x-hidden { overflow-x: hidden !important; @scrollbar-styles(); }
12
+ .overflow-x-scroll { overflow-x: scroll !important; @scrollbar-styles(); }
13
+
14
+ // OVERFLOW Y
15
+ .overflow-y-auto { overflow-y: auto !important; @scrollbar-styles(); }
16
+ .overflow-y-hidden { overflow-y: hidden !important; @scrollbar-styles(); }
17
+ .overflow-y-scroll { overflow-y: scroll !important; @scrollbar-styles(); }
@@ -0,0 +1,12 @@
1
+ @import (reference) "../base/internal.less";
2
+ @import (reference) "../exports/mixins.less";
3
+
4
+ @px-values: 0 1 2 4 6 8 12 16 24 32 48 64 96 128;
5
+
6
+ .generate-sizing('.p', padding, @px-values, 'px', true);
7
+ .generate-sizing('.pt', padding-top, @px-values, 'px', true);
8
+ .generate-sizing('.pr', padding-right, @px-values, 'px', true);
9
+ .generate-sizing('.pb', padding-bottom, @px-values, 'px', true);
10
+ .generate-sizing('.pl', padding-left, @px-values, 'px', true);
11
+ .generate-sizing('.px'; padding-left, padding-right; @px-values; 'px'; true);
12
+ .generate-sizing('.py'; padding-top, padding-bottom; @px-values; 'px'; true);
@@ -6,6 +6,13 @@
6
6
  @percent-values: 50 100;
7
7
 
8
8
  // POSITIONING
9
+ #stacks-internals #responsify('.ps-absolute', { position: absolute !important; });
10
+ #stacks-internals #responsify('.ps-fixed', { position: fixed !important; });
11
+ #stacks-internals #responsify('.ps-relative', { position: relative !important; });
12
+ #stacks-internals #responsify('.ps-static', { position: static !important; });
13
+ #stacks-internals #responsify('.ps-sticky', { position: sticky !important; });
14
+ .ps-unset { position: unset !important; }
15
+
9
16
  // Inset
10
17
  .generate-sizing('.i', inset, @px-values, 'px');
11
18
 
@@ -3,8 +3,9 @@
3
3
  // SIZING UNITS CSS CUSTOM PROPERTIES
4
4
  body {
5
5
  --su0: 0;
6
- --su1: clamp(1px, 0.063rem, 0.063rem); // This ensures `--su1` never drops below 1px by setting the clamp MIN value to `--su-static1` (1px).
6
+ --su1: clamp(1px, 0.063rem, 0.063rem); // This ensures `--su1` never drops below 1px by setting the clamp MIN value to `--su1` (1px).
7
7
  --su2: 0.125rem;
8
+ --su3: 0.1875rem;
8
9
  --su4: 0.25rem;
9
10
  --su6: 0.375rem;
10
11
  --su8: 0.5rem;
@@ -35,6 +36,7 @@ body {
35
36
  // This is a common subset sizing units for negative values
36
37
  --sun1: calc(var(--su1) * -1);
37
38
  --sun2: calc(var(--su2) * -1);
39
+ --sun3: calc(var(--su3) * -1);
38
40
  --sun4: calc(var(--su4) * -1);
39
41
  --sun6: calc(var(--su6) * -1);
40
42
  --sun8: calc(var(--su8) * -1);
@@ -46,31 +48,4 @@ body {
46
48
  --sun64: calc(var(--su64) * -1);
47
49
  --sun96: calc(var(--su96) * -1);
48
50
  --sun128: calc(var(--su128) * -1);
49
-
50
- // Static (aka px) sizing units
51
- --su-static0: 0px;
52
- --su-static1: 1px;
53
- --su-static2: 2px;
54
- --su-static4: 4px;
55
- --su-static6: 6px;
56
- --su-static8: 8px;
57
- --su-static12: 12px;
58
- --su-static16: 16px;
59
- --su-static24: 24px;
60
- --su-static32: 32px;
61
- --su-static48: 48px;
62
- --su-static64: 64px;
63
- --su-static96: 96px;
64
- --su-static128: 128px;
65
- --su-static256: 256px;
66
- --su-static344: 344px;
67
- --su-static448: 448px;
68
- --su-static512: 512px;
69
- --su-static640: 640px;
70
- --su-static768: 768px;
71
- --su-static848: 848px;
72
- --su-static960: 960px;
73
- --su-static1024: 1024px;
74
- --su-static1120: 1120px;
75
- --su-static1280: 1280px;
76
51
  }
@@ -0,0 +1,20 @@
1
+ .t {
2
+ transition-duration: var(--transition-time);
3
+ transition-property: all;
4
+ transition-timing-function: var(--te-ease-in);
5
+ transition-delay: 0s;
6
+ }
7
+
8
+ // -- Durations
9
+ .t-slow { transition-duration: 0.25s !important; }
10
+ .t-fast { transition-duration: 0.05s !important; }
11
+
12
+ // -- Properties
13
+ .t-unset { transition-property: none !important; }
14
+ .t-bg { transition-property: background-color !important; }
15
+ .t-opacity { transition-property: opacity !important; }
16
+ .t-shadow { transition-property: box-shadow !important; }
17
+
18
+ // -- Delays
19
+ .t-delay { transition-delay: 0.25s !important; }
20
+ .t-delay-unset { transition-delay: 0s !important; }
@@ -0,0 +1,58 @@
1
+ @import (reference) "../exports/constants-helpers.less";
2
+ @import (reference) "../base/configuration-static.less";
3
+ @import (reference) "../base/internal.less";
4
+
5
+ .truncation(@count) {
6
+ // Despite these all being webkit-specific properties, this works across
7
+ // Safari, Chrome, Edge, and Firefox.
8
+ display: -webkit-box;
9
+ -webkit-line-clamp: @count;
10
+ -webkit-box-orient: vertical;
11
+ overflow: hidden;
12
+ }
13
+
14
+ .truncate {
15
+ overflow: hidden;
16
+ max-width: 100%;
17
+ text-overflow: ellipsis !important;
18
+ white-space: nowrap;
19
+ }
20
+
21
+ .v-truncate1 {
22
+ .truncation(1);
23
+ }
24
+
25
+ .v-truncate2 {
26
+ .truncation(2);
27
+ }
28
+
29
+ .v-truncate3 {
30
+ .truncation(3);
31
+ }
32
+
33
+ .v-truncate4 {
34
+ .truncation(4);
35
+ }
36
+
37
+ .v-truncate5 {
38
+ .truncation(5);
39
+ }
40
+
41
+ .v-truncate-fade {
42
+ overflow: hidden;
43
+ -webkit-mask-image: linear-gradient(180deg, #000 calc(var(--lh-md) * 9em), transparent);
44
+ mask-image: linear-gradient(180deg, #000 calc(var(--lh-md) * 9em), transparent);
45
+ max-height: calc(var(--lh-md) * 12em);
46
+
47
+ &.v-truncate-fade__sm {
48
+ -webkit-mask-image: linear-gradient(180deg, #000 calc(var(--lh-md) * 3em), transparent);
49
+ mask-image: linear-gradient(180deg, #000 calc(var(--lh-md) * 3em), transparent);
50
+ max-height: calc(var(--lh-md) * 6em);
51
+ }
52
+
53
+ &.v-truncate-fade__lg {
54
+ -webkit-mask-image: linear-gradient(180deg, #000 calc(var(--lh-md) * 21em), transparent);
55
+ mask-image: linear-gradient(180deg, #000 calc(var(--lh-md) * 21em), transparent);
56
+ max-height: calc(var(--lh-md) * 24em);
57
+ }
58
+ }