jekyll-theme-chirpy 5.0.2 → 5.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (74) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +7 -7
  3. data/_config.yml +39 -13
  4. data/_data/assets/cross_origin.yml +62 -0
  5. data/_data/assets/self_host.yml +51 -0
  6. data/_data/authors.yml +17 -0
  7. data/_data/locales/en.yml +12 -20
  8. data/_data/locales/es-ES.yml +79 -0
  9. data/_data/locales/fr-FR.yml +79 -0
  10. data/_data/locales/id-ID.yml +4 -16
  11. data/_data/locales/ko-KR.yml +4 -16
  12. data/_data/locales/my-MM.yml +79 -0
  13. data/_data/locales/pt-BR.yml +79 -0
  14. data/_data/locales/ru-RU.yml +79 -0
  15. data/_data/locales/uk-UA.yml +79 -0
  16. data/_data/locales/vi-VN.yml +77 -0
  17. data/_data/locales/zh-CN.yml +4 -16
  18. data/_data/share.yml +1 -1
  19. data/_includes/assets-origin.html +12 -0
  20. data/_includes/comments/giscus.html +56 -0
  21. data/_includes/comments/utterances.html +2 -2
  22. data/_includes/datetime.html +21 -0
  23. data/_includes/footer.html +5 -6
  24. data/_includes/head.html +62 -21
  25. data/_includes/js-selector.html +47 -11
  26. data/_includes/jsdelivr-combine.html +32 -0
  27. data/_includes/mermaid.html +3 -3
  28. data/_includes/mode-toggle.html +4 -3
  29. data/_includes/post-nav.html +4 -4
  30. data/_includes/post-paginator.html +2 -2
  31. data/_includes/post-sharing.html +3 -2
  32. data/_includes/refactor-content.html +62 -10
  33. data/_includes/related-posts.html +1 -4
  34. data/_includes/search-loader.html +1 -1
  35. data/_includes/sidebar.html +8 -8
  36. data/_includes/toc.html +1 -1
  37. data/_includes/topbar.html +3 -4
  38. data/_layouts/archives.html +15 -6
  39. data/_layouts/categories.html +25 -4
  40. data/_layouts/category.html +1 -3
  41. data/_layouts/default.html +23 -8
  42. data/_layouts/home.html +4 -8
  43. data/_layouts/page.html +11 -11
  44. data/_layouts/post.html +52 -44
  45. data/_layouts/tag.html +1 -3
  46. data/_layouts/tags.html +3 -1
  47. data/_sass/addon/commons.scss +240 -304
  48. data/_sass/addon/module.scss +33 -17
  49. data/_sass/addon/syntax.scss +38 -25
  50. data/_sass/addon/variables.scss +9 -9
  51. data/_sass/colors/dark-syntax.scss +1 -0
  52. data/_sass/colors/dark-typography.scss +10 -1
  53. data/_sass/colors/light-syntax.scss +6 -1
  54. data/_sass/colors/light-typography.scss +14 -1
  55. data/_sass/jekyll-theme-chirpy.scss +1 -1
  56. data/_sass/layout/post.scss +4 -7
  57. data/_tabs/about.md +2 -2
  58. data/assets/404.html +0 -17
  59. data/assets/js/data/search.json +6 -5
  60. data/assets/js/data/swcache.js +11 -20
  61. data/assets/js/dist/categories.min.js +2 -2
  62. data/assets/js/dist/commons.min.js +2 -2
  63. data/assets/js/dist/home.min.js +2 -2
  64. data/assets/js/dist/misc.min.js +6 -0
  65. data/assets/js/dist/page.min.js +2 -2
  66. data/assets/js/dist/post.min.js +2 -2
  67. data/assets/js/dist/pvreport.min.js +2 -2
  68. data/assets/js/pwa/app.js +42 -4
  69. data/assets/js/pwa/sw.js +42 -40
  70. data/assets/js/pwa/unregister.js +12 -0
  71. metadata +20 -7
  72. data/_includes/css-selector.html +0 -15
  73. data/_includes/no-zero-date.html +0 -13
  74. data/_includes/timeago.html +0 -26
@@ -1,37 +1,30 @@
1
1
  /*
2
2
  The common styles
3
3
  */
4
- @import url('https://fonts.googleapis.com/css2?family=Lato&family=Source+Sans+Pro:wght@400;600;900&display=swap');
5
4
 
