@keenmate/pure-admin-core 2.3.1 → 2.3.3

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 (70) hide show
  1. package/README.md +30 -9
  2. package/dist/css/main.css +205 -190
  3. package/package.json +1 -1
  4. package/snippets/buttons.html +375 -365
  5. package/snippets/command-palette.html +15 -13
  6. package/src/scss/_base-css-variables.scss +10 -0
  7. package/src/scss/_core.scss +121 -121
  8. package/src/scss/core-components/_alerts.scss +227 -227
  9. package/src/scss/core-components/_badges.scss +16 -16
  10. package/src/scss/core-components/_base.scss +125 -125
  11. package/src/scss/core-components/_buttons.scss +31 -16
  12. package/src/scss/core-components/_callouts.scss +152 -152
  13. package/src/scss/core-components/_cards.scss +488 -488
  14. package/src/scss/core-components/_checkbox-lists.scss +289 -289
  15. package/src/scss/core-components/_code.scss +141 -141
  16. package/src/scss/core-components/_command-palette.scss +518 -509
  17. package/src/scss/core-components/_comparison.scss +172 -172
  18. package/src/scss/core-components/_data-display.scss +9 -9
  19. package/src/scss/core-components/_data-viz.scss +9 -9
  20. package/src/scss/core-components/_detail-panel.scss +1 -1
  21. package/src/scss/core-components/_file-selector.scss +780 -780
  22. package/src/scss/core-components/_filter-card.scss +58 -58
  23. package/src/scss/core-components/_forms.scss +16 -16
  24. package/src/scss/core-components/_grid.scss +293 -293
  25. package/src/scss/core-components/_layout.scss +15 -15
  26. package/src/scss/core-components/_lists.scss +211 -211
  27. package/src/scss/core-components/_loaders.scss +277 -277
  28. package/src/scss/core-components/_logic-tree.scss +280 -280
  29. package/src/scss/core-components/_modals.scss +203 -203
  30. package/src/scss/core-components/_notifications.scss +320 -320
  31. package/src/scss/core-components/_pagers.scss +141 -141
  32. package/src/scss/core-components/_popconfirm.scss +170 -170
  33. package/src/scss/core-components/_profile.scss +405 -405
  34. package/src/scss/core-components/_scrollbars.scss +40 -40
  35. package/src/scss/core-components/_settings-panel.scss +141 -141
  36. package/src/scss/core-components/_statistics.scss +200 -201
  37. package/src/scss/core-components/_tables.scss +900 -900
  38. package/src/scss/core-components/_tabs.scss +504 -504
  39. package/src/scss/core-components/_timeline.scss +589 -589
  40. package/src/scss/core-components/_toasts.scss +425 -425
  41. package/src/scss/core-components/_tooltips.scss +605 -605
  42. package/src/scss/core-components/_utilities.scss +1 -1
  43. package/src/scss/core-components/_web-components-theme.scss +21 -21
  44. package/src/scss/core-components/badges/_badge-base.scss +121 -121
  45. package/src/scss/core-components/badges/_badge-group.scss +25 -25
  46. package/src/scss/core-components/badges/_composite-badge-variants.scss +396 -396
  47. package/src/scss/core-components/badges/_composite-badge.scss +70 -70
  48. package/src/scss/core-components/badges/_index.scss +10 -10
  49. package/src/scss/core-components/badges/_labels.scss +155 -155
  50. package/src/scss/core-components/forms/_checkboxes-radios.scss +205 -205
  51. package/src/scss/core-components/forms/_form-inputs.scss +3 -3
  52. package/src/scss/core-components/forms/_form-layout.scss +66 -66
  53. package/src/scss/core-components/forms/_form-states.scss +115 -115
  54. package/src/scss/core-components/forms/_index.scss +12 -12
  55. package/src/scss/core-components/forms/_input-groups.scss +154 -154
  56. package/src/scss/core-components/forms/_input-wrapper.scss +89 -89
  57. package/src/scss/core-components/forms/_query-editor.scss +313 -313
  58. package/src/scss/core-components/layout/_index.scss +11 -11
  59. package/src/scss/core-components/layout/_layout-container.scss +168 -168
  60. package/src/scss/core-components/layout/_layout-responsive.scss +99 -99
  61. package/src/scss/core-components/layout/_navbar-elements.scss +250 -250
  62. package/src/scss/core-components/layout/_navbar.scss +83 -83
  63. package/src/scss/core-components/layout/_sidebar-states.scss +237 -237
  64. package/src/scss/core-components/layout/_sidebar.scss +234 -234
  65. package/src/scss/main.scss +7 -7
  66. package/src/scss/utilities.scss +740 -740
  67. package/src/scss/variables/_base.scss +228 -228
  68. package/src/scss/variables/_components.scss +748 -748
  69. package/src/scss/variables/_layout.scss +65 -65
  70. package/src/scss/variables/_typography.scss +37 -37
