@stackoverflow/stacks 0.71.0 → 0.74.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 (34) hide show
  1. package/README.md +1 -1
  2. package/dist/css/stacks.css +963 -571
  3. package/dist/css/stacks.min.css +1 -1
  4. package/dist/js/stacks.js +190 -100
  5. package/dist/js/stacks.min.js +1 -1
  6. package/lib/css/atomic/_stacks-flex.less +2 -7
  7. package/lib/css/atomic/_stacks-grid.less +1 -0
  8. package/lib/css/atomic/_stacks-misc.less +6 -0
  9. package/lib/css/atomic/_stacks-typography.less +25 -7
  10. package/lib/css/base/_stacks-configuration-dynamic.less +4 -14
  11. package/lib/css/components/_stacks-activity-indicator.less +26 -2
  12. package/lib/css/components/_stacks-badges.less +1 -4
  13. package/lib/css/components/_stacks-buttons.less +44 -8
  14. package/lib/css/components/_stacks-cards.less +7 -11
  15. package/lib/css/components/_stacks-inputs.less +19 -0
  16. package/lib/css/components/_stacks-link-previews.less +4 -0
  17. package/lib/css/components/_stacks-links.less +25 -2
  18. package/lib/css/components/_stacks-navigation.less +8 -0
  19. package/lib/css/components/_stacks-pagination.less +2 -0
  20. package/lib/css/components/_stacks-popovers.less +4 -0
  21. package/lib/css/components/_stacks-post-summary.less +156 -10
  22. package/lib/css/components/_stacks-progress-bars.less +18 -3
  23. package/lib/css/components/_stacks-prose.less +7 -2
  24. package/lib/css/components/_stacks-tags.less +38 -15
  25. package/lib/css/components/_stacks-toggle-switches.less +8 -1
  26. package/lib/css/components/_stacks-topbar.less +440 -0
  27. package/lib/css/components/_stacks-uploader.less +2 -0
  28. package/lib/css/components/_stacks-user-cards.less +15 -39
  29. package/lib/css/exports/_stacks-constants-colors.less +50 -14
  30. package/lib/css/exports/_stacks-constants-helpers.less +1 -2
  31. package/lib/css/exports/_stacks-mixins.less +11 -0
  32. package/lib/css/stacks-dynamic.less +0 -1
  33. package/lib/css/stacks-static.less +2 -0
  34. package/package.json +15 -12