6
- @mixin mode-toggle($dark-mode: false) {
7
- @if $dark-mode {
8
- @include dark-scheme;
9
- } @else {
10
- @include light-scheme;
11
- }
12
- }
13
-
14
- html:not([mode]),
15
- html[mode=light] {
16
- @include mode-toggle();
17
- }
18
-
19
- html[mode=dark] {
20
- @include mode-toggle(true);
21
- }
5
+ html {
6
+ @media (prefers-color-scheme: light) {
7
+ &:not([data-mode]),
8
+ &[data-mode=light] {
9
+ @include light-scheme;
10
+ }
22
11
 
23
- @media (prefers-color-scheme: dark) {
24
- html:not([mode]),
25
- html[mode=dark] {
26
- @include mode-toggle(true);
12
+ &[data-mode=dark] {
13
+ @include dark-scheme;
14
+ }
27
15
  }
28
16
 
29
- html[mode=light] {
30
- @include mode-toggle();
17
+ @media (prefers-color-scheme: dark) {
18
+ &:not([data-mode]),
19
+ &[data-mode=dark] {
20
+ @include dark-scheme;
21
+ }
22
+
23
+ &[data-mode=light] {
24
+ @include light-scheme;
25
+ }
31
26
  }
32
- }
33
27
 
34
- :root {
35
28
  font-size: 16px;
36
29
  }
37
30
 
@@ -54,7 +47,7 @@ h1 {
54
47
  h2 {
55
48
  @extend %heading;
56
49
  @extend %section;
57
- @extend %anchor-relative;
50
+ @extend %anchor;
58
51
 
59
52
  font-size: 1.5rem;
60
53
  }
@@ -104,6 +97,38 @@ blockquote {
104
97
  border-left: 5px solid var(--blockquote-border-color);
105
98
  padding-left: 1rem;
106
99
  color: var(--blockquote-text-color);
100
+
101
+ &[class^="prompt-"] {
102
+ display: flex;
103
+ border-left: 0;
104
+ border-radius: 6px;
105
+ padding: 0.75rem 1.2rem;
106
+ color: var(--prompt-text-color);
107
+
108
+ &::before {
109
+ margin-right: 1rem;
110
+ font-family: "Font Awesome 5 Free";
111
+ text-align: center;
112
+ width: 1.25rem;
113
+ }
114
+
115
+ p:last-child {
116
+ margin-bottom: 0rem;
117
+ }
118
+ }
119
+
120
+ @include prompt("tip", "\f0eb", 400);
121
+
122
+ @include prompt("info", "\f06a");
123
+
124
+ @include prompt("warning", "\f06a");
125
+
126
+ @include prompt("danger", "\f071");
127
+ }
128
+
129
+ mjx-container {
130
+ overflow-x: auto;
131
+ overflow-y: hidden;
107
132
  }
108
133
 
109
134
  kbd {
@@ -123,18 +148,15 @@ kbd {
123
148
  }
124
149
 
125
150
  footer {
126
- position: absolute;
127
- bottom: 0;
128
- padding: 0 1rem;
129
- height: $footer-height;
151
+ @include pl-pr(1.5rem);
152
+
130
153
  font-size: 0.8rem;
131
154
 
132
155
  > div.d-flex {
156
+ height: $footer-height;
133
157
  line-height: 1.2rem;
134
- width: 95%;
135
- max-width: 1045px;
158
+ padding-bottom: 1rem;
136
159
  border-top: 1px solid var(--main-border-color);
137
- margin-bottom: 1rem;
138
160
 
139
161
  > div {
140
162
  width: 350px;
@@ -160,7 +182,7 @@ footer {
160
182
  }
161
183
  }
162
184
 
163
- i { // fontawesome icons
185
+ i { /* fontawesome icons */
164
186
  &.far,
165
187
  &.fas {
166
188
  @extend %no-cursor;
@@ -191,7 +213,10 @@ img[data-src] {
191
213
 
192
214
  &.shadow {
193
215
  filter: drop-shadow(2px 4px 6px rgba(0, 0, 0, 0.08));
216
+ box-shadow: none !important; /* cover the Bootstrap 4.6.1 styles */
194
217
  }
218
+
219
+ @extend %img-caption;
195
220
  }
196
221
 
197
222
  /* --- Panels --- */
@@ -199,7 +224,6 @@ img[data-src] {
199
224
  .access {
200
225
  top: 2rem;
201
226
  transition: top 0.2s ease-in-out;
202
- margin-right: 1.5rem;
203
227
  margin-top: 3rem;
204
228
  margin-bottom: 4rem;
205
229
 
@@ -224,7 +248,7 @@ img[data-src] {
224
248
  }
225
249
 
226
250
  #panel-wrapper {
227
- // the headings
251
+ /* the headings */
228
252
  .panel-heading {
229
253
  @include label(inherit);
230
254
  }
@@ -247,7 +271,7 @@ img[data-src] {
247
271
  }
248
272
  }
249
273
 
250
- &.topbar-down > div {
274
+ [data-topbar-visible=true] & > div {
251
275
  top: 6rem;
252
276
  }
253
277
  }
@@ -290,7 +314,7 @@ img[data-src] {
290
314
  margin-bottom: 0;
291
315
  }
292
316
 
293
- // [scroll-focus] added by `smooth-scroll.js`
317
+ /* [scroll-focus] added by `smooth-scroll.js` */
294
318
  &:target:not([scroll-focus]),
295
319
  &[scroll-focus=true] > p {
296
320
  background-color: var(--footnote-target-bg);
@@ -311,7 +335,7 @@ img[data-src] {
311
335
  transition: background-color 1.5s ease-in-out;
312
336
  }
313
337
 
314
- // [scroll-focus] added by `smooth-scroll.js`
338
+ /* [scroll-focus] added by `smooth-scroll.js` */
315
339
  @at-root sup:target:not([scroll-focus]),
316
340
  sup[scroll-focus=true] > a#{&} {
317
341
  background-color: var(--footnote-target-bg);
@@ -331,7 +355,7 @@ img[data-src] {
331
355
 
332
356
  /* --- Begin of Markdown table style --- */
333
357
 
334
- // it will be created by Liquid
358
+ /* it will be created by Liquid */
335
359
  .table-wrapper {
336
360
  overflow-x: auto;
337
361
  margin-bottom: 1.5rem;
@@ -365,8 +389,8 @@ img[data-src] {
365
389
  @extend %table-cell;
366
390
  }
367
391
  }
368
- } // tbody
369
- }// table
392
+ } /* tbody */
393
+ }/* table */
370
394
  }
371
395
 
372
396
  /* --- post --- */
@@ -382,7 +406,7 @@ img[data-src] {
382
406
  @extend %no-cursor;
383
407
  }
384
408
 
385
- // created by `_includes/img-extra.html`
409
+ /* created by `_includes/img-extra.html` */
386
410
  &.popup {
387
411
  cursor: zoom-in;
388
412
 
@@ -396,7 +420,7 @@ img[data-src] {
396
420
  @extend %link-hover;
397
421
  }
398
422
  }
399
- } // a
423
+ } /* a */
400
424
 
401
425
  }
402
426
 
@@ -413,7 +437,7 @@ img[data-src] {
413
437
  margin-right: 2px;
414
438
  }
415
439
 
416
- &:hover {
440
+ &:not([class]):hover {
417
441
  @extend %link-hover;
418
442
  }
419
443
  }
@@ -439,23 +463,18 @@ img[data-src] {
439
463
  }
440
464
  }
441
465
 
442
- &.img-link + em {
443
- display: block;
444
- text-align: center;
445
- font-style: normal;
446
- font-size: 80%;
447
- padding: 0;
448
- color: #6d6c6c;
466
+ &.img-link {
467
+ @extend %img-caption;
449
468
  }
450
469
 
451
470
  }
452
471
 
453
472
  ul {
454
- // attribute 'hide-bullet' was added by liquid
473
+ /* attribute 'hide-bullet' was added by liquid */
455
474
  .task-list-item[hide-bullet] {
456
475
  list-style-type: none;
457
476
 
458
- > i { // checkbox icon
477
+ > i { /* checkbox icon */
459
478
  margin: 0 0.4rem 0.2rem -1.4rem;
460
479
  vertical-align: middle;
461
480
  color: var(--checkbox-color);
@@ -472,7 +491,7 @@ img[data-src] {
472
491
  vertical-align: middle;
473
492
  }
474
493
 
475
- } // ul
494
+ } /* ul */
476
495
 
477
496
  > ol,
478
497
  > ul {
@@ -480,7 +499,7 @@ img[data-src] {
480
499
 
481
500
  li {
482
501
  ol,
483
- ul { // sub list
502
+ ul { /* sub list */
484
503
  padding-left: 2rem;
485
504
  margin-top: 0.3rem;
486
505
  }
@@ -498,7 +517,7 @@ img[data-src] {
498
517
  margin-left: 1rem;
499
518
  }
500
519
 
501
- } // .post-content
520
+ } /* .post-content */
502
521
 
503
522
  .tag:hover {
504
523
  @extend %tag-hover;
@@ -570,10 +589,6 @@ img[data-src] {
570
589
  box-shadow: 0 0 8px 0 var(--btn-box-shadow) !important;
571
590
  }
572
591
 
573
- .topbar-up {
574
- top: -3rem !important; /* same as topbar height. */
575
- }
576
-
577
592
  .no-text-decoration {
578
593
  @include no-text-decoration;
579
594
  }
@@ -603,14 +618,14 @@ img[data-src] {
603
618
 
604
619
  /* --- Overriding --- */
605
620
 
606
- // magnific-popup
621
+ /* magnific-popup */
607
622
  figure .mfp-title {
608
623
  text-align: center;
609
624
  padding-right: 0;
610
625
  margin-top: 0.5rem;
611
626
  }
612
627
 
613
- // mermaid
628
+ /* mermaid */
614
629
  .mermaid {
615
630
  text-align: center;
616
631
  }
@@ -658,7 +673,7 @@ $sidebar-display: "sidebar-display";
658
673
  border-radius: 50%;
659
674
  border: 2px solid rgba(222, 222, 222, 0.7);
660
675
  overflow: hidden;
661
- transform: translateZ(0); // fixed the zoom in Safari
676
+ transform: translateZ(0); /* fixed the zoom in Safari */
662
677
  -webkit-transition: border-color 0.35s ease-in-out;
663
678
  -moz-transition: border-color 0.35s ease-in-out;
664
679
  transition: border-color 0.35s ease-in-out;
@@ -682,7 +697,7 @@ $sidebar-display: "sidebar-display";
682
697
  transform: scale(1.2);
683
698
  }
684
699
  }
685
- } // #avatar
700
+ } /* #avatar */
686
701
 
687
702
  .site-title {
688
703
  a {
@@ -701,7 +716,7 @@ $sidebar-display: "sidebar-display";
701
716
  line-height: 1.2rem;
702
717
  word-spacing: 1px;
703
718
  margin: 0.5rem 1.5rem 0.5rem 1.5rem;
704
- min-height: 3rem; // avoid vertical shifting in multi-line words
719
+ min-height: 3rem; /* avoid vertical shifting in multi-line words */
705
720
  user-select: none;
706
721
  }
707
722
 
@@ -745,7 +760,7 @@ $sidebar-display: "sidebar-display";
745
760
  width: 100%;
746
761
  }
747
762
 
748
- &::after { // the cursor
763
+ &::after { /* the cursor */
749
764
  display: table;
750
765
  visibility: hidden;
751
766
  content: "";
@@ -758,7 +773,7 @@ $sidebar-display: "sidebar-display";
758
773
  pointer-events: none;
759
774
  }
760
775
  }
761
- } // li
776
+ } /* li */
762
777
 
763
778
  @mixin fix-cursor($top) {
764
779
  top: $top;
@@ -783,9 +798,9 @@ $sidebar-display: "sidebar-display";
783
798
  }
784
799
  }
785
800
 
786
- } // @for
801
+ } /* @for */
787
802
 
788
- } // ul
803
+ } /* ul */
789
804
 