@@ -1,125 +1,125 @@
1
- /* ========================================
2
- Reset and Base Styles
3
- ======================================== */
4
- @use '../variables' as *;
5
-
6
- // 10px rem base for intuitive sizing (1rem = 10px)
7
- // This makes calculations simple: 1.5rem = 15px, 3.5rem = 35px
8
- html {
9
- font-size: 10px;
10
- }
11
-
12
- // Reset and base styles
13
- * {
14
- box-sizing: border-box;
15
- }
16
-
17
- // Standard HTML element spacing (using framework variables)
18
- // Headings
19
- h1, h2, h3, h4, h5, h6 {
20
- margin: $heading-margin-top 0 $heading-margin-bottom 0;
21
- padding: 0;
22
- }
23
-
24
- // Paragraphs
25
- p {
26
- margin: $paragraph-margin-top 0 $paragraph-margin-bottom 0;
27
- padding: 0;
28
- }
29
-
30
- // Lists - styled lists (default browser styling)
31
- ul, ol {
32
- margin: $list-margin-top 0 $list-margin-bottom 0;
33
- padding: 0;
34
- padding-inline-start: $list-padding-left; // RTL: flips to right
35
-
36
- li {
37
- margin-bottom: $list-item-margin-bottom;
38
- }
39
- }
40
-
41
- // Lists - unstyled (for navigation, etc.)
42
- ul.unstyled, ol.unstyled {
43
- list-style: none;
44
- padding-inline-start: 0; // RTL: flips to right
45
-
46
- li {
47
- margin-bottom: 0;
48
- }
49
- }
50
-
51
- // Definition lists
52
- dl {
53
- margin: $list-margin-top 0 $list-margin-bottom 0;
54
- padding: 0;
55
- }
56
-
57
- dd {
58
- margin: 0;
59
- padding: 0;
60
- }
61
-
62
- // Blockquote
63
- blockquote {
64
- margin: $blockquote-margin-top 0 $blockquote-margin-bottom 0;
65
- padding-inline-start: $blockquote-padding-left; // RTL: flips to right
66
- }
67
-
68
- // Pre/Code blocks
69
- pre {
70
- overflow-x: auto;
71
- }
72
-
73
- // Horizontal rule
74
- hr {
75
- margin: $hr-margin-top 0 $hr-margin-bottom 0;
76
- }
77
-
78
- // Figure
79
- figure {
80
- margin: $figure-margin-top 0 $figure-margin-bottom 0;
81
- padding: 0;
82
- }
83
-
84
- body {
85
- margin: 0;
86
- padding: 0;
87
- font-family: var(--base-font-family);
88
- font-size: 1.6rem; // 16px default text (with 10px rem base)
89
- color: var(--pa-text-color-1);
90
- background-color: var(--pa-main-bg);
91
- line-height: $line-height-base;
92
- overflow-x: hidden; // Hide horizontal scrollbar when sidebar slides out on mobile
93
- overflow-y: scroll; // Always show vertical scrollbar gutter to prevent layout shift
94
-
95
- // Background pattern for constrained layouts
96
- &::before {
97
- content: '';
98
- position: fixed;
99
- top: 0;
100
- left: 0;
101
- right: 0;
102
- bottom: 0;
103
- background:
104
- radial-gradient(circle at $bg-pattern-circle-1-x $bg-pattern-circle-1-y, rgba($accent-color, $bg-pattern-opacity) $bg-pattern-gradient-start, transparent $bg-pattern-gradient-stop),
105
- radial-gradient(circle at $bg-pattern-circle-2-x $bg-pattern-circle-2-y, rgba($accent-color, $bg-pattern-opacity) $bg-pattern-gradient-start, transparent $bg-pattern-gradient-stop);
106
- pointer-events: none;
107
- z-index: -1;
108
- }
109
- }
110
-
111
- // Sticky sidebar mode: Prevent body scroll, let containers handle it
112
- body.sidebar-sticky {
113
- overflow: hidden;
114
- height: 100vh;
115
- }
116
-
117
- // Ensure form elements and labels inherit theme font and size instead of browser defaults
118
- button,
119
- input,
120
- select,
121
- textarea,
122
- label {
123
- font-family: inherit;
124
- font-size: inherit;
125
- }
1
+ /* ========================================
2
+ Reset and Base Styles
3
+ ======================================== */
4
+ @use '../variables' as *;
5
+
6
+ // 10px rem base for intuitive sizing (1rem = 10px)
7
+ // This makes calculations simple: 1.5rem = 15px, 3.5rem = 35px
8
+ html {
9
+ font-size: 10px;
10
+ }
11
+
12
+ // Reset and base styles
13
+ * {
14
+ box-sizing: border-box;
15
+ }
16
+
17
+ // Standard HTML element spacing (using framework variables)
18
+ // Headings
19
+ h1, h2, h3, h4, h5, h6 {
20
+ margin: $heading-margin-top 0 $heading-margin-bottom 0;
21
+ padding: 0;
22
+ }
23
+
24
+ // Paragraphs
25
+ p {
26
+ margin: $paragraph-margin-top 0 $paragraph-margin-bottom 0;
27
+ padding: 0;
28
+ }
29
+
30
+ // Lists - styled lists (default browser styling)
31
+ ul, ol {
32
+ margin: $list-margin-top 0 $list-margin-bottom 0;
33
+ padding: 0;
34
+ padding-inline-start: $list-padding-left; // RTL: flips to right
35
+
36
+ li {
37
+ margin-bottom: $list-item-margin-bottom;
38
+ }
39
+ }
40
+
41
+ // Lists - unstyled (for navigation, etc.)
42
+ ul.unstyled, ol.unstyled {
43
+ list-style: none;
44
+ padding-inline-start: 0; // RTL: flips to right
45
+
46
+ li {
47
+ margin-bottom: 0;
48
+ }
49
+ }
50
+
51
+ // Definition lists
52
+ dl {
53
+ margin: $list-margin-top 0 $list-margin-bottom 0;
54
+ padding: 0;
55
+ }
56
+
57
+ dd {
58
+ margin: 0;
59
+ padding: 0;
60
+ }
61
+
62
+ // Blockquote
63
+ blockquote {
64
+ margin: $blockquote-margin-top 0 $blockquote-margin-bottom 0;
65
+ padding-inline-start: $blockquote-padding-left; // RTL: flips to right
66
+ }
67
+
68
+ // Pre/Code blocks
69
+ pre {
70
+ overflow-x: auto;
71
+ }
72
+
73
+ // Horizontal rule
74
+ hr {
75
+ margin: $hr-margin-top 0 $hr-margin-bottom 0;
76
+ }
77
+
78
+ // Figure
79
+ figure {
80
+ margin: $figure-margin-top 0 $figure-margin-bottom 0;
81
+ padding: 0;
82
+ }
83
+
84
+ body {
85
+ margin: 0;
86
+ padding: 0;
87
+ font-family: var(--base-font-family);
88
+ font-size: 1.6rem; // 16px default text (with 10px rem base)
89
+ color: var(--pa-text-color-1);
90
+ background-color: var(--pa-main-bg);
91
+ line-height: $line-height-base;
92
+ overflow-x: hidden; // Hide horizontal scrollbar when sidebar slides out on mobile
93
+ overflow-y: scroll; // Always show vertical scrollbar gutter to prevent layout shift
94
+
95
+ // Background pattern for constrained layouts
96
+ &::before {
97
+ content: '';
98
+ position: fixed;
99
+ top: 0;
100
+ left: 0;
101
+ right: 0;
102
+ bottom: 0;
103
+ background:
104
+ radial-gradient(circle at $bg-pattern-circle-1-x $bg-pattern-circle-1-y, rgba($accent-color, $bg-pattern-opacity) $bg-pattern-gradient-start, transparent $bg-pattern-gradient-stop),
105
+ radial-gradient(circle at $bg-pattern-circle-2-x $bg-pattern-circle-2-y, rgba($accent-color, $bg-pattern-opacity) $bg-pattern-gradient-start, transparent $bg-pattern-gradient-stop);
106
+ pointer-events: none;
107
+ z-index: -1;
108
+ }
109
+ }
110
+
111
+ // Sticky sidebar mode: Prevent body scroll, let containers handle it
112
+ body.sidebar-sticky {
113
+ overflow: hidden;
114
+ height: 100vh;
115
+ }
116
+
117
+ // Ensure form elements and labels inherit theme font and size instead of browser defaults
118
+ button,
119
+ input,
120
+ select,
121
+ textarea,
122
+ label {
123
+ font-family: inherit;
124
+ font-size: inherit;
125
+ }
@@ -7,10 +7,11 @@
7
7
  // Buttons