@@ -194,11 +194,6 @@ p {
194
194
  .wb-unset { word-break: unset !important; }
195
195
 
196
196
  // -- Overflow Wrap
197
- // This property will create a line break only if an entire word cannot be
198
- // placed on its own line without overflowing. This was formerly called
199
- // word-wrap, which was an unprefixed Microsoft vendor property implemented
200
- // by most browsers. Word-wrap is still a supported alias, but can be removed
201
- // once we no longer support IE11.
202
197
  .ow-normal {
203
198
  overflow-wrap: normal !important;
204
199
  word-wrap: normal !important;
@@ -224,8 +219,6 @@ p {
224
219
  word-wrap: unset !important;
225
220
  }
226
221
 
227
- .ww-break-word { word-wrap: break-word !important; }
228
-
229
222
  // -- Hyphenation
230
223
  .hyphens-none { hyphens: none !important; }
231
224
  .hyphens-auto {
@@ -235,9 +228,34 @@ p {
235
228
  }
236
229
  .hyphens-unset { hyphens: unset !important; }
237
230
 
231
+ // -- Break word
232
+ .break-word {
233
+ word-break: break-word !important;
234
+ word-wrap: break-word !important;
235
+ overflow-wrap: break-word !important;
236
+ -webkit-hyphens: auto !important;
237
+ -moz-hyphens: auto !important;
238
+ -ms-hyphens: auto !important;
239
+ hyphens: auto !important;
240
+ }
241
+
238
242
  // ============================================================================
239
243
  // $ LISTS
240
244
  // ----------------------------------------------------------------------------
245
+ ul,
246
+ ol {
247
+ padding: 0;
248
+ margin-left: 2.8em;
249
+
250
+ ul,
251
+ ol {
252
+ margin-bottom: 0;
253
+ }
254
+ }
255
+
256
+ ul { list-style-type: disc; }
257
+ ol { list-style-type: decimal; }
258
+
241
259
  .list-reset {
242
260
  list-style: none;
243
261
  margin: 0;
@@ -74,22 +74,12 @@
74
74
 
75
75
  // DEPRECATED will be removed in a future release
76
76
  // Tags
77
- @tags-border: transparent;
78
- @tags-background: var(--powder-100);
79
- @tags-color: var(--powder-700);
80
- @tags-hover-border: transparent;
81
- @tags-hover-background: var(--powder-200);
82
- @tags-hover-color: var(--powder-800);
83
- @tags-selected-border: transparent;
84
- @tags-selected-background: var(--powder-300);
85
- @tags-selected-color: var(--powder-900);
86
-
87
- @tags-moderator-border: var(--red-100);
77
+ @tags-moderator-border: var(--red-200);
88
78
  @tags-moderator-background: var(--red-050);
89
- @tags-moderator-color: var(--red-600);
90
- @tags-moderator-hover-border: var(--red-200);
79
+ @tags-moderator-color: var(--red-800);
80
+ @tags-moderator-hover-border: var(--red-300);
91
81
  @tags-moderator-hover-background: var(--red-100);
92
- @tags-moderator-hover-color: var(--red-700);
82
+ @tags-moderator-hover-color: var(--red-900);
93
83
  @tags-moderator-selected-border: var(--red-400);
94
84
  @tags-moderator-selected-background: var(--red-200);
95
85
  @tags-moderator-selected-color: var(--red-800);
@@ -13,9 +13,33 @@
13
13
 
14
14
  .s-activity-indicator {
15
15
  display: inline-block;
16
- width: @su12;
16
+ min-width: @su12;
17
17
  height: @su12;
18
+ padding-left: @su4;
19
+ padding-right: @su4;
20
+ line-height: 1.1; // Custom line-height to satisfy 1x screens
18
21
  background-color: var(--theme-secondary-400);
19
22
  box-shadow: 0 0 0 @su4 var(--focus-ring);
20
- border-radius: 100%;
23
+ border-radius: 1000px;
24
+ font-size: @fs-fine;
25
+ font-weight: 600;
26
+ color: @white;
27
+ text-transform: uppercase;
28
+
29
+ .highcontrast-mode({ color: var(--white); });
30
+ }
31
+
32
+ .s-activity-indicator__success {
33
+ background-color: var(--green-500);
34
+ box-shadow: 0 0 0 @su4 var(--focus-ring-success);
35
+ }
36
+
37
+ .s-activity-indicator__warning {
38
+ background-color: var(--yellow-600);
39
+ box-shadow: 0 0 0 @su4 var(--focus-ring-warning);
40
+ }
41
+
42
+ .s-activity-indicator__danger {
43
+ background-color: var(--red-500);
44
+ box-shadow: 0 0 0 @su4 var(--focus-ring-error);
21
45
  }
@@ -20,10 +20,6 @@
20
20
  border-color: @border;
21
21
  background-color: @background;
22
22
  color: @color;
23
-
24
- .s-tag--dismiss {
25
- background-color: transparent;
26
- }
27
23
  }
28
24
 
29
25
  // ===========================================================================
@@ -171,6 +167,7 @@
171
167
  margin-top: 0;
172
168
  }
173
169
  }
170
+
174
171
  .s-badge__staff {
175
172
  // Staff badges are always "Stack Overflow Orange"
176
173
  .badge-styles(var(--orange-300), var(--orange-100), var(--orange-900));
@@ -34,7 +34,13 @@
34
34
  cursor: pointer;
35
35
  user-select: none;
36
36
 
37
- .highcontrast-mode({ border-color: currentColor; });
37
+ .highcontrast-mode({
38
+ border-color: currentColor;
39
+
40
+ &:not(.s-btn__link):not(.s-btn__unset) {
41
+ text-decoration: none;
42
+ }
43
+ });
38
44
 
39
45
  button &,
40
46
  button[type="submit"] &,
@@ -206,6 +212,12 @@
206
212
  box-shadow: none;
207
213
  }
208
214
 
215
+ &:focus {
216
+ .highcontrast-mode({
217
+ box-shadow: 0 0 0 @su4 var(--focus-ring);
218
+ });
219
+ }
220
+
209
221
  &.is-selected {
210
222
  color: var(--theme-button-filled-selected-color);
211
223
  background-color: var(--theme-button-filled-selected-background-color);
@@ -293,6 +305,7 @@
293
305
 
294
306
  &:focus {
295
307
  box-shadow: 0 0 0 @su4 var(--focus-ring-muted);
308
+ .highcontrast-mode({ box-shadow: 0 0 0 @su4 var(--focus-ring-muted); });
296
309
  }
297
310
 
298
311
  &.is-selected {
@@ -341,6 +354,7 @@
341
354
 
342
355
  &:focus {
343
356
  box-shadow: 0 0 0 @su4 var(--focus-ring-error);
357
+ .highcontrast-mode({ box-shadow: 0 0 0 @su4 var(--focus-ring-error); });
344
358
  }
345
359
 
346
360
  &.is-selected {
@@ -373,6 +387,10 @@
373
387
  .highcontrast-mode({
374
388
  color: var(--white);
375
389
 
390
+ &:focus {
391
+ box-shadow: 0 0 0 @su4 var(--focus-ring-error);
392
+ }
393
+
376
394
  .s-btn--number {
377
395
  color: var(--black);
378
396
  }
@@ -437,7 +455,6 @@
437
455
  }
438
456
  });
439
457
 
440
-
441
458
  &:hover,
442
459
  &:focus,
443
460
  &:active {
@@ -450,6 +467,12 @@
450
467
  box-shadow: none;
451
468
  }
452
469
 
470
+ &:focus {
471
+ .highcontrast-mode({
472
+ box-shadow: 0 0 0 @su4 var(--focus-ring);
473
+ });
474
+ }
475
+
453
476
  &.is-selected {
454
477
  color: var(--theme-button-primary-selected-color);
455
478
  background-color: var(--theme-button-primary-selected-background-color);
@@ -476,10 +499,13 @@
476
499
  }
477
500
 
478
501
  &:active {
479
- border-color: var(--bc-darkest);
480
502
  background-color: var(--black-050);
481
503
  color: var(--black-900);
482
504
  }
505
+
506
+ &:focus {
507
+ box-shadow: 0 0 0 @su4 var(--focus-ring-muted);
508
+ }
483
509
  }
484
510
 
485
511
  .s-btn__facebook {
@@ -517,11 +543,16 @@
517
543
  background-color: var(--black-900);
518
544
  color: var(--white);
519
545
  }
546
+
547
+ &:focus {
548
+ box-shadow: 0 0 0 @su4 var(--focus-ring-muted);
549
+ }
520
550
  }
521
551
 
522
552
  .s-btn__unset,
523
553
  .s-btn__unset:hover,
524
- .s-btn__unset:active {
554
+ .s-btn__unset:active,
555
+ .s-btn__unset:focus {
525
556
  padding: 0;
526
557
  border: none;
527
558
  outline: none;
@@ -534,10 +565,6 @@
534
565
  user-select: auto;
535
566
  }
536
567
 
537
- .s-btn__unset:focus {
538
- color: unset;
539
- }
540
-
541
568
  .s-btn__link {
542
569
  display: inline;
543
570
  padding: 0;
@@ -556,6 +583,15 @@
556
583
  &:focus,
557
584
  &[disabled] {
558
585
  background: none;
586
+ box-shadow: none;
587
+ }
588
+
589
+ &.s-btn__dropdown {
590
+ padding-right: 0.9em;
591
+
592
+ &:after {
593
+ right: 0;
594
+ }
559
595
  }
560
596
  }
561
597
 
@@ -24,17 +24,6 @@
24
24
  }
25
25
  }