790
805
  .sidebar-bottom {
791
806
  margin-bottom: 2.1rem;
@@ -836,9 +851,9 @@ $sidebar-display: "sidebar-display";
836
851
  border-radius: 50%;
837
852
  }
838
853
 
839
- } // .sidebar-bottom
854
+ } /* .sidebar-bottom */
840
855
 
841
- } // #sidebar
856
+ } /* #sidebar */
842
857
 
843
858
  @media (hover: hover) {
844
859
  #sidebar ul > li:last-child::after {
@@ -857,6 +872,7 @@ $sidebar-display: "sidebar-display";
857
872
  #search-result-wrapper {
858
873
  display: none;
859
874
  height: 100%;
875
+ width: 100%;
860
876
  overflow: auto;
861
877
 
862
878
  .post-content {
@@ -876,10 +892,14 @@ $sidebar-display: "sidebar-display";
876
892
  z-index: 50;
877
893
  border-bottom: 1px solid rgba(0, 0, 0, 0.07);
878
894
  background-color: var(--topbar-wrapper-bg);
895
+
896
+ [data-topbar-visible=false] & {
897
+ top: -$topbar-height; /* same as topbar height. */
898
+ }
879
899
  }
880
900
 
881
901
  #topbar {
882
- i { // icons
902
+ i { /* icons */
883
903
  color: #999;
884
904
  }
885
905
 
@@ -901,7 +921,7 @@ $sidebar-display: "sidebar-display";
901
921
  }
902
922
  }