8
8
  .pa-btn {
9
9
  display: inline-block;
10
+ vertical-align: middle;
10
11
  height: $btn-height-base;
11
12
  padding: $btn-padding-v $btn-padding-h;
12
13
  border: $btn-border-width solid transparent;
13
- border-radius: $border-radius;
14
+ border-radius: var(--pa-border-radius);
14
15
  font-size: $font-size-sm;
15
16
  font-weight: $font-weight-medium;
16
17
  text-align: center;
@@ -20,9 +21,6 @@
20
21
  background: none;
21
22
  color: var(--pa-text-color-1);
22
23
 
23
- &:hover {
24
- transform: translateY($btn-hover-lift);
25
- }
26
24
 
27
25
  &--primary {
28
26
  background-color: var(--pa-accent);
@@ -151,8 +149,8 @@
151
149
 
152
150
  &--outline-secondary {
153
151
  background-color: transparent;
154
- border-color: var(--pa-btn-secondary-bg);
155
- color: var(--pa-btn-secondary-bg);
152
+ border-color: var(--pa-btn-secondary-outline-color);
153
+ color: var(--pa-btn-secondary-outline-color);
156
154
 
157
155
  &:hover {
158
156
  background-color: var(--pa-btn-secondary-bg);
@@ -463,22 +461,20 @@
463
461
  .pa-btn-split {
464
462
  position: relative;
465
463
  display: inline-flex;
464
+ border-radius: var(--pa-border-radius);
465
+ overflow: hidden;
466
466
 
467
- // Joined buttons with no gap
467
+ // All buttons inside: no individual radius — container handles corners
468
468
  .pa-btn {
469
469
  border-radius: 0;
470
470
 
471
471
  &:first-child {
472
- border-start-start-radius: $border-radius;
473
- border-end-start-radius: $border-radius;
474
472
  border-inline-end: none;
475
473
  }
476
474
  }
477
475
 
478
476
  // Toggle button (chevron) - fixed square width
479
477
  &__toggle {
480
- border-start-end-radius: $border-radius;
481
- border-end-end-radius: $border-radius;
482
478
  border-inline-start: $border-width-base solid rgba(255, 255, 255, 0.25);
483
479
  padding-inline: 0;
484
480
  display: inline-flex;
@@ -505,24 +501,28 @@
505
501
  // Dropdown menu (moved to body and positioned by Floating UI)
506
502
  &__menu {
507
503
  display: none;
508
- flex-direction: column;
509
- gap: $spacing-xs;
510
504
  position: fixed;
511
505
  top: 0;
512
506
  left: 0;
513
507
  width: max-content;
514
508
  background: var(--pa-card-bg);
515
509
  border: $border-width-base solid var(--pa-border-color);
516
- border-radius: $border-radius;
510
+ border-radius: var(--pa-border-radius);
517
511
  box-shadow: $shadow-2xl;
518
512
  z-index: $z-index-dropdown;
519
- padding: $spacing-xs 0;
513
+ overflow: hidden;
520
514
 
521
515
  &--open {
522
- display: flex;
516
+ display: block;
523
517
  }
524
518
  }
525
519
 
520
+ &__menu-inner {
521
+ display: flex;
522
+ flex-direction: column;
523
+ gap: $spacing-xs;
524
+ }
525
+
526
526
  // Menu items
527
527
  &__item {
528
528
  display: flex;
@@ -552,6 +552,21 @@
552
552
  }
553
553
  }
554
554
 
555
+ // Row with item + action button (e.g. delete)
556
+ &__item-row {
557
+ display: flex;
558
+ align-items: center;
559
+
560
+ .pa-btn-split__item {
561
+ flex: 1;
562
+ }
563
+
564
+ > .pa-btn:last-child {
565
+ flex-shrink: 0;
566
+ margin-inline-end: $spacing-sm;
567
+ }
568
+ }
569
+
555
570
  &__item-icon {
556
571
  width: $sidebar-icon-size;
557
572
  min-width: $sidebar-icon-size;
@@ -1,152 +1,152 @@
1
- /* ========================================
2
- Callout Components
3
- Documentation-style callouts with left border accent
4
- For tips, notes, warnings in content areas
5
- ======================================== */
6
- @use '../variables' as *;
7
-
8
- // Callout base
9
- .pa-callout {
10
- position: relative;
11
- padding: $card-footer-padding-v $card-footer-padding-h;
12
- margin-bottom: $spacing-base;
13
- border-inline-start: $callout-border-width solid var(--pa-border-color); // RTL: flips to right
14
- border-radius: $border-radius;
15
- font-size: $font-size-sm;
16
- background-color: var(--pa-card-bg);
17
-
18
- // Remove margins when first/last child in card body
19
- .pa-card__body &:first-child {
20
- margin-top: 0;
21
- }
22
- .pa-card__body &:last-child {
23
- margin-bottom: 0;
24
- }
25
-
26
- // Callout variants
27
- &--primary {
28
- border-inline-start-color: var(--pa-accent);
29
- background-color: rgba($accent-color, $opacity-subtle);
30
- }
31
-
32
- &--secondary {
33
- border-inline-start-color: var(--pa-text-color-2);
34
- background-color: color-mix(in srgb, var(--pa-text-color-2) 5%, transparent);
35
- }
36
-
37
- &--success {
38
- border-inline-start-color: var(--pa-success-bg);
39
- background-color: var(--pa-success-bg-subtle);
40
- }
41
-
42
- &--danger {
43
- border-inline-start-color: var(--pa-danger-bg);
44
- background-color: var(--pa-danger-bg-subtle);
45
- }
46
-
47
- &--warning {
48
- border-inline-start-color: var(--pa-warning-bg);
49
- background-color: var(--pa-warning-bg-subtle);
50
- }
51
-
52
- &--info {
53
- border-inline-start-color: var(--pa-info-bg);
54
- background-color: var(--pa-info-bg-subtle);
55
- }
56
-
57
- // Theme color slot variants (color-1 through color-9)
58
- @for $i from 1 through 9 {
59
- &--color-#{$i} {
60
- border-inline-start-color: var(--pa-color-#{$i});
61
- background-color: color-mix(in srgb, var(--pa-color-#{$i}) 10%, transparent);
62
- }
63
- }
64
-
65
- // Callout sizes
66
- &--sm {
67
- padding: $spacing-sm $spacing-md;
68
- font-size: $font-size-xs;
69
- }
70
-
71
- &--lg {
72
- padding: $spacing-lg $spacing-xl;
73
- font-size: $font-size-base;
74
- }
75
-
76
- // Callout components
77
- &__icon {
78
- float: left;
79
- margin-inline-end: $spacing-sm; // RTL: flips to margin-left
80
-
81
- [dir="rtl"] & {
82
- float: right;
83
- }
84
-
85
- font-size: $font-size-lg;
86
- line-height: 1;
87
- }
88
-
89
- &__heading {
90
- margin: 0 0 $spacing-sm 0;
91
- font-size: $font-size-base;
92
- font-weight: $font-weight-semibold;
93
- }
94
-
95
- &__content {
96
- // Clearfix for floated icon
97
- &::after {
98
- content: '';
99
- display: table;
100
- clear: both;
101
- }
102
- }
103
-
104
- // Remove margin from last child
105
- > *:last-child {
106
- margin-bottom: 0;
107
- }
108
-
109
- // Paragraphs inside callouts
110
- p {
111
- margin: 0 0 $spacing-sm 0;
112
-
113
- &:last-child {
114
- margin-bottom: 0;
115
- }
116
- }
117
-
118
- // Lists inside callouts
119
- ul, ol {
120
- margin: $spacing-sm 0;
121
- padding-inline-start: $spacing-lg; // RTL: flips to right
122
-
123
- &:last-child {
124
- margin-bottom: 0;
125
- }
126
- }
127
-
128
- // Code inside callouts
129
- code {
130
- background-color: rgba(0, 0, 0, $opacity-subtle);
131
- padding: 0.1em 0.3em;
132
- border-radius: $border-radius-sm;
133
- font-size: 0.9em;
134
- }
135
-
136
- // Links styling
137
- a {
138
- color: inherit;
139
- text-decoration: underline;
140
- font-weight: $font-weight-medium;
141
-
142
- &:hover {
143
- text-decoration: none;
144
- }
145
- }
146
-
147
- // Headings inside callouts
148
- h1, h2, h3, h4, h5, h6 {
149
- color: inherit;
150
- margin-top: 0;
151
- }
152
- }
1
+ /* ========================================
2
+ Callout Components
3
+ Documentation-style callouts with left border accent
4
+ For tips, notes, warnings in content areas
5
+ ======================================== */
6
+ @use '../variables' as *;
7
+
8
+ // Callout base
9
+ .pa-callout {
10
+ position: relative;
11
+ padding: $card-footer-padding-v $card-footer-padding-h;
12
+ margin-bottom: $spacing-base;
13
+ border-inline-start: $callout-border-width solid var(--pa-border-color); // RTL: flips to right
14
+ border-radius: var(--pa-border-radius);
15
+ font-size: $font-size-sm;
16
+ background-color: var(--pa-card-bg);
17
+
18
+ // Remove margins when first/last child in card body
19
+ .pa-card__body &:first-child {
20
+ margin-top: 0;
21
+ }
22
+ .pa-card__body &:last-child {
23
+ margin-bottom: 0;
24
+ }
25
+
26
+ // Callout variants
27
+ &--primary {
28
+ border-inline-start-color: var(--pa-accent);
29
+ background-color: rgba($accent-color, $opacity-subtle);
30
+ }
31
+
32
+ &--secondary {
33
+ border-inline-start-color: var(--pa-text-color-2);
34
+ background-color: color-mix(in srgb, var(--pa-text-color-2) 5%, transparent);
35
+ }
36
+
37
+ &--success {
38
+ border-inline-start-color: var(--pa-success-bg);
39
+ background-color: var(--pa-success-bg-subtle);
40
+ }
41
+
42
+ &--danger {
43
+ border-inline-start-color: var(--pa-danger-bg);
44
+ background-color: var(--pa-danger-bg-subtle);
45
+ }
46
+
47
+ &--warning {
48
+ border-inline-start-color: var(--pa-warning-bg);
49
+ background-color: var(--pa-warning-bg-subtle);
50
+ }
51
+
52
+ &--info {
53
+ border-inline-start-color: var(--pa-info-bg);
54
+ background-color: var(--pa-info-bg-subtle);
55
+ }
56
+
57
+ // Theme color slot variants (color-1 through color-9)
58
+ @for $i from 1 through 9 {
59
+ &--color-#{$i} {
60
+ border-inline-start-color: var(--pa-color-#{$i});
61
+ background-color: color-mix(in srgb, var(--pa-color-#{$i}) 10%, transparent);
62
+ }
63
+ }
64
+
65
+ // Callout sizes
66
+ &--sm {
67
+ padding: $spacing-sm $spacing-md;
68
+ font-size: $font-size-xs;
69
+ }
70
+
71
+ &--lg {
72
+ padding: $spacing-lg $spacing-xl;
73
+ font-size: $font-size-base;
74
+ }
75
+
76
+ // Callout components
77
+ &__icon {
78
+ float: left;
79
+ margin-inline-end: $spacing-sm; // RTL: flips to margin-left
80
+
81
+ [dir="rtl"] & {
82
+ float: right;
83
+ }
84
+
85
+ font-size: $font-size-lg;
86
+ line-height: 1;
87
+ }
88
+
89
+ &__heading {
90
+ margin: 0 0 $spacing-sm 0;
91
+ font-size: $font-size-base;
92
+ font-weight: $font-weight-semibold;
93
+ }
94
+
95
+ &__content {
96
+ // Clearfix for floated icon
97
+ &::after {
98
+ content: '';
99
+ display: table;
100
+ clear: both;
101
+ }
102
+ }
103
+
104
+ // Remove margin from last child
105
+ > *:last-child {
106
+ margin-bottom: 0;
107
+ }
108
+
109
+ // Paragraphs inside callouts
110
+ p {
111
+ margin: 0 0 $spacing-sm 0;
112
+
113
+ &:last-child {
114
+ margin-bottom: 0;
115
+ }
116
+ }
117
+
118
+ // Lists inside callouts
119
+ ul, ol {
120
+ margin: $spacing-sm 0;
121
+ padding-inline-start: $spacing-lg; // RTL: flips to right
122
+
123
+ &:last-child {
124
+ margin-bottom: 0;
125
+ }
126
+ }
127
+
128
+ // Code inside callouts
129
+ code {
130
+ background-color: rgba(0, 0, 0, $opacity-subtle);
131
+ padding: 0.1em 0.3em;
132
+ border-radius: var(--pa-border-radius-sm);
133
+ font-size: 0.9em;
134
+ }
135
+
136
+ // Links styling
137
+ a {
138
+ color: inherit;
139
+ text-decoration: underline;
140
+ font-weight: $font-weight-medium;
141
+
142
+ &:hover {
143
+ text-decoration: none;
144
+ }
145
+ }
146
+
147
+ // Headings inside callouts
148
+ h1, h2, h3, h4, h5, h6 {
149
+ color: inherit;
150
+ margin-top: 0;
151
+ }
152
+ }