26
26
 
27
- // ============================================================================
28
- // $ LINKED CARDS
29
- // ----------------------------------------------------------------------------
30
- a.s-card:not(.s-card__muted) {
31
- &:hover,
32
- &:focus,
33
- &:active {
34
- border-color: var(--bc-darker);
35
- }
36
- }
37
-
38
27
  // ============================================================================
39
28
  // $ MODIFIERS
40
29
  // ----------------------------------------------------------------------------
@@ -46,3 +35,10 @@ a.s-card:not(.s-card__muted) {
46
35
  opacity: 0.65;
47
36
  }
48
37
  }
38
+
39
+ // ============================================================================
40
+ // $ LINKED CARDS
41
+ // ----------------------------------------------------------------------------
42
+ a.s-card {
43
+ text-decoration: none !important;
44
+ }
@@ -181,6 +181,10 @@ fieldset {
181
181
  &.s-label--status__required {
182
182
  background-color: var(--red-100);
183
183
  color: var(--red-600);
184
+
185
+ .dark-mode({
186
+ color: var(--red-800);
187
+ });
184
188
  }
185
189
 
186
190
  &.s-label--status__new {
@@ -378,6 +382,11 @@ fieldset {
378
382
  background-color: var(--theme-secondary-400);
379
383
  background-image: url("data:image/svg+xml,%3Csvg width='11' height='11' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 3.41L8.59 2 4 6.59 2.41 5 1 6.41l3 3z' fill='%23fff'/%3E%3C/svg%3E");
380
384
 
385
+ .highcontrast-dark-mode({
386
+ border-color: var(--blue-700) !important;
387
+ background-color: var(--blue-300);
388
+ });
389
+
381
390
  &:focus {
382
391
  border-color: var(--theme-secondary-400);
383
392
  }
@@ -400,6 +409,11 @@ fieldset {
400
409
  border-color: var(--theme-secondary-400);
401
410
  border-width: 0.30769231em;
402
411
  background-color: @white; // This should always be white regardless of dark mode
412
+
413
+ .highcontrast-dark-mode({
414
+ border-color: var(--blue-300);
415
+ outline: 1px solid var(--black);
416
+ });
403
417
  }
404
418
 
405
419
  &:focus {
@@ -680,6 +694,11 @@ fieldset {
680
694
  border-radius: @br-sm + 1;
681
695
  }
682
696
 
697
+ .s-textarea__md {
698
+ padding-top: 0.72em;
699
+ padding-bottom: 0.72em;
700
+ }
701
+
683
702
  .s-input__lg,
684
703
  .s-textarea__lg,
685
704
  .s-select__lg > select {
@@ -44,6 +44,8 @@ a.s-link-preview--title {
44
44
  &.s-link__visited:visited {
45
45
  color: var(--theme-link-color);
46
46
  text-decoration: none;
47
+
48
+ .highcontrast-mode({ text-decoration: underline; });
47
49
  }
48
50
 
49
51
  &:hover,
@@ -52,6 +54,8 @@ a.s-link-preview--title {
52
54
  &.s-link__visited:active {
53
55
  color: var(--theme-link-color-hover);
54
56
  text-decoration: none;
57
+
58
+ .highcontrast-mode({ text-decoration: underline; });
55
59
  }
56
60
  }
57
61
 
@@ -21,9 +21,12 @@ a,
21
21
  cursor: pointer;
22
22
  user-select: auto;
23
23
 
24
+ .highcontrast-mode({
25
+ text-decoration: underline;
26
+ });
27
+
24
28
  &.s-link__visited:visited {
25
29
  color: var(--theme-link-color-visited);
26
- text-decoration: none;
27
30
  }
28
31
 
29
32
  &:hover,
@@ -31,7 +34,6 @@ a,
31
34
  &:active,
32
35
  &.s-link__visited:active {
33
36
  color: var(--theme-link-color-hover);
34
- text-decoration: none;
35
37
  }
36
38
 
37
39
  &.s-link__grayscale {
@@ -92,6 +94,25 @@ a,
92
94
  &.s-link__underlined {
93
95
  text-decoration: underline !important;
94
96
  }
97
+
98
+ &.s-link__dropdown {
99
+ position: relative;
100
+ padding-right: 0.9em;
101
+
102
+ &:after {
103
+ content: "";
104
+ position: absolute;
105
+ z-index: @zi-active;
106
+ top: calc(50% - 2px);
107
+ right: 0;
108
+ border-style: solid;
109
+ border-width: @su4;
110
+ border-top-width: @su4;
111
+ border-bottom-width: 0;
112
+ border-color: currentColor transparent;
113
+ pointer-events: none;
114
+ }
115
+ }
95
116
  }
96
117
 
97
118
  button.s-link {
@@ -102,6 +123,7 @@ button.s-link {
102
123
  padding: 0;
103
124
  line-height: inherit;
104
125
  user-select: auto;
126
+ font-family: inherit;
105
127
 
106
128
  &:focus {
107
129
  outline: none;
@@ -158,6 +180,7 @@ button.s-link {
158
180
  border-radius: 0;
159
181
  text-align: left;
160
182
  line-height: inherit;
183
+ font-family: inherit;
161
184
 
162
185
  &:hover,
163
186
  &:active {
@@ -56,6 +56,14 @@
56
56
  &.is-selected {
57
57
  background: var(--theme-primary-color);
58
58
  color: var(--white);
59
+
60
+ &:hover,
61
+ &:active {
62
+ background: var(--theme-primary-600);
63
+ color: var(--white);
64
+ }
65
+
66
+ .highcontrast-mode({ text-decoration: none; });
59
67
  }
60
68
 
61
69
  &.s-navigation--item__dropdown {
@@ -30,6 +30,8 @@
30
30
  line-height: @lh-xl;
31
31
  color: var(--fc-medium);
32
32
 
33
+ .highcontrast-mode({ text-decoration: none; });
34
+
33
35
  &:hover {
34
36
  border-color: var(--bc-darker);
35
37
  background-color: var(--black-100);
@@ -30,6 +30,10 @@
30
30
  min-width: 12rem;
31
31
  width: 100%;
32
32
 
33
+ // Guard against popovers being in a container with white-space: nowrap
34
+ // Without this, the content pops *out* of the popover.
35
+ white-space: normal;
36
+
33
37
  .dark-mode({
34
38
  background-color: var(--black-075);
35
39
  border-color: var(--bc-light);
@@ -19,12 +19,10 @@
19
19
 
20
20
  #stacks-internals #screen-md({
21
21
  flex-direction: column;
22
- align-items: flex-start;
23
22
  });
24
23
 
25
24
  &.s-post-summary__minimal {
26
25
  flex-direction: column;
27
- align-items: flex-start;
28
26
 
29
27
  .s-post-summary--stats {
30
28
  width: auto;
@@ -54,34 +52,52 @@
54
52
  --s-post-summary-stats-gap: @su6; // Replace with gap property as soon as browser support makes sense.
55
53
  margin-right: @su8;
56
54
  margin-bottom: -@su2;
57
- width: @su96;
55
+ width: @su96 + @su12;
58
56
  display: flex;
59
57
  flex-direction: column;
60
58
  flex-shrink: 0;
61
59
  flex-wrap: wrap;
62
60
  align-items: flex-end;
63
- font-size: @fs-caption;
61
+ font-size: @fs-body1;
64
62
  color: var(--fc-light);
65
63
 
66
64
  .s-post-summary--stats-item {
65
+ display: inline-flex;
66
+ align-items: center;
67
+ justify-content: center;
67
68
  margin-right: var(--s-post-summary-stats-gap);
68
69
  margin-bottom: var(--s-post-summary-stats-gap);
69
70
  white-space: nowrap;
70
71
  border: 1px solid transparent;
71
72
 
73
+ .svg-icon {
74
+ margin-right: @su4;
75
+ }
76
+
77
+ &.s-post-summary--stats-item__emphasized {
78
+ color: var(--fc-dark);
79
+ }
80
+
72
81
  &.has-answers,
73
- &.has-bounty {
82
+ &.has-bounty,
83
+ &.is-deleted,
84
+ &.is-published,
85
+ &.is-draft,
86
+ &.is-review,
87
+ &.is-closed,
88
+ &.is-archived {
74
89
  border-radius: @br-sm;
75
90
  padding: @su2 @su4;
76
91
  }
77
92
 
78
93
  &.has-answers {
79
- color: var(--green-500);
80
- border: 1px solid var(--green-500);
94
+ color: var(--green-600);
95
+ border: 1px solid var(--green-600);
81
96
 
82
97
  &.has-accepted-answer {
83
98
  color: @white;
84
99
  background-color: var(--green-500);
100
+ border-color: var(--green-500);
85
101
 
86
102
  .highcontrast-mode({
87
103
  color: var(--white);
@@ -105,6 +121,35 @@
105
121
  &.is-supernova {
106
122
  color: var(--orange-400);
107
123
  }
124
+
125
+ &.is-published {
126
+ color: var(--black-800);
127
+ background-color: var(--black-050);
128
+ }
129
+
130
+ &.is-draft {
131
+ color: var(--blue-900);
132
+ background-color: var(--blue-100);
133
+ border-color: var(--blue-600);
134
+ }
135
+
136
+ &.is-review {
137
+ color: var(--yellow-900);
138
+ background-color: var(--yellow-100);
139
+ border-color: var(--yellow-600);
140
+ }
141
+
142
+ &.is-closed {
143
+ color: var(--red-900);
144
+ background-color: var(--red-100);
145
+ border-color: var(--red-600);
146
+ }
147
+
148
+ &.is-archived {
149
+ color: var(--black-900);
150
+ background-color: var(--black-100);
151
+ border-color: var(--black-600);
152
+ }
108
153
  }
109
154
 
110
155
  #stacks-internals #screen-md({
@@ -119,8 +164,9 @@
119
164
  max-width: 100%;
120
165
 
121
166
  .s-post-summary--content-title {
122
- display: inline-block;
123
- font-size: @fs-subheading;
167
+ display: block;
168
+ font-size: @fs-body3;
169
+ margin-top: -0.15rem; // Optical alignment to compensate for title's containing block
124
170
  margin-bottom: @su6;
125
171
  overflow-wrap: break-word;
126
172
  word-wrap: break-word;
@@ -141,7 +187,7 @@
141
187
 
142
188
  .s-post-summary--content-type {
143
189
  color: var(--fc-medium);
144
- margin-bottom: @su2;
190
+ margin-bottom: @su4;
145
191
 
146
192
  .svg-icon {
147
193
  margin-left: -@su2;
@@ -152,7 +198,20 @@
152
198
  .s-post-summary--content-excerpt {
153
199
  margin-top: -@su2;
154
200
  margin-bottom: @su8;
201
+ color: var(--fc-medium);
155
202
  .v-truncate2;
203
+
204
+ &.s-post-summary--content-excerpt__sm {
205
+ .v-truncate1;
206
+ }
207
+
208
+ &.s-post-summary--content-excerpt__md {
209
+ .v-truncate3;
210
+ }
211
+
212
+ &.s-post-summary--content-excerpt__lg {
213
+ .v-truncate4;
214
+ }
156
215
  }
157
216
  }
158
217
 
@@ -180,5 +239,92 @@
180
239
  flex-wrap: wrap;
181
240
  margin-bottom: var(--s-post-summary-tags-gap);
182
241
  margin-left: auto;
242
+ justify-content: flex-end;
243
+ }
244
+ }
245
+
246
+ .s-post-summary--answer {
247
+ position: relative;
248
+ margin: @su16 1em 0 1em;
249
+ padding: 0.5em 0 0.5em calc(1em + @su4);
250
+
251
+ + .s-post-summary--answer {
252
+ margin-top: @su16;
253
+ }
254
+
255
+ &:before {
256
+ content: "";
257
+ display: block;
258
+ position: absolute;
259
+ top: 0;
260
+ bottom: 0;
261
+ left: 0;
262
+ width: @su4;
263
+ border-radius: @su8;
264
+ background: var(--black-150);
265
+
266
+ .highcontrast-mode({
267
+ background: var(--black-600);
268
+ });
269
+ }
270
+
271
+ .s-post-summary--stats {
272
+ width: auto;
273
+ flex-direction: row;
274
+ align-items: center;
275
+ margin-bottom: @su4;
276
+ }
277
+
278
+ .s-post-summary--answer-excerpt {
279
+ color: var(--black-600);
280
+ margin-bottom: @su8;
281
+ .v-truncate4;
282
+ }
283
+ }
284
+
285
+ .s-post-summary__watched {
286
+ background-color: var(--yellow-050);
287
+ }
288
+
289
+ .s-post-summary__deleted {
290
+ background-color: var(--red-050);
291
+
292
+ .is-deleted {
293
+ color: @white;
294
+ background-color: var(--red-500);
295
+ }
296
+ }
297
+
298
+ .s-post-summary__ignored,
299
+ .s-post-summary__deleted {
300
+ .s-post-summary--content {
301
+ opacity: 0.6;
302
+ }
303
+
304
+ .s-post-summary--stats-item:not(.is-deleted) {
305
+ opacity: 0.6;
306
+ filter: grayscale(100%);
307
+ }
308
+
309
+ .s-post-summary--content-title {
310
+ &, & .s-link {
311
+ color: var(--black-600);
312
+
313
+ &:hover {
314
+ color: var(--black-500);
315
+ }
316
+
317
+ &:visited {
318
+ color: var(--black-700);
319
+ }
320
+ }
321
+ }
322
+
323
+ .s-post-summary--content-excerpt {
324
+ color: var(--black-500);
325
+ }
326
+
327
+ .s-post-summary--meta {
328
+ filter: grayscale(100%);
183
329
  }
184
330
  }