903
923
  }
904
- } // #topbar
924
+ } /* #topbar */
905
925
 
906
926
  #sidebar-trigger,
907
927
  #search-trigger {
@@ -910,7 +930,7 @@ $sidebar-display: "sidebar-display";
910
930
 
911
931
  #search-wrapper {
912
932
  display: flex;
913
- width: 85%;
933
+ width: 100%;
914
934
  border-radius: 1rem;
915
935
  border: 1px solid var(--search-wrapper-border-color);
916
936
  background: var(--search-wrapper-bg);
@@ -921,12 +941,6 @@ $sidebar-display: "sidebar-display";
921
941
  font-size: 0.9rem;
922
942
  color: var(--search-icon-color);
923
943
  }
924
-
925
- .fa-times-circle { /* button 'clean up' */
926
- @extend %cursor-pointer;
927
-
928
- visibility: hidden;
929
- }
930
944
  }
931
945
 
932
946
  #search-cancel { /* 'Cancel' link */
@@ -943,6 +957,7 @@ $sidebar-display: "sidebar-display";
943
957
  border-radius: 0;
944
958
  padding: 0.18rem 0.3rem;
945
959
  color: var(--text-color);
960
+ height: auto;
946
961
 
947
962
  &:focus {
948
963
  box-shadow: none;
@@ -984,7 +999,7 @@ $sidebar-display: "sidebar-display";
984
999
  }
985
1000
 
986
1001
  #search-results {
987
- padding-bottom: 6rem;
1002
+ padding-bottom: 3rem;
988
1003
 
