arsxy-theme 1.0.0.pre.rc

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 (56) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +21 -0
  3. data/README.md +166 -0
  4. data/_config.yml +131 -0
  5. data/_includes/footer.html +45 -0
  6. data/_includes/header.html +68 -0
  7. data/_includes/image.html +8 -0
  8. data/_includes/related-posts.html +83 -0
  9. data/_includes/search.html +32 -0
  10. data/_includes/social-sharing.html +86 -0
  11. data/_includes/toc.html +83 -0
  12. data/_layouts/default.html +76 -0
  13. data/_layouts/docs.html +90 -0
  14. data/_layouts/home.html +172 -0
  15. data/_layouts/post.html +114 -0
  16. data/_sass/_base.scss +264 -0
  17. data/_sass/_dark-mode.scss +749 -0
  18. data/_sass/_layout.scss +118 -0
  19. data/_sass/_responsive.scss +157 -0
  20. data/_sass/_syntax-highlighting.scss +147 -0
  21. data/_sass/_typography.scss +226 -0
  22. data/_sass/_utilities.scss +138 -0
  23. data/_sass/_variables.scss +63 -0
  24. data/_sass/components/_code.scss +245 -0
  25. data/_sass/components/_docs.scss +263 -0
  26. data/_sass/components/_footer.scss +170 -0
  27. data/_sass/components/_header.scss +313 -0
  28. data/_sass/components/_homepage.scss +597 -0
  29. data/_sass/components/_image.scss +22 -0
  30. data/_sass/components/_pagination.scss +146 -0
  31. data/_sass/components/_post.scss +1039 -0
  32. data/_sass/components/_related-posts.scss +70 -0
  33. data/_sass/components/_search.scss +276 -0
  34. data/_sass/components/_social-sharing.scss +95 -0
  35. data/_sass/components/_toc.scss +193 -0
  36. data/assets/css/main.scss +24 -0
  37. data/assets/images/favicon/android-chrome-192x192.png +0 -0
  38. data/assets/images/favicon/android-chrome-512x512.png +0 -0
  39. data/assets/images/favicon/apple-touch-icon.png +0 -0
  40. data/assets/images/favicon/favicon-16x16.png +0 -0
  41. data/assets/images/favicon/favicon-32x32.png +0 -0
  42. data/assets/images/favicon/favicon.ico +0 -0
  43. data/assets/images/favicon/site.webmanifest +19 -0
  44. data/assets/images/new-features-update.svg +58 -0
  45. data/assets/images/related-posts-example.svg +37 -0
  46. data/assets/images/seo-optimization.png +0 -0
  47. data/assets/images/social-sharing-sample.png +0 -0
  48. data/assets/images/ss-arsxy-theme.png +0 -0
  49. data/assets/images/table-of-content-thumbnail.png +0 -0
  50. data/assets/images/theme-demo-2.jpeg +0 -0
  51. data/assets/images/theme-demo.jpeg +0 -0
  52. data/assets/images/welcome-to-arsxy-theme.png +0 -0
  53. data/assets/js/main.js +369 -0
  54. data/assets/js/search-index.json +31 -0
  55. data/assets/js/search.js +207 -0
  56. metadata +226 -0