989
1004
  a {
990
1005
  &:hover {
@@ -1006,7 +1021,7 @@ $sidebar-display: "sidebar-display";
1006
1021
  margin-bottom: 1rem;
1007
1022
  }
1008
1023
 
1009
- i { // icons
1024
+ i { /* icons */
1010
1025
  color: #818182;
1011
1026
  margin-right: 0.15rem;
1012
1027
  font-size: 80%;
@@ -1020,7 +1035,7 @@ $sidebar-display: "sidebar-display";
1020
1035
  -webkit-box-orient: vertical;
1021
1036
  }
1022
1037
  }
1023
- } // #search-results
1038
+ } /* #search-results */
1024
1039
 
1025
1040
  #topbar-title {
1026
1041
  display: none;
@@ -1037,7 +1052,7 @@ $sidebar-display: "sidebar-display";
1037
1052
  }
1038
1053
 
1039
1054
  #core-wrapper {
1040
- min-height: calc(100vh - #{$topbar-height} - #{$footer-height} - #{$bottom-min-height}) !important;
1055
+ min-height: calc(100vh - #{$topbar-height} - #{$footer-height});
1041
1056
 
1042
1057
  .categories,
1043
1058
  #tags,
@@ -1070,29 +1085,13 @@ $sidebar-display: "sidebar-display";
1070
1085
  background-color: var(--main-wrapper-bg);
1071
1086
  position: relative;
1072
1087
  min-height: 100vh;
1073
- padding-bottom: $footer-height;
1074
1088
 
1075
1089
  @include pl-pr(0);
1076
1090
  }
1077
1091
 
1078
- #main {
1079
- .row:first-child {
1080
- > div {
1081
- &:nth-child(1),
1082
- &:nth-child(2) {
1083
- margin-top: $topbar-height; /* same as the height of topbar */
1084
- }
1085
-
1086
- &:first-child {
1087
- /* 3rem for topbar, 6rem for footer */
1088
- min-height: calc(100vh - #{$topbar-height} - #{$footer-height} - #{$bottom-min-height});
1089
- }
1090
- }
1091
- }
1092
-
1093
- div.row:first-of-type:last-of-type { // alone
1094
- margin-bottom: 4rem;
1095
- }
1092
+ #core-wrapper,
1093
+ #panel-wrapper {
1094
+ margin-top: $topbar-height; /* same as the height of topbar */
1096
1095
  }
1097
1096
 
1098
1097
  #topbar-wrapper.row,
@@ -1132,6 +1131,51 @@ $sidebar-display: "sidebar-display";
1132
1131
  -webkit-transform: translate3d(0, -5px, 0);
1133
1132
  }
1134
1133
 
1134
+ #notification {
1135
+ @keyframes popup {
1136
+ from {
1137
+ opacity: 0;
1138
+ bottom: 0;
1139
+ }
1140
+ }
1141
+
1142
+ .toast-header {
1143
+ background: none;
1144
+ border-bottom: none;
1145
+ color: inherit;
1146
+ }
1147
+
1148
+ .toast-body {
1149
+ font-family: 'Lato';
1150
+ line-height: 1.25rem;
1151
+
1152
+ button {
1153
+ font-size: 90%;
1154
+ min-width: 4rem;
1155
+ }
1156
+ }
1157
+
1158
+ &.toast {
1159
+ display: none;
1160
+
1161
+ &.show {
1162
+ display: block;
1163
+ min-width: 20rem;
1164
+ border-radius: 0.5rem;
1165
+ -webkit-backdrop-filter: blur(10px);
1166
+ backdrop-filter: blur(10px);
1167
+ background-color: rgba(255, 255, 255, 0.5);
1168
+ color: #1b1b1eba;
1169
+ position: fixed;
1170
+ left: 50%;
1171
+ bottom: 20%;
1172
+ transform: translateX(-50%);
1173
+ animation: popup 0.8s;
1174
+ }
1175
+ }
1176
+
1177
+ }
1178
+
1135
1179
  /*
1136
1180
  Responsive Design:
1137
1181
 
@@ -1142,20 +1186,37 @@ $sidebar-display: "sidebar-display";
1142
1186
  */
1143
1187
 
1144
1188
  @media all and (max-width: 576px) {
1189
+ footer {
1190
+ height: $footer-height-mobile;
1145
1191
 
1146
- $footer-height: $footer-height-mobile; // overwrite
1192
+ > div.d-flex {
1193
+ padding: 1.5rem 0;
1194
+ flex-wrap: wrap;
1195
+ -ms-flex-pack: distribute !important;
1196
+ justify-content: space-around !important;
1197
+ }
1147
1198
 
1148
- #main > div.row:first-child > div:first-child {
1149
- min-height: calc(100vh - #{$topbar-height} - #{$footer-height});
1199
+ .footer-left,
1200
+ .footer-right {
1201
+ text-align: center;
1202
+ }
1150
1203
  }
1151
1204
 
1152
1205
  #core-wrapper {
1153
- min-height: calc(100vh - #{$topbar-height} - #{$footer-height} - #{$bottom-min-height}) !important;
1206
+ min-height: calc(100vh - #{$topbar-height} - #{$footer-height-mobile}) !important;
1154
1207
 
1155
1208
  h1 {
1156
1209
  margin-top: 2.2rem;
1157
1210
  font-size: 1.75rem;
1158
1211
  }
1212
+
1213
+ .post-content {
1214
+ > blockquote[class^=prompt-] {
1215
+ @include ml-mr(-1.25rem);
1216
+ border-radius: 0;
1217
+ }
1218
+ }
1219
+
1159
1220
  }
1160
1221
 
1161
1222
  #avatar > a {
@@ -1167,35 +1228,34 @@ $sidebar-display: "sidebar-display";
1167
1228
  @include ml-mr(1.8rem);
1168
1229
  }
1169
1230
 
1170
- #main-wrapper {
1171
- padding-bottom: $footer-height;
1172
- }
1173
-
1174
- footer {
1175
- height: $footer-height;
1231
+ }
1176
1232
 
1177
- > div.d-flex {
1178
- width: 100%;
1179
- padding: 1.5rem 0;
1180
- margin-bottom: 0.3rem;
1181
- flex-wrap: wrap;
1182
- -ms-flex-pack: distribute !important;
1183
- justify-content: space-around !important;
1184
- }
1233
+ @media all and (max-width: 768px) {
1234
+ %full-width {
1235
+ max-width: 100%;
1236
+ }
1185
1237
 
1186
- .footer-left,
1187
- .footer-right {
1188
- text-align: center;
1189
- }
1238
+ #topbar {
1239
+ @extend %full-width;
1190
1240
  }
1191
1241
 
1242
+ #main {
1243
+ @extend %full-width;
1244
+ @include pl-pr(0);
1245
+ }
1192
1246
  }
1193
1247
 
1194
1248
  /* hide sidebar and panel */
1195
1249
  @media all and (max-width: 849px) {
1196
- %slide {
1197
- -webkit-transition: transform 0.4s ease;
1198
- transition: transform 0.4s ease;
1250
+ @mixin slide($append: null) {
1251
+ $basic: transform 0.4s ease;
1252
+ @if $append {
1253
+ -webkit-transition: $basic, $append;
1254
+ transition: $basic, $append;
1255
+ } @else {
1256
+ -webkit-transition: $basic;
1257
+ transition: $basic;
1258
+ }
1199
1259
  }
1200
1260
 
1201
1261
  html,
@@ -1203,15 +1263,6 @@ $sidebar-display: "sidebar-display";
1203
1263
  overflow-x: hidden;
1204
1264
  }
1205
1265
 
1206
- .footnotes ol > li {
1207
- padding-top: 3.5rem;
1208
- margin-top: -3.2rem;
1209
-
1210
- &:first-child {
1211
- margin-top: -3.5rem;
1212
- }
1213
- }
1214
-
1215
1266
  [#{$sidebar-display}] {
1216
1267
  #sidebar {
1217
1268
  transform: translateX(0);
@@ -1221,13 +1272,12 @@ $sidebar-display: "sidebar-display";
1221
1272
  #main-wrapper {
1222
1273
  transform: translateX(#{$sidebar-width});
1223
1274
  }
1224
-
1225
1275
  }
1226
1276
 
1227
1277
  #sidebar {
1228
- @extend %slide;
1278
+ @include slide;
1229
1279
 
1230
- transform: translateX(-#{$sidebar-width}); // hide
1280
+ transform: translateX(-#{$sidebar-width}); /* hide */
1231
1281
  -webkit-transform: translateX(-#{$sidebar-width});
1232
1282
 
1233
1283
  .cursor {
@@ -1238,11 +1288,16 @@ $sidebar-display: "sidebar-display";
1238
1288
  }
1239
1289
 
1240
1290
  #main-wrapper {
1241
- @extend %slide;
1291
+ @include slide;
1242
1292
 
1243
1293
  padding-top: $topbar-height;
1244
1294
  }
1245
1295
 
1296
+ #topbar,
1297
+ #main {
1298
+ max-width: 100%;
1299
+ }
1300
+
1246
1301
  #search-result-wrapper {
1247
1302
  width: 100%;
1248
1303
  }
@@ -1253,17 +1308,13 @@ $sidebar-display: "sidebar-display";
1253
1308
  }
1254
1309
 
1255
1310
  #topbar-wrapper {
1256
- @extend %slide;
1311
+ @include slide(top 0.2s ease);
1257
1312
 
1258
1313
  left: 0;
1259
1314
  }
1260
1315
 
1261
- .topbar-up {
1262
- top: 0 !important;
1263
- }
1264
-
1265
- #main > div.row:first-child > div:nth-child(1),
1266
- #main > div.row:first-child > div:nth-child(2) {
1316
+ #core-wrapper,
1317
+ #panel-wrapper {
1267
1318
  margin-top: 0;
1268
1319
  }
1269
1320
 