@@ -0,0 +1,749 @@
1
+ /* Dark mode styles */
2
+
3
+ /* Apply dark mode when .dark-mode class is present on html */
4
+ html.dark-mode {
5
+ /* Base color overrides */
6
+ background-color: $dark-background;
7
+ color: $dark-text-color;
8
+
9
+ /* Global heading styles to ensure visibility in dark mode - with higher specificity */
10
+ h1, h2, h3, h4, h5, h6,
11
+ .post-content h1, .post-content h2, .post-content h3,
12
+ .post-content h4, .post-content h5, .post-content h6,
13
+ .site-footer h1, .site-footer h2, .site-footer h3,
14
+ .site-footer h4, .site-footer h5, .site-footer h6,
15
+ [class*="section"] h1, [class*="section"] h2, [class*="section"] h3,
16
+ [class*="section"] h4, [class*="section"] h5, [class*="section"] h6 {
17
+ color: $dark-text-color !important; /* Force override with !important */
18
+ letter-spacing: -0.02em;
19
+ }
20
+
21
+ /* Strong tag styling for dark mode */
22
+ strong {
23
+ font-weight: 700;
24
+ color: lighten($dark-text-color, 10%) !important; /* Slightly brighter than normal text for emphasis */
25
+ }
26
+
27
+ body {
28
+ background-color: $dark-background;
29
+ color: $dark-text-color;
30
+ }
31
+
32
+ /* Header styles */
33
+ .site-header {
34
+ background-color: rgba($dark-surface, 0.95);
35
+ backdrop-filter: blur(10px);
36
+ -webkit-backdrop-filter: blur(10px);
37
+ border-color: $dark-border-color;
38
+ box-shadow: $shadow-sm;
39
+
40
+ .site-title {
41
+ color: $dark-text-color;
42
+ }
43
+ }
44
+
45
+ /* Link colors */
46
+ a {
47
+ color: lighten($link-color, 15%);
48
+
49
+ &:hover {
50
+ color: lighten($link-color, 25%);
51
+ }
52
+
53
+ &.underline-effect {
54
+ &::after {
55
+ background-color: currentColor;
56
+ }
57
+ }
58
+ }
59
+
60
+ /* Navigation */
61
+ .site-nav {
62
+ .page-link {
63
+ color: $dark-text-color;
64
+
65
+ &:hover, &.active {
66
+ color: lighten($primary-color, 20%);
67
+ }
68
+
69
+ &::after {
70
+ background: linear-gradient(to right, lighten($secondary-color, 10%), lighten($accent-color, 10%));
71
+ }
72
+ }
73
+
74
+ @media (max-width: $on-palm) {
75
+ background-color: rgba($dark-surface, 0.95);
76
+ backdrop-filter: blur(10px);
77
+ -webkit-backdrop-filter: blur(10px);
78
+ border-color: $dark-border-color;
79
+ box-shadow: $shadow-md;
80
+
81
+ .menu-icon > svg {
82
+ fill: $dark-text-color;
83
+ }
84
+
85
+ input ~ .trigger {
86
+ background: linear-gradient(to bottom right, rgba($dark-surface, 0.95), rgba($dark-surface, 0.99));
87
+ }
88
+ }
89
+
90
+ /* Dark mode toggle */
91
+ .theme-toggle {
92
+ color: darken($dark-text-color, 15%);
93
+
94
+ &:hover {
95
+ color: $dark-text-color;
96
+ background-color: rgba(lighten($primary-color, 20%), 0.1);
97
+ }
98
+
99
+ .theme-toggle-icon.sun {
100
+ display: block !important;
101
+ }
102
+
103
+ .theme-toggle-icon.moon {
104
+ display: none !important;
105
+ }
106
+ }
107
+ }
108
+
109
+ /* Footer */
110
+ .site-footer {
111
+ background: linear-gradient(to bottom, $dark-surface, $dark-background);
112
+ border-color: $dark-border-color;
113
+
114
+ &::before {
115
+ background: lighten($primary-color, 15%); /* Changed from gradient to solid lightened primary color */
116
+ }
117
+
118
+ .footer-col {
119
+ h2 {
120
+ color: lighten($primary-color, 15%);
121
+
122
+ &::after {
123
+ background: lighten($primary-color, 15%);
124
+ }
125
+ }
126
+
127
+ p {
128
+ color: darken($dark-text-color, 10%);
129
+ }
130
+ }
131
+
132
+ .footer-links, .social-links {
133
+ li {
134
+ &:hover {
135
+ transform: translateX(3px);
136
+ }
137
+ }
138
+
139
+ a {
140
+ color: darken($dark-text-color, 10%);
141
+
142
+ &::before {
143
+ color: lighten($accent-color, 10%);
144
+ }
145
+
146
+ &:hover {
147
+ color: lighten($primary-color, 20%);
148
+ }
149
+ }
150
+ }
151
+
152
+ .social-links {
153
+ .social-icon {
154
+ background-color: rgba(lighten($primary-color, 15%), 0.1);
155
+ color: lighten($primary-color, 15%);
156
+
157
+ &:hover {
158
+ background-color: lighten($primary-color, 15%);
159
+ color: $dark-background;
160
+ }
161
+ }
162
+ }
163
+
164
+ .footer-bottom {
165
+ border-color: rgba($dark-border-color, 0.5);
166
+ color: darken($dark-text-color, 20%);
167
+
168
+ a {
169
+ color: lighten($secondary-color, 15%);
170
+
171
+ &:hover {
172
+ color: lighten($accent-color, 15%);
173
+ }
174
+ }
175
+ }
176
+
177
+ .back-to-top {
178
+ background-color: $dark-surface;
179
+ color: lighten($primary-color, 15%);
180
+ box-shadow: $shadow-md;
181
+
182
+ &:hover {
183
+ background-color: lighten($primary-color, 15%);
184
+ color: $dark-background;
185
+ }
186
+ }
187
+ }
188
+
189
+ /* Post content */
190
+ .post {
191
+ .post-header {
192
+ .post-title {
193
+ background: linear-gradient(to right, lighten($primary-color, 15%), lighten($secondary-color, 15%));
194
+ -webkit-background-clip: text;
195
+ -webkit-text-fill-color: transparent;
196
+ background-clip: text;
197
+ color: transparent;
198
+ }
199
+
200
+ .post-description {
201
+ color: darken($dark-text-color, 15%);
202
+ border-left: 3px solid rgba(lighten($accent-color, 15%), 0.5);
203
+ }
204
+
205
+ .post-meta {
206
+ color: darken($dark-text-color, 15%);
207
+
208
+ .post-date {
209
+ background-color: rgba(lighten($primary-color, 15%), 0.1);
210
+ color: lighten($primary-color, 15%);
211
+ }
212
+
213
+ .post-categories {
214
+ a {
215
+ background: linear-gradient(to right, rgba(lighten($secondary-color, 15%), 0.1), rgba(lighten($accent-color, 15%), 0.1));
216
+ color: lighten($secondary-color, 15%);
217
+ border: 1px solid rgba(lighten($secondary-color, 15%), 0.2);
218
+
219
+ &:hover {
220
+ background: linear-gradient(to right, lighten($secondary-color, 10%), lighten($accent-color, 10%));
221
+ color: $dark-background;
222
+ }
223
+ }
224
+ }
225
+
226
+ .reading-time {
227
+ background-color: rgba($dark-gray-light, 0.3);
228
+ border: 1px solid rgba($dark-gray-light, 0.4);
229
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
230
+ color: $dark-text-color; /* Adding explicit color for visibility */
231
+
232
+ &:hover {
233
+ background-color: rgba($dark-gray-light, 0.4);
234
+ transform: translateY(-1px);
235
+ box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
236
+ }
237
+ }
238
+
239
+ .post-date-author {
240
+ background-color: rgba(lighten($primary-color, 15%), 0.15);
241
+ border: 1px solid rgba(lighten($primary-color, 15%), 0.3);
242
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
243
+
244
+ &:hover {
245
+ background-color: rgba(lighten($primary-color, 15%), 0.25);
246
+ transform: translateY(-1px);
247
+ box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
248
+ }
249
+
250
+ .post-date {
251
+ color: lighten($primary-color, 15%);
252
+ }
253
+
254
+ .separator {
255
+ color: rgba(lighten($primary-color, 10%), 0.6);
256
+ }
257
+
258
+ .post-author {
259
+ color: lighten($secondary-color, 15%);
260
+ }
261
+ }
262
+
263
+ .post-categories {
264
+ a {
265
+ background: rgba(lighten($secondary-color, 15%), 0.15);
266
+ color: lighten($secondary-color, 15%);
267
+ border: 1px solid rgba(lighten($secondary-color, 15%), 0.3);
268
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
269
+
270
+ &:hover {
271
+ background: rgba(lighten($secondary-color, 15%), 0.25);
272
+ color: lighten($secondary-color, 15%);
273
+ transform: translateY(-1px);
274
+ box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
275
+ }
276
+ }
277
+ }
278
+
279
+ .reading-time {
280
+ background-color: rgba($dark-gray-light, 0.3);
281
+ border: 1px solid rgba($dark-gray-light, 0.4);
282
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
283
+ color: $dark-text-color; /* Adding explicit color for visibility */
284
+
285
+ &:hover {
286
+ background-color: rgba($dark-gray-light, 0.4);
287
+ transform: translateY(-1px);
288
+ box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
289
+ }
290
+ }
291
+ }
292
+
293
+ .post-author {
294
+ .author-avatar {
295
+ border-color: lighten($secondary-color, 15%);
296
+ }
297
+
298
+ .author-name {
299
+ color: $dark-text-color;
300
+ }
301
+ }
302
+ }
303
+
304
+ .post-content {
305
+ h1, h2, h3, h4, h5, h6 {
306
+ color: $dark-text-color;
307
+
308
+ .heading-anchor {
309
+ color: darken($dark-text-color, 20%);
310
+
311
+ &:hover {
312
+ color: lighten($primary-color, 15%);
313
+ }
314
+ }
315
+ }
316
+
317
+ h2::after {
318
+ background: linear-gradient(to right, lighten($secondary-color, 10%), lighten($accent-color, 10%));
319
+ }
320
+
321
+ h4 {
322
+ color: lighten($secondary-color, 15%);
323
+ }
324
+
325
+ strong {
326
+ color: lighten($dark-text-color, 10%);
327
+ }
328
+
329
+ .lead {
330
+ color: lighten($secondary-color, 15%);
331
+ }
332
+
333
+ blockquote {
334
+ background-color: $dark-surface;
335
+ border-left: 4px solid lighten($secondary-color, 10%);
336
+
337
+ &::before {
338
+ color: rgba(lighten($secondary-color, 15%), 0.2);
339
+ }
340
+
341
+ cite {
342
+ color: darken($dark-text-color, 20%);
343
+ }
344
+ }
345
+
346
+ code {
347
+ color: lighten($accent-color, 15%);
348
+ background-color: $dark-code-background;
349
+ }
350
+
351
+ a:not(.heading-anchor) {
352
+ color: lighten($primary-color, 15%);
353
+
354
+ &:hover {
355
+ color: lighten($accent-color, 15%);
356
+ }
357
+
358
+ &::after {
359
+ background-color: lighten($accent-color, 15%);
360
+ }
361
+ }
362
+ }
363
+
364
+ /* Table of contents */
365
+ .table-of-contents {
366
+ background: linear-gradient(to bottom right, rgba($dark-surface, 0.8), rgba($dark-background, 0.8));
367
+
368
+ h2 {
369
+ color: lighten($secondary-color, 15%);
370
+ }
371
+
372
+ .toc-entry {
373
+ a {
374
+ color: $dark-text-color;
375
+
376
+ &:hover {
377
+ color: $accent-color; /* Match the floating TOC hover color */
378
+ }
379
+
380
+ &.active {
381
+ color: $accent-color; /* Match the floating TOC active color */
382
+ font-weight: 600;
383
+ }
384
+ }
385
+
386
+ &.active > a {
387
+ color: $accent-color; /* Match the floating TOC active color */
388
+ }
389
+ }
390
+ }
391
+
392
+ /* Post tags */
393
+ .post-tags {
394
+ background-color: rgba($dark-background, 0.8); /* Darker background */
395
+ border: 1px solid $dark-border-color; /* Adding border for definition */
396
+ box-shadow: $shadow-sm;
397
+
398
+ h3 {
399
+ color: lighten($secondary-color, 15%);
400
+ }
401
+
402
+ .tag-list {
403
+ .tag {
404
+ background-color: $dark-surface; /* Darker tag background */
405
+ color: lighten($accent-color, 15%);
406
+ border: 1px solid rgba(lighten($accent-color, 15%), 0.2);
407
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
408
+
409
+ &:hover {
410
+ background-color: lighten($accent-color, 15%);
411
+ color: $dark-background;
412
+ transform: translateY(-1px);
413
+ box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
414
+ }
415
+ }
416
+ }
417
+ }
418
+
419
+ /* Post navigation */
420
+ .post-navigation {
421
+ a {
422
+ background: $dark-surface; /* Solid darker background instead of gradient */
423
+ color: $dark-text-color;
424
+ border: 1px solid $dark-border-color;
425
+ box-shadow: $shadow-sm;
426
+
427
+ .nav-label {
428
+ color: lighten($secondary-color, 15%);
429
+ }
430
+
431
+ &::after {
432
+ background: linear-gradient(to right, lighten($secondary-color, 10%), lighten($accent-color, 10%));
433
+ }
434
+
435
+ &:hover {
436
+ background: lighten($dark-surface, 5%); /* Slightly lighter on hover */
437
+ transform: translateY(-2px);
438
+ box-shadow: $shadow-md;
439
+ }
440
+
441
+ &.prev::before, &.next::before {
442
+ color: lighten($secondary-color, 15%);
443
+ }
444
+ }
445
+ }
446
+ }
447
+
448
+ /* Homepage elements in dark mode */
449
+ .featured-card, .post-preview {
450
+ .card-title, h3 {
451
+ a {
452
+ color: lighten($dark-text-color, 15%) !important; /* Make card titles lighter and more visible */
453
+
454
+ &:hover {
455
+ color: lighten($primary-color, 20%) !important; /* Even lighter hover state */
456
+ }
457
+ }
458
+ }
459
+
460
+ .card-content {
461
+ .card-title {
462
+ color: lighten($dark-text-color, 15%); /* Ensure the title itself is visible */
463
+ }
464
+ }
465
+ }
466
+
467
+ /* Post layout in dark mode */
468
+ .post-layout {
469
+ @media (min-width: 1024px) {
470
+ &.sidebar-right {
471
+ .post-sidebar {
472
+ border-left: 2px solid $dark-border-color;
473
+ }
474
+ }
475
+
476
+ &.sidebar-left {
477
+ .post-sidebar {
478
+ border-right: 2px solid $dark-border-color;
479
+ }
480
+ }
481
+ }
482
+
483
+ /* Floating TOC in dark mode */
484
+ .post-sidebar {
485
+ .floating-toc {
486
+ h2 {
487
+ color: lighten($secondary-color, 15%);
488
+ }
489
+
490
+ .toc {
491
+ a {
492
+
493
+ &:hover {
494
+ color: $accent-color; /* Much lighter color for hover state */
495
+ }
496
+
497
+ &.active {
498
+ color: $accent-color; /* Much lighter color for active state */
499
+ }
500
+ }
501
+
502
+ .toc-level-2 > a {
503
+ color: darken($dark-text-color, 5%);
504
+ font-weight: 500;
505
+
506
+ &:hover, &.active {
507
+ color: $accent-color;
508
+ }
509
+ }
510
+
511
+ .toc-level-3 > a {
512
+ color: darken($dark-text-color, 15%);
513
+ opacity: 0.9;
514
+
515
+ &:hover, &.active {
516
+ color: $accent-color;
517
+ }
518
+ }
519
+ }
520
+ }
521
+ }
522
+ }
523
+
524
+ /* Hero section buttons in dark mode */
525
+ .hero-section {
526
+ .hero-buttons {
527
+ .btn {
528
+ &.btn-primary {
529
+ background: linear-gradient(135deg, lighten($accent-color, 5%), lighten($primary-color, 10%));
530
+ box-shadow: 0 4px 15px rgba(lighten($primary-color, 15%), 0.3);
531
+
532
+ &:hover {
533
+ background: linear-gradient(135deg, lighten($accent-color, 10%), lighten($primary-color, 15%));
534
+ box-shadow: 0 6px 20px rgba(lighten($primary-color, 20%), 0.4);
535
+ }
536
+ }
537
+
538
+ &.btn-secondary {
539
+ background: linear-gradient(135deg, lighten($secondary-color, 5%), $secondary-color);
540
+ box-shadow: 0 4px 15px rgba(lighten($secondary-color, 15%), 0.3);
541
+
542
+ &:hover {
543
+ background: linear-gradient(135deg, lighten($secondary-color, 10%), lighten($secondary-color, 5%));
544
+ box-shadow: 0 6px 20px rgba(lighten($secondary-color, 20%), 0.4);
545
+ }
546
+ }
547
+
548
+ &::before {
549
+ background: linear-gradient(
550
+ 90deg,
551
+ rgba(255, 255, 255, 0) 0%,
552
+ rgba(255, 255, 255, 0.3) 50%,
553
+ rgba(255, 255, 255, 0) 100%
554
+ );
555
+ }
556
+ }
557
+ }
558
+ }
559
+
560
+ /* Code blocks */
561
+ .code-block {
562
+ pre {
563
+ background-color: $dark-code-background;
564
+ color: #f8f8f2;
565
+ }
566
+
567
+ &::before {
568
+ background: linear-gradient(to right, lighten($secondary-color, 10%), lighten($accent-color, 10%));
569
+ }
570
+
571
+ &:hover .copy-code-button {
572
+ opacity: 1;
573
+ transform: translateY(0);
574
+ }
575
+ }
576
+
577
+ .code-filename {
578
+ background: $dark-surface;
579
+ color: $dark-text-color;
580
+ border-color: $dark-border-color;
581
+ }
582
+
583
+ .highlight-line {
584
+ background: linear-gradient(to right, rgba(lighten($accent-color, 10%), 0.1), rgba(lighten($accent-color, 10%), 0.05));
585
+ border-left: 3px solid lighten($accent-color, 10%);
586
+ }
587
+
588
+ .copy-code-button {
589
+ background-color: rgba(255, 255, 255, 0.2); /* Light background for dark mode */
590
+ color: $dark-text-color;
591
+ opacity: 0.7; /* Make button visible by default */
592
+ transform: translateY(0); /* No initial transform */
593
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
594
+
595
+ &:hover {
596
+ background-color: rgba(255, 255, 255, 0.4); /* Lighter on hover */
597
+ box-shadow: 0 2px 5px rgba(0, 0, 0, 0.4);
598
+ transform: translateY(-2px);
599
+ opacity: 1; /* Full opacity on hover */
600
+ }
601
+
602
+ &.copied {
603
+ background: linear-gradient(to right, lighten($success-color, 10%), lighten($success-color, 5%));
604
+ opacity: 1;
605
+ }
606
+ }
607
+
608
+ /* Code blocks and syntax highlighting */
609
+ .highlight {
610
+ background: $dark-code-background;
611
+
612
+ pre {
613
+ background-color: $dark-code-background;
614
+ color: #f8f8f2;
615
+ border-color: $dark-border-color;
616
+ }
617
+
618
+ /* Syntax highlighting */
619
+ .c, .c1, .cm { color: #6272a4; font-style: italic; } /* Comment */
620
+ .err { color: #f8f8f2; background-color: transparent; } /* Error */
621
+ .k, .kd, .kr { color: #ff79c6; font-weight: bold; } /* Keyword */
622
+ .o { color: #f8f8f2; } /* Operator */
623
+ .p { color: #f8f8f2; } /* Punctuation */
624
+ .s, .s1, .s2 { color: #f1fa8c; background-color: transparent; } /* String */
625
+ .nb { color: #8be9fd; background-color: transparent; } /* Built-in */
626
+ .nc { color: #50fa7b; background-color: transparent; } /* Class */
627
+ .nf { color: #50fa7b; background-color: transparent; } /* Function */
628
+ .nn { color: #8be9fd; background-color: transparent; } /* Namespace */
629
+ .nt { color: #ff79c6; background-color: transparent; } /* Tag */
630
+ .nv { color: #8be9fd; background-color: transparent; } /* Variable */
631
+ .w { color: #f8f8f2; } /* Text.Whitespace */
632
+ .m, .mi, .mf { color: #bd93f9; background-color: transparent; } /* Number */
633
+
634
+ /* Override any problematic elements */
635
+ .gd {
636
+ color: #ff5555;
637
+ background-color: rgba(255, 85, 85, 0.2);
638
+ }
639
+ .gi {
640
+ color: #50fa7b;
641
+ background-color: rgba(80, 250, 123, 0.2);
642
+ }
643
+
644
+ /* All other syntax elements */
645
+ .kc, .kn, .kp, .kt,
646
+ .na, .no, .nd, .ni, .ne, .nl,
647
+ .nx, .py, .ow, .mh, .mo,
648
+ .sb, .sc, .sd, .se, .sh, .si, .sx, .sr, .ss, .bp,
649
+ .vc, .vg, .vi, .il {
650
+ color: inherit;
651
+ background-color: transparent;
652
+ }
653
+ }
654
+
655
+ .language-label {
656
+ background: $dark-gray-light;
657
+ color: $dark-text-color;
658
+ }
659
+
660
+ /* Tables */
661
+ table {
662
+ box-shadow: $shadow-sm;
663
+
664
+ th, td {
665
+ border-color: $dark-border-color;
666
+ }
667
+
668
+ th {
669
+ background: linear-gradient(to right, rgba(lighten($primary-color, 15%), 0.1), rgba(lighten($secondary-color, 15%), 0.1));
670
+ color: lighten($secondary-color, 15%);
671
+ }
672
+
673
+ tr {
674
+ &:nth-child(even) {
675
+ background-color: rgba($dark-gray-light, 0.3);
676
+ }
677
+
678
+ &:hover {
679
+ background-color: rgba(lighten($secondary-color, 15%), 0.05);
680
+ }
681
+ }
682
+ }
683
+
684
+ /* Selection */
685
+ ::selection {
686
+ background: rgba(lighten($accent-color, 15%), 0.3);
687
+ color: $dark-text-color;
688
+ }
689
+
690
+ /* CSS-only featured images in dark mode */
691
+ .css-featured-image {
692
+ /* Pattern 0 - Diagonal stripes */
693
+ &[data-pattern="0"] {
694
+ background: linear-gradient(135deg, lighten($primary-color, 10%), lighten($secondary-color, 10%));
695
+
696
+ &::before {
697
+ background: repeating-linear-gradient(
698
+ 45deg,
699
+ transparent,
700
+ transparent 20px,
701
+ rgba(255, 255, 255, 0.1) 20px,
702
+ rgba(255, 255, 255, 0.1) 40px
703
+ );
704
+ }
705
+ }
706
+
707
+ /* Pattern 1 - Radial gradient */
708
+ &[data-pattern="1"] {
709
+ background: radial-gradient(circle at 30% 40%, lighten($secondary-color, 10%), lighten($accent-color, 10%));
710
+ }
711
+
712
+ /* Pattern 2 - Geometric shapes */
713
+ &[data-pattern="2"] {
714
+ background: linear-gradient(to right, lighten($primary-color, 10%), lighten($accent-color, 10%));
715
+ }
716
+
717
+ /* Pattern 3 - Waves */
718
+ &[data-pattern="3"] {
719
+ background: linear-gradient(to bottom, lighten($secondary-color, 10%), lighten($accent-color, 10%));
720
+ }
721
+
722
+ /* Pattern 4 - Grid */
723
+ &[data-pattern="4"] {
724
+ background: linear-gradient(135deg, lighten($accent-color, 10%), lighten($primary-color, 10%));
725
+ }
726
+
727
+ /* Pattern 5 - Dots */
728
+ &[data-pattern="5"] {
729
+ background: linear-gradient(45deg, lighten($primary-color, 10%), lighten($secondary-color, 10%));
730
+ }
731
+
732
+ .css-image-title {
733
+ color: rgba(255, 255, 255, 0.2);
734
+ text-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
735
+
736
+ &::after {
737
+ background: rgba(255, 255, 255, 0.3);
738
+ }
739
+ }
740
+ }
741
+ }
742
+
743
+ /* Transition for smooth mode switching */
744
+ body, a, .site-header, .site-nav, .site-footer, .post,
745
+ .table-of-contents, pre, code, blockquote, table, button,
746
+ .post-navigation a, .tag, .theme-toggle, .footer-col h2::after,
747
+ .post-content h2::after, .heading-anchor, .social-icon {
748
+ transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease;
749
+ }