@@ -1273,21 +1324,6 @@ $sidebar-display: "sidebar-display";
1273
1324
  display: block;
1274
1325
  }
1275
1326
 
1276
- #search-wrapper {
1277
- &.loaded ~ a {
1278
- margin-right: 1rem;
1279
- }
1280
-
1281
- .fa-times-circle {
1282
- right: 5.2rem;
1283
- }
1284
- }
1285
-
1286
- #search-input {
1287
- margin-left: 0;
1288
- width: 95%;
1289
- }
1290
-
1291
1327
  #search-result-wrapper .post-content {
1292
1328
  letter-spacing: 0;
1293
1329
  }
@@ -1306,7 +1342,13 @@ $sidebar-display: "sidebar-display";
1306
1342
  }
1307
1343
  }
1308
1344
 
1309
- } // max-width: 849px
1345
+ } /* max-width: 849px */
1346
+
1347
+ @media all and (max-width: 849px) and (orientation: portrait) {
1348
+ [data-topbar-visible=false] #topbar-wrapper {
1349
+ top: 0;
1350
+ }
1351
+ }
1310
1352
 
1311
1353
  /* Phone & Pad */
1312
1354
  @media all and (min-width: 577px) and (max-width: 1199px) {
@@ -1330,17 +1372,17 @@ $sidebar-display: "sidebar-display";
1330
1372
  margin-top: 3rem;
1331
1373
  }
1332
1374
 
1333
- #search-wrapper {
1334
- width: 22%;
1335
- min-width: 150px;
1336
- }
1337
-
1338
1375
  #search-hints {
1339
1376
  display: none;
1340
1377
  }
1341
1378
 
1379
+ #search-wrapper {
1380
+ max-width: $search-max-width;
1381
+ }
1382
+
1342
1383
  #search-result-wrapper {
1343
1384
  margin-top: 3rem;
1385
+ max-width: $main-content-max-width;
1344
1386
  }
1345
1387
 
1346
1388
  div.post-content .table-wrapper > table {
@@ -1350,21 +1392,17 @@ $sidebar-display: "sidebar-display";
1350
1392
  /* button 'back-to-Top' position */
1351
1393
  #back-to-top {
1352
1394
  bottom: 5.5rem;
1353
- right: 1.2rem;
1395
+ right: 5%;
1354
1396
  }
1355
1397
 
1356
- .topbar-up {
1357
- box-shadow: none !important;
1398
+ #topbar {
1399
+ @include pl-pr(2rem);
1358
1400
  }
1359
1401
 
1360
1402
  #topbar-title {
1361
1403
  text-align: left;
1362
1404
  }
1363
1405
 
1364
- footer > div.d-flex {
1365
- width: 92%;
1366
- }
1367
-
1368
1406
  }
1369
1407
 
1370
1408
  /* Pad horizontal */
@@ -1438,10 +1476,6 @@ $sidebar-display: "sidebar-display";
1438
1476
  display: none;
1439
1477
  }
1440
1478
 
1441
- #topbar {
1442
- padding: 0;
1443
- }
1444
-
1445
1479
  #main > div.row {
1446
1480
  -webkit-box-pack: center !important;
1447
1481
  -ms-flex-pack: center !important;
@@ -1452,26 +1486,12 @@ $sidebar-display: "sidebar-display";
1452
1486
  /* --- desktop mode, both sidebar and panel are visible --- */
1453
1487
 
1454
1488
  @media all and (min-width: 1200px) {
1455
- #main > div.row > div.col-xl-8 {
1456
- -webkit-box-flex: 0;
1457
- -ms-flex: 0 0 75%;
1458
- flex: 0 0 75%;
1459
- max-width: 75%;
1460
- padding-left: 3%;
1461
- }
1462
-
1463
- #topbar {
1464
- padding: 0;
1465
- max-width: 1070px;
1466
- }
1467
-
1468
- #panel-wrapper {
1469
- max-width: $panel-max-width;
1470
- }
1471
-
1472
1489
  #back-to-top {
1473
1490
  bottom: 6.5rem;
1474
- right: 4.3rem;
1491
+ }
1492
+
1493
+ #search-wrapper {
1494
+ margin-right: 4rem;
1475
1495
  }
1476
1496
 
1477
1497
  #search-input {
@@ -1507,66 +1527,36 @@ $sidebar-display: "sidebar-display";
1507
1527
  }
1508
1528
 
1509
1529
  @media all and (min-width: 1400px) {
1510
- #main > div.row {
1511
- padding-left: calc((100% - #{$main-content-max-width}) / 2);
1512
-
1513
- > div.col-xl-8 {
1514
- max-width: 850px;
1515
- }
1516
- }
1517
-
1518
- #search-result-wrapper {
1519
- padding-right: 2rem;
1520
-
1521
- > div {
1522
- max-width: 1110px;
1523
- }
1524
- }
1525
-
1526
- #search-wrapper .fa-times-circle {
1527
- right: 2.6rem;
1528
- }
1529
-
1530
- }
1531
-
1532
- @media all and (min-width: 1400px) and (max-width: 1650px) {
1533
- #topbar {
1534
- padding-right: 2rem;
1530
+ #back-to-top {
1531
+ right: calc((100vw - #{$sidebar-width} - 1140px) / 2 + 3rem);
1535
1532
  }
1536
1533
  }
1537
1534
 
1538
1535
  @media all and (min-width: 1650px) {
1539
- #breadcrumb {
1540
- padding-left: 0;
1541
- }
1542
-
1543
- #main > div.row > div.col-xl-8 {
1544
- padding-left: 0;
1545
-
1546
- > div:first-child {
1547
- padding-left: 0.55rem !important;
1548
- padding-right: 1.9rem !important;
1549
- }
1550
- }
1551
-
1552
1536
  #main-wrapper {
1553
1537
  margin-left: $sidebar-width-large;
1554
1538
  }
1555
1539
 
1556
- #panel-wrapper {
1557
- margin-left: calc((100% - #{$main-content-max-width}) / 10);
1558
- }
1559
-
1560
1540
  #topbar-wrapper {
1561
1541
  left: $sidebar-width-large;
1562
1542
  }
1563
1543
 
1564
- #topbar {
1565
- max-width: #{$main-content-max-width};
1544
+ #search-wrapper {
1545
+ margin-right: calc(#{$main-content-max-width} * 0.25 - #{$search-max-width});
1566
1546
  }
1567
1547
 
1568
- #search-wrapper {
1569
- margin-right: 3%;
1548
+ #topbar,
1549
+ #main {
1550
+ max-width: $main-content-max-width;
1551
+ }
1552
+
1553
+ #core-wrapper,
1554
+ #tail-wrapper {
1555
+ padding-right: 4.5rem !important;
1556
+ }
1557
+
1558
+ #back-to-top {
1559
+ right: calc((100vw - #{$sidebar-width-large} - #{$main-content-max-width}) / 2 + 2rem);
1570
1560
  }
1571
1561
 
1572
1562
  #sidebar {
@@ -1613,7 +1603,7 @@ $sidebar-display: "sidebar-display";
1613
1603
  margin-top: 0.3rem;
1614
1604
  }
1615
1605
 
1616
- } // .profile-wrapper (min-width: 1650px)
1606
+ } /* .profile-wrapper (min-width: 1650px) */
1617
1607
 
1618
1608
  ul {
1619
1609
  padding-left: 2.5rem;
@@ -1660,7 +1650,7 @@ $sidebar-display: "sidebar-display";
1660
1650
  @include ml-mr(0.15rem);
1661
1651
 
1662
1652
  height: $icon-block-size;
1663
- margin-bottom: 0.5rem; // wrap line
1653
+ margin-bottom: 0.5rem; /* wrap line */
1664
1654
  }
1665
1655
 
1666
1656
  i {
@@ -1683,62 +1673,8 @@ $sidebar-display: "sidebar-display";
1683
1673
  top: 0.9rem;
1684
1674
  }
1685
1675
 
1686
- } // .sidebar-bottom
1676
+ } /* .sidebar-bottom */
1687
1677
 
1688
- } // #sidebar
1689
-
1690
- footer > div.d-flex {
1691
- width: 92%;
1692
- max-width: 1140px;
1693
- }
1678
+ } /* #sidebar */
1694
1679
 
1695
- #search-result-wrapper {
1696
- > div {
1697
- max-width: #{$main-content-max-width};
1698
- }
1699
- }
1700
-
1701
- } // min-width: 1650px
1702
-
1703
- @media all and (min-width: 1700px) {
1704
- #topbar-wrapper {
1705
- /* 100% - 350px - (1920px - 350px); */
1706
- padding-right: calc(100% - #{$sidebar-width-large} - (1920px - #{$sidebar-width-large}));
1707
- }
1708
-
1709
- #topbar {
1710
- max-width: calc(#{$main-content-max-width} + 20px);
1711
- }
1712
-
1713
- #main > div.row {
1714
- padding-left: calc((100% - #{$main-content-max-width} - 2%) / 2);
1715
- }
1716
-
1717
- #panel-wrapper {
1718
- margin-left: 3%;
1719
- }
1720
-
1721
- footer {
1722
- padding-left: 0;
1723
- padding-right: calc(100% - #{$sidebar-width-large} - 1180px);
1724
- }
1725
-
1726
- #back-to-top {
1727
- right: calc(100% - 1920px + 15rem);
1728
- }
1729
-
1730
- }
1731
-
1732
- @media (min-width: 1920px) {
1733
- #main > div.row {
1734
- padding-left: 190px;
1735
- }
1736
-
1737
- #search-result-wrapper {
1738
- padding-right: calc(100% - #{$sidebar-width-large} - 1180px);
1739
- }
1740
-
1741
- #panel-wrapper {
1742
- margin-left: 41px;
1743
- }
1744
- }
1680
+ } /* min-width: 1650px */