Fix top margin of main heading on collection pages.
[lw2-viewer.git] / www / style.css.php
blob9375693afaf666028e05463e349475694fec185d
1 <?php
2 header ('Content-type: text/css; charset=utf-8');
4 $platform = @$argv[1] ?: 'Mac';
5 $UI_font = "'Concourse', 'a_Avante', 'GW-Symbols'";
7 $content_width_settings = [
8 'normal' => '900px',
9 'wide' => '1150px',
10 'fluid' => 'calc(100% - 300px)'
13 function fit_content($selector, $property = "width") {
14 foreach (["-moz-fit-content", "fit-content"] as $pvalue) echo
15 "@supports (width: {$pvalue}) {
16 {$selector} {
17 {$property}: {$pvalue};
24 /*************/
25 /* VARIABLES */
26 /*************/
28 :root {
29 --GW-comment-background-color-odd: transparent;
30 --GW-comment-background-color-even: transparent;
31 --GW-comment-background-color-target: transparent;
33 --inverted-display: none;
36 /***************/
37 /* BASE LAYOUT */
38 /***************/
40 html {
41 box-sizing: border-box;
42 font-size: 16px;
44 *, *::before, *::after {
45 box-sizing: inherit;
47 script {
48 display: none !important;
51 /*=------=*/
52 /*= Body =*/
53 /*=------=*/
55 body {
56 padding: 0;
57 margin: 0;
59 body::before {
60 background-color: inherit;
61 position: fixed;
62 width: 100%;
63 height: 100%;
66 body.no-scroll {
67 overflow-y: scroll;
68 position: fixed;
69 width: 100%;
72 /*=----------------------------=*/
73 /*= Immediate children of body =*/
74 /*=----------------------------=*/
76 body > * {
77 max-width: 900px;
80 /* Special styles for special browsers.
81 (This one is a fix for Firefox’s built-in screenshot feature.)
83 body > iframe[id^='firefox-screenshots'] {
84 max-width: unset;
87 #content {
88 margin: 0 auto;
89 padding: 0 30px;
90 position: relative;
91 overflow: visible;
92 display: grid;
93 grid-template-columns: 2fr 1fr 2fr;
95 #content::before {
96 content: "";
97 display: block;
98 position: absolute;
99 top: 0;
100 left: 0;
101 width: 100%;
102 height: 100%;
103 z-index: -1;
104 pointer-events: none;
107 /*=---------=*/
108 /*= Content =*/
109 /*=---------=*/
111 #content > * {
112 grid-column: 1 / span 3;
115 /*=----------------------=*/
116 /*= Floating UI elements =*/
117 /*=----------------------=*/
119 #ui-elements-container {
120 position: fixed;
121 height: 100vh;
122 top: 0;
123 left: 0;
124 right: 0;
125 margin: auto;
126 z-index: 10000;
127 pointer-events: none;
129 #ui-elements-container > * {
130 pointer-events: auto;
133 /*=----------------=*/
134 /*= Images overlay =*/
135 /*=----------------=*/
136 /* (To exclude images in posts from theme tweaks) */
138 #images-overlay {
139 position: absolute;
140 z-index: 1;
141 left: 0;
142 right: 0;
143 margin: auto;
146 /***********/
147 /* NAV BAR */
148 /***********/
150 .nav-bar {
151 margin: 0 -30px;
152 display: flex;
153 order: -11;
154 z-index: 1;
157 /*=---------------=*/
158 /*= Nav bar items =*/
159 /*=---------------=*/
161 .nav-item {
162 flex: 1 1 auto;
164 .nav-item * {
165 text-overflow: ellipsis;
166 white-space: nowrap;
167 overflow: hidden;
169 .nav-inner {
170 padding: 12px 30px;
171 text-align: center;
172 display: block;
173 position: relative;
174 line-height: inherit;
175 width: 100%;
176 background: unset;
178 .nav-bar-top:not(#primary-bar) .nav-inner {
179 padding: 4px 0;
182 #nav-item-sequences .nav-inner::before {
183 font-family: "Font Awesome", "Font Awesome 5 Free";
184 content: "\F5DB";
186 @media only screen and (min-width: 901px) {
187 #nav-item-about .nav-inner {
188 margin-right: 0.5em;
190 #nav-item-sequences .nav-inner::before {
191 font-size: 1rem;
192 display: block;
194 #secondary-bar #nav-item-sequences .nav-inner {
195 font-size: 0;
196 line-height: 1.4;
200 /*=------------=*/
201 /*= Bottom bar =*/
202 /*=------------=*/
204 #bottom-bar {
205 order: 11;
207 h1.listing ~ #bottom-bar {
208 margin-top: 1.25em;
210 #bottom-bar .nav-item {
211 flex: 1 1 0;
214 /*=-----------------=*/
215 /*= Accesskey hints =*/
216 /*=-----------------=*/
218 .nav-inner::after {
219 content: attr(accesskey);
220 display: none;
223 /*=---------------=*/
224 /*= Pagination UI =*/
225 /*=---------------=*/
227 #bottom-bar .nav-item a::before,
228 #top-nav-bar a::before {
229 font-family: "Font Awesome", "Font Awesome 5 Free";
230 font-weight: 900;
231 font-size: 0.8em;
232 position: relative;
233 bottom: 1px;
234 margin-right: 0.5em;
236 #bottom-bar #nav-item-first a::before,
237 #top-nav-bar a.nav-item-first::before {
238 content: "\F33e";
240 #bottom-bar #nav-item-top a::before {
241 content: "\F062";
243 #bottom-bar #nav-item-prev a::before,
244 #top-nav-bar a.nav-item-prev::before {
245 content: "\F060";
247 #bottom-bar #nav-item-next a::before,
248 #top-nav-bar a.nav-item-next::before {
249 content: "\F061";
251 #bottom-bar #nav-item-last a::before,
252 #top-nav-bar a.nav-item-last::before {
253 content: "\F340";
255 #bottom-bar #nav-item-next a::before {
256 margin-left: -2em;
257 margin-right: 0;
258 left: 3.8em;
260 #bottom-bar #nav-item-last a::before {
261 margin-left: -1.8em;
262 margin-right: 0;
263 left: 3.4em;
266 /*= Hover tooltips =*/
268 #top-nav-bar a {
269 position: relative;
271 #top-nav-bar a::after {
272 bottom: calc(100% - 3px);
273 content: attr(data-target-page);
275 #top-nav-bar a::after {
276 display: block;
277 position: absolute;
278 font-size: 0.75rem;
279 width: 100%;
280 line-height: 1;
281 visibility: hidden;
283 #top-nav-bar a:hover::after,
284 #bottom-bar a:hover::after {
285 visibility: visible;
288 /*=-----------------------=*/
289 /*= Decorative bottom bar =*/
290 /*=-----------------------=*/
291 /* (On short pages with no pagination) */
293 #bottom-bar.decorative {
294 position: relative;
296 #bottom-bar.decorative .nav-item {
297 display: none;
300 /*=------------=*/
301 /*= Search tab =*/
302 /*=------------=*/
304 #nav-item-search {
305 flex: 4 1 auto;
307 #nav-item-search form::before {
308 content: "\F002";
309 font-family: "Font Awesome", "Font Awesome 5 Free";
310 font-weight: 900;
311 display: inline-block;
312 vertical-align: top;
313 height: 23px;
314 width: 23px;
316 #nav-item-search input {
317 height: 23px;
318 width: calc(95% - 80px);
319 padding: 1px 4px;
321 #nav-item-search button {
322 height: 21px;
325 /*=-----------=*/
326 /*= Login tab =*/
327 /*=-----------=*/
329 #nav-item-login {
330 position: relative;
331 padding-right: 0.5em;
334 /*******************/
335 /* INBOX INDICATOR */
336 /*******************/
338 #inbox-indicator {
339 position: absolute;
340 top: 1px;
341 right: 0;
342 height: 100%;
343 visibility: hidden;
345 #inbox-indicator::before {
346 content: "\F0E0";
347 font-family: "Font Awesome", "Font Awesome 5 Free";
348 color: #bbb;
349 font-size: 1.1875rem;
350 position: absolute;
351 height: 100%;
352 right: 0;
353 top: 0;
354 padding: 0 0.45em;
355 visibility: visible;
356 font-weight: 900;
358 #inbox-indicator.new-messages::before {
359 color: #f00;
360 text-shadow:
361 0 0 1px #777,
362 0.5px 0.5px 1px #777;
364 a#inbox-indicator:hover::before {
365 color: #fff;
366 text-shadow:
367 0 0 1px #000,
368 0 0 2px #000,
369 0 0 4px #000,
370 0 0 1px #777,
371 0.5px 0.5px 1px #777;
373 a#inbox-indicator.new-messages:hover::before {
374 text-shadow:
375 0 0 1px #f00,
376 0 0 2px #f00,
377 0 0 4px #f00,
378 0 0 1px #777,
379 0.5px 0.5px 1px #777;
382 /****************/
383 /* PAGE TOOLBAR */
384 /****************/
386 .page-toolbar {
387 font-size: 0.9em;
388 line-height: 1.8;
389 text-align: right;
390 margin-right: -20px;
392 #content > .page-toolbar {
393 grid-column: 3;
394 grid-row: span 3;
396 #content.user-page > .page-toolbar {
397 grid-column: 2 / span 2;
398 order: -4;
401 /*=--------------------------=*/
402 /*= Page toolbar items (all) =*/
403 /*=--------------------------=*/
405 .page-toolbar > * {
406 display: inline-block;
407 margin-left: 1.5em;
409 .page-toolbar > form button {
410 padding: 0;
411 text-align: right;
412 white-space: unset;
414 .page-toolbar > form button::before {
415 text-align: center;
417 .page-toolbar .button::before {
418 font-family: "Font Awesome", "Font Awesome 5 Free";
419 font-size: 0.9em;
420 padding-right: 0.3em;
423 /*=-------------------------------=*/
424 /*= Page toolbar items (specific) =*/
425 /*=-------------------------------=*/
427 .new-post::before {
428 content: '\F067';
429 font-weight: 900;
431 .new-private-message::before {
432 content: '\F075';
433 font-weight: 400;
435 .logout-button::before {
436 content: '\F2F5';
437 font-weight: 900;
439 #enable-push-notifications::before {
440 content: '\F0F3';
441 font-weight: 400;
443 .ignore-button::before {
444 content: "\F070";
445 font-weight: 400;
447 .unignore-button::before {
448 content: "\F06E";
449 font-weight: 400;
451 .rss::before {
452 content: url('data:image/svg+xml;base64,<?php echo base64_encode(file_get_contents("assets/rss.svg")) ?>');
453 display: inline-block;
454 width: 1em;
455 padding-right: 0.2em;
456 position: relative;
457 top: 1px;
460 /*********************/
461 /* TOP PAGINATION UI */
462 /*********************/
464 #top-nav-bar {
465 grid-column: 2;
466 margin: 0.25em 0 0 0;
467 padding: 0.75em 0 0 0;
468 text-align: center;
469 font-size: 1.25em;
470 display: flex;
471 justify-content: center;
473 #top-nav-bar a {
474 line-height: 1;
476 #top-nav-bar a.disabled {
477 pointer-events: none;
478 visibility: hidden;
480 #top-nav-bar .page-number {
481 position: relative;
482 display: inline-block;
483 width: 1.5em;
485 #top-nav-bar .page-number-label {
486 position: absolute;
487 font-size: 0.5em;
488 text-transform: uppercase;
489 width: 100%;
490 bottom: 90%;
491 left: 0;
493 #top-nav-bar a::before {
494 margin: 0.5em;
495 display: inline-block;
498 /****************/
499 /* SUBLEVEL NAV */
500 /****************/
502 .sublevel-nav {
503 text-align: center;
504 display: flex;
505 justify-content: center;
506 margin: 1em 0 0 0;
508 #content > .sublevel-nav:not(.sort) {
509 grid-column: 2;
510 align-self: start;
512 .sublevel-nav .sublevel-item {
513 flex: 0 0 6em;
514 padding: 0.125em 0.5em;
515 font-size: 1.125rem;
517 .sublevel-nav .sublevel-item:active {
518 transform: none;
520 .sublevel-nav .sublevel-item.selected {
521 cursor: default;
524 /***********************/
525 /* SORT ORDER SELECTOR */
526 /***********************/
528 .sublevel-nav.sort {
529 position: relative;
530 margin-top: 8px;
531 font-size: 0.75em;
533 #content > .sublevel-nav.sort {
534 grid-column: 3;
535 grid-row: span 2;
536 justify-self: end;
537 align-self: start;
538 flex-flow: column;
540 #content.index-page > .sublevel-nav.sort {
541 grid-column: 1;
542 justify-self: start;
543 flex-flow: row;
546 .sublevel-nav.sort::before {
547 content: "Sort";
548 font-size: 0.75rem;
549 position: absolute;
550 top: 0;
551 left: 0;
552 width: 100%;
554 .sublevel-nav.sort .sublevel-item {
555 line-height: 1;
556 font-size: 0.875rem;
557 flex-basis: unset;
560 /*******************************/
561 /* COMMENTS SORT MODE SELECTOR */
562 /*******************************/
564 .comments > .sublevel-nav.sort {
565 margin: 1em auto 0 auto;
567 <?php fit_content(".comments > .sublevel-nav.sort"); ?>
569 /******************/
570 /* WIDTH SELECTOR */
571 /******************/
573 #width-selector {
574 position: absolute;
575 top: 4px;
576 right: -78px;
578 #width-selector button {
579 width: 22px;
580 height: 22px;
581 padding: 6px;
582 margin: 1px;
583 overflow: hidden;
584 background-repeat: no-repeat;
585 background-size: 100%;
586 background-origin: content-box;
588 #width-selector button,
589 #width-selector button:active,
590 #width-selector button:focus {
591 text-shadow: none;
592 color: transparent;
594 #width-selector button:disabled {
595 cursor: auto;
597 #width-selector button.select-width-normal {
598 background-image: url('data:image/gif;base64,<?php echo base64_encode(file_get_contents("assets/normal.gif")) ?>');
600 #width-selector button.select-width-wide {
601 background-image: url('data:image/gif;base64,<?php echo base64_encode(file_get_contents("assets/wide.gif")) ?>');
603 #width-selector button.select-width-fluid {
604 background-image: url('data:image/gif;base64,<?php echo base64_encode(file_get_contents("assets/fluid.gif")) ?>');
607 /*=----------------=*/
608 /*= Hover tooltips =*/
609 /*=----------------=*/
611 #width-selector button::after {
612 content: attr(data-name);
613 position: absolute;
614 display: block;
615 left: 0;
616 width: 100%;
617 text-align: center;
618 top: 56px;
619 visibility: hidden;
621 #width-selector button.selected::after {
622 content: attr(data-name) " (selected)";
624 #width-selector button:hover:not(:active)::after {
625 visibility: visible;
628 <?php
629 global $content_width_settings;
630 foreach ($content_width_settings as $name => $setting) {
631 echo "head.content-width-{$name} + body > * {\n max-width: {$setting};\n}\n";
635 /******************/
636 /* THEME SELECTOR */
637 /******************/
639 #theme-selector {
640 position: absolute;
641 top: 3px;
642 left: -41px;
643 opacity: 0.4;
644 display: table;
645 max-width: 40px;
647 #theme-selector:hover {
648 opacity: 1.0;
651 /*=----------------------=*/
652 /*= Theme select buttons =*/
653 /*=----------------------=*/
655 .theme-selector button {
656 display: table-cell;
657 width: 26px;
658 height: 26px;
659 padding: 5px;
660 margin: 1px 7px 0 7px;
661 color: transparent;
662 background-size: 16px 16px;
663 background-origin: content-box;
665 .theme-selector button,
666 .theme-selector button:hover,
667 .theme-selector button:active,
668 .theme-selector button:focus {
669 text-shadow: none;
670 color: transparent;
672 .theme-selector button:disabled {
673 cursor: auto;
676 /*=----------------------------=*/
677 /*= Pre-rendered button images =*/
678 /*=----------------------------=*/
679 /* (Each is just a capital letter A through whatever) */
681 .theme-selector button:nth-of-type(1) {
682 background-image: url('data:image/gif;base64,<?php echo base64_encode(file_get_contents("assets/theme_A.gif")) ?>');
684 .theme-selector button:nth-of-type(2) {
685 background-image: url('data:image/gif;base64,<?php echo base64_encode(file_get_contents("assets/theme_B.gif")) ?>');
687 .theme-selector button:nth-of-type(3) {
688 background-image: url('data:image/gif;base64,<?php echo base64_encode(file_get_contents("assets/theme_C.gif")) ?>');
690 .theme-selector button:nth-of-type(4) {
691 background-image: url('data:image/gif;base64,<?php echo base64_encode(file_get_contents("assets/theme_D.gif")) ?>');
693 .theme-selector button:nth-of-type(5) {
694 background-image: url('data:image/gif;base64,<?php echo base64_encode(file_get_contents("assets/theme_E.gif")) ?>');
696 .theme-selector button:nth-of-type(6) {
697 background-image: url('data:image/gif;base64,<?php echo base64_encode(file_get_contents("assets/theme_F.gif")) ?>');
699 .theme-selector button:nth-of-type(7) {
700 background-image: url('data:image/gif;base64,<?php echo base64_encode(file_get_contents("assets/theme_G.gif")) ?>');
702 .theme-selector button:nth-of-type(8) {
703 background-image: url('data:image/gif;base64,<?php echo base64_encode(file_get_contents("assets/theme_H.gif")) ?>');
705 .theme-selector button:nth-of-type(9) {
706 background-image: url('data:image/gif;base64,<?php echo base64_encode(file_get_contents("assets/theme_I.gif")) ?>');
709 /*=------------------------------=*/
710 /*= Theme select button tooltips =*/
711 /*=------------------------------=*/
712 /* (with the name & description of the theme that each button selects) */
714 #theme-selector button {
715 position: relative;
716 z-index: 1;
718 #theme-selector button::before {
719 content: attr(data-theme-name);
720 position: absolute;
721 top: 0;
722 right: 100%;
723 padding: 5px 6px 6px 6px;
724 line-height: 1;
725 width: 6em;
726 text-align: right;
727 z-index: 1;
728 visibility: hidden;
730 #theme-selector:hover button::before {
731 visibility: visible;
733 #theme-selector:hover ~ #theme-tweaker-toggle,
734 #theme-selector:active ~ #theme-tweaker-toggle {
735 z-index: -1;
738 /************************/
739 /* THEME TWEAKER TOGGLE */
740 /************************/
742 #theme-tweaker-toggle {
743 position: absolute;
744 top: 7px;
745 left: -75px;
747 #theme-tweaker-toggle button {
748 font-family: "Font Awesome", "Font Awesome 5 Free";
749 font-weight: 900;
750 font-size: 1.25rem;
751 opacity: 0.4;
752 z-index: 1;
754 #theme-tweaker-toggle button:hover {
755 opacity: 1.0;
758 /*******************/
759 /* QUICKNAV WIDGET */
760 /*******************/
762 #quick-nav-ui {
763 position: absolute;
764 right: -67px;
765 bottom: 20px;
767 #quick-nav-ui a {
768 font-family: "Font Awesome", "Font Awesome 5 Free";
769 font-weight: 900;
770 font-size: 1.5rem;
771 line-height: 1.7;
772 text-align: center;
773 display: block;
774 width: 40px;
775 height: 40px;
776 margin: 10px 0 0 0;
778 #quick-nav-ui a[href='#comments'].no-comments {
779 pointer-events: none;
781 #quick-nav-ui a {
782 visibility: hidden;
784 #content.post-page ~ #ui-elements-container #quick-nav-ui a[href='#comments'] {
785 visibility: visible;
788 /************************/
789 /* NEW COMMENT QUICKNAV */
790 /************************/
792 #new-comment-nav-ui {
793 position: absolute;
794 right: -112px;
795 bottom: 42px;
797 #new-comment-nav-ui > * {
798 display: block;
799 position: relative;
801 #new-comment-nav-ui.no-comments {
802 display: none;
805 /*=--------------------=*/
806 /*= New comments count =*/
807 /*=--------------------=*/
809 #new-comment-nav-ui .new-comments-count {
810 width: 2em;
811 font-size: 1.25rem;
812 line-height: 1.1;
813 text-align: center;
814 left: 1px;
815 cursor: pointer;
817 #new-comment-nav-ui .new-comments-count::selection {
818 background-color: transparent;
820 #new-comment-nav-ui .new-comments-count::after {
821 content: "NEW";
822 display: block;
823 font-size: 0.625rem;
826 /*=-----------------------------------=*/
827 /*= Next/previous new comment buttons =*/
828 /*=-----------------------------------=*/
830 #new-comment-nav-ui .new-comment-sequential-nav-button {
831 font-size: 1.75rem;
832 font-family: "Font Awesome", "Font Awesome 5 Free";
833 font-weight: 900;
834 width: 1.5em;
835 z-index: 5001;
837 #new-comment-nav-ui .new-comment-previous {
838 top: 8px;
840 #new-comment-nav-ui .new-comment-next {
841 bottom: 6px;
843 #new-comment-nav-ui .new-comment-sequential-nav-button:disabled {
844 cursor: auto;
845 pointer-events: none;
848 /*******************/
849 /* HNS DATE PICKER */
850 /*******************/
852 #hns-date-picker {
853 position: absolute;
854 bottom: 72px;
855 right: -253px;
856 opacity: 0.6;
858 #hns-date-picker:hover,
859 #hns-date-picker:focus-within {
860 opacity: 1.0;
862 #hns-date-picker.no-comments {
863 display: none;
866 /*=---------------=*/
867 /*= "Since" label =*/
868 /*=---------------=*/
870 #hns-date-picker span {
871 display: block;
872 font-size: 0.75rem;
873 text-transform: uppercase;
876 /*=--------------------=*/
877 /*= "Since" text field =*/
878 /*=--------------------=*/
880 #hns-date-picker input {
881 margin-top: 1px;
882 padding: 1px 3px;
883 width: 140px;
884 text-align: center;
885 box-shadow: 0 0 0 1px transparent;
888 /************************/
889 /* ANTI-KIBITZER TOGGLE */
890 /************************/
892 #anti-kibitzer-toggle {
893 position: absolute;
894 right: -67px;
895 bottom: 225px;
897 #anti-kibitzer-toggle button {
898 display: block;
899 width: 40px;
900 height: 54px;
901 padding: 0;
903 #anti-kibitzer-toggle button::before,
904 #anti-kibitzer-toggle button::after {
905 font-family: "Font Awesome", "Font Awesome 5 Free";
907 #anti-kibitzer-toggle button::before {
908 content: "\F06E";
909 display: block;
910 font-size: 1.75em;
911 font-weight: 400;
913 #anti-kibitzer-toggle button::after {
914 content: "\F007\2004\F164";
915 font-size: 0.875em;
916 font-weight: 900;
918 #anti-kibitzer-toggle.engaged button::before {
919 content: "\F070";
922 /************************/
923 /* TEXT SIZE ADJUSTMENT */
924 /************************/
926 #text-size-adjustment-ui {
927 position: absolute;
928 top: 30px;
929 right: -78px;
930 opacity: 0.4;
932 #text-size-adjustment-ui:hover {
933 opacity: 1.0;
936 /* This doesn't work in Mozilla browsers, so hide it */
937 @-moz-document url-prefix() {
938 #text-size-adjustment-ui {
939 display: none;
943 /*=---------=*/
944 /*= Buttons =*/
945 /*=---------=*/
947 #text-size-adjustment-ui button {
948 font-weight: 900;
949 font-family: "Font Awesome", "Font Awesome 5 Free";
950 font-size: 0.75rem;
951 width: 24px;
952 height: 24px;
953 padding: 0;
955 #text-size-adjustment-ui button.default {
956 font-family: inherit;
957 font-size: 1.125rem;
958 position: relative;
959 top: 1px;
961 #text-size-adjustment-ui button:disabled {
962 opacity: 0.5;
964 #text-size-adjustment-ui button:disabled:hover {
965 cursor: default;
968 /*=----------------=*/
969 /*= Hover tooltips =*/
970 /*=----------------=*/
972 #text-size-adjustment-ui::after {
973 content: "Adjust text size";
974 position: absolute;
975 display: block;
976 left: 0;
977 width: 100%;
978 text-align: center;
979 top: 32px;
980 visibility: hidden;
981 font-size: 0.9em;
983 #text-size-adjustment-ui:hover::after {
984 visibility: visible;
987 /*******************************/
988 /* COMMENTS VIEW MODE SELECTOR */
989 /*******************************/
991 #comments-view-mode-selector {
992 position: absolute;
993 bottom: 30px;
994 left: -40px;
995 opacity: 0.6;
997 #comments-view-mode-selector:hover {
998 opacity: 1.0;
1001 /*=---------=*/
1002 /*= Buttons =*/
1003 /*=---------=*/
1005 #comments-view-mode-selector a {
1006 display: block;
1007 font-family: "Font Awesome", "Font Awesome 5 Free";
1008 font-size: 1.25rem;
1009 text-align: center;
1010 opacity: 0.4;
1011 padding: 0.25em;
1012 z-index: 1;
1014 #comments-view-mode-selector a.threaded {
1015 transform: scaleY(-1);
1016 font-weight: 900;
1018 #comments-view-mode-selector a.chrono {
1019 font-weight: normal;
1021 #comments-view-mode-selector a.selected,
1022 #comments-view-mode-selector a:hover {
1023 opacity: 1.0;
1024 text-decoration: none;
1026 #comments-view-mode-selector a.selected {
1027 cursor: default;
1030 /*****************/
1031 /* KEYBOARD HELP */
1032 /*****************/
1034 #keyboard-help-overlay {
1035 width: 100vw;
1036 height: 100vh;
1037 background-color: rgba(0,0,0,0.7);
1038 position: fixed;
1039 left: 0;
1040 top: 0;
1041 z-index: 5001;
1043 display: flex;
1044 justify-content: center;
1045 align-items: center;
1046 padding: 20px 30px 30px 20px;
1048 visibility: hidden;
1051 #keyboard-help-overlay .keyboard-help-container {
1052 background-color: #fff;
1053 filter: drop-shadow(4px 4px 2px #000);
1054 flex: 1 1 auto;
1055 max-width: 1500px;
1056 max-height: 100%;
1057 overflow-y: auto;
1058 position: relative;
1060 #keyboard-help-overlay .keyboard-help-container h1 {
1061 text-align: center;
1062 border-bottom: 1px solid #ddd;
1063 margin: 0;
1064 padding: 10px 20px;
1066 #keyboard-help-overlay .keyboard-help-container .note {
1067 margin: 0.5em auto;
1068 padding: 0 1em;
1069 width: fit-content;
1071 #keyboard-help-overlay .keyboard-help-container .keyboard-shortcuts-lists {
1072 column-width: 21em;
1073 column-count: auto;
1074 column-gap: 1.5em;
1075 border-top: 1px solid #ddd;
1076 padding: 15px 20px;
1078 #keyboard-help-overlay .keyboard-help-container ul {
1079 list-style-type: none;
1080 margin: 0;
1081 padding: 0;
1082 break-inside: avoid;
1083 white-space: nowrap;
1085 #keyboard-help-overlay .keyboard-help-container ul:nth-of-type(n+2) {
1086 margin: 20px 0 0 0;
1088 #keyboard-help-overlay .keyboard-help-container ul li.section {
1089 font-weight: bold;
1090 font-size: 1.125rem;
1091 break-after: avoid;
1093 #keyboard-help-overlay .keyboard-help-container .keys {
1094 margin: 0 0.5em 0 0;
1095 min-width: 4.5em;
1096 display: inline-block;
1098 #keyboard-help-overlay .keyboard-help-container .keys code {
1099 margin: 0 6px 0 0;
1101 #keyboard-help-overlay .keyboard-help-container code {
1102 display: inline-block;
1103 background-color: #eee;
1104 border: 1px solid #ccc;
1105 padding: 3px 8px 4px 8px;
1106 margin: 0 1px;
1108 #keyboard-help-overlay .keyboard-help-container code.ak {
1109 background-color: #ffeb83;
1110 border-color: #d4a500;
1112 #keyboard-help-overlay .keyboard-help-container code.ak::before {
1113 content: "ak+";
1114 opacity: 0.3;
1117 #nav-item-about button.open-keyboard-help {
1118 display: none;
1120 @media only screen and (hover:hover) and (pointer:fine) {
1121 #nav-item-about {
1122 position: relative;
1123 padding-right: 0.25em;
1125 #nav-item-about button.open-keyboard-help {
1126 font-family: "Font Awesome", "Font Awesome 5 Free";
1127 font-weight: 900;
1128 position: absolute;
1129 top: 0;
1130 right: 0;
1131 height: 100%;
1132 padding: 8px;
1133 display: initial;
1134 line-height: 1;
1135 background-color: transparent;
1139 #keyboard-help-overlay button.close-keyboard-help {
1140 position: absolute;
1141 right: 0;
1142 top: 0;
1143 font-family: "Font Awesome", "Font Awesome 5 Free";
1144 font-size: 1.5rem;
1145 padding: 10px 12px;
1148 /************/
1149 /* ARCHIVES */
1150 /************/
1152 .archive-nav {
1153 margin: 1.25em 0.5em 0 0.5em;
1154 padding: 0.25em;
1156 .archive-nav > * {
1157 display: flex;
1159 .archive-nav *[class^='archive-nav-item'] {
1160 line-height: 1;
1161 flex: 1 1 5%;
1162 text-align: center;
1163 padding: 6px 4px 4px 4px;
1164 max-width: 8%;
1166 @-moz-document url-prefix() {
1167 .archive-nav *[class^='archive-nav-item'] {
1168 padding: 5px 4px;
1171 .archive-nav-days .archive-nav-item-day {
1172 font-size: 0.8em;
1173 padding: 7px 0 5px 0;
1174 max-width: 4%;
1176 .archive-nav-days .archive-nav-item-day:first-child {
1177 flex-basis: 10%;
1180 /************/
1181 /* ARCHIVES */
1182 /************/
1184 .archive-nav {
1185 margin: 1.25em 0.5em 0 0.5em;
1186 padding: 0.25em;
1188 .archive-nav > * {
1189 display: flex;
1191 .archive-nav *[class^='archive-nav-item'] {
1192 line-height: 1;
1193 flex: 1 1 5%;
1194 text-align: center;
1195 padding: 6px 4px 4px 4px;
1196 max-width: 8%;
1198 @-moz-document url-prefix() {
1199 .archive-nav *[class^='archive-nav-item'] {
1200 padding: 5px 4px;
1203 .archive-nav-days .archive-nav-item-day {
1204 font-size: 0.8em;
1205 padding: 7px 0 5px 0;
1206 max-width: 4%;
1208 .archive-nav-days .archive-nav-item-day:first-child {
1209 flex-basis: 10%;
1212 /************/
1213 /* LISTINGS */
1214 /************/
1216 h1.listing {
1217 font-size: 1.875rem;
1218 line-height: 1.15;
1219 max-height: 1.15em;
1220 position: relative;
1223 h1.listing a {
1224 position: relative;
1227 /* Links to link-posts (not the link-post links themselves; that's below) */
1228 h1.listing .link-post-link + a {
1229 margin-left: 0.25em;
1232 h1.listing .link-post-link {
1233 font-size: 0.8em;
1234 display: inline;
1235 vertical-align: top;
1236 position: relative;
1237 top: 4px;
1240 /*=----------------------=*/
1241 /*= Listing hover reveal =*/
1242 /*=----------------------=*/
1243 /* (On desktops, hover over a multi-line listing to reveal all of it) */
1245 @media only screen and (min-width: 1160px) {
1246 h1.listing a {
1247 max-width: 100%;
1248 display: inline-block;
1249 white-space: nowrap;
1250 text-overflow: ellipsis;
1251 overflow: hidden;
1252 border-bottom: 1px solid transparent;
1253 -webkit-hyphens: auto;
1254 -moz-hyphens: auto;
1255 -ms-hyphens: auto;
1256 hyphens: auto;
1257 z-index: 1;
1258 padding: 0 0 1px 1px;
1260 h1.listing .link-post-link + a {
1261 max-width: calc(100% - 40px);
1263 h1.listing a:hover,
1264 h1.listing a:focus {
1265 text-decoration: dotted underline;
1266 white-space: initial;
1267 overflow: visible;
1268 z-index: 2;
1270 h1.listing:focus-within::before {
1271 content: "\F105";
1272 font-family: "Font Awesome", "Font Awesome 5 Free";
1273 display: block;
1274 position: absolute;
1275 left: -0.75em;
1278 /* Adds hysteresis to the hover area (i.e., prevents oscillation due to small
1279 mouse movements) */
1280 <?php $margin_of_hover_error = '10px'; ?>
1282 h1.listing a:not(.edit-post-link):hover::before {
1283 content: "";
1284 position: absolute;
1285 top: -<?php echo $margin_of_hover_error; ?>;
1286 right: -<?php echo $margin_of_hover_error; ?>;
1287 bottom: -<?php echo $margin_of_hover_error; ?>;
1288 left: -<?php echo $margin_of_hover_error; ?>;
1289 z-index: -1;
1291 h1.listing .link-post-link:hover {
1292 text-decoration: none;
1296 /*=-----------------------=*/
1297 /*= In-listing edit links =*/
1298 /*=-----------------------=*/
1300 h1.listing .edit-post-link {
1301 position: absolute;
1302 margin: 0;
1305 /*=---------------------------------=*/
1306 /*= Error messages on listing pages =*/
1307 /*=---------------------------------=*/
1309 .listing-message {
1310 width: 100%;
1311 text-align: center;
1312 padding: 1.25em 0 1.25em 0;
1313 font-size: 1.375em;
1316 /*********************/
1317 /* LISTING POST-META */
1318 /*********************/
1320 h1.listing + .post-meta {
1321 position: relative;
1322 justify-content: flex-start;
1323 margin: 0 20px 0 21px;
1326 h1.listing + .post-meta > * {
1327 margin: 0 1em 0 0;
1330 h1.listing + .post-meta .post-section {
1331 width: 0;
1332 margin: 0;
1333 overflow: hidden;
1335 h1.listing + .post-meta .post-section::before {
1336 position: absolute;
1337 left: -36px;
1340 h1.listing + .post-meta .read-time {
1341 cursor: default;
1344 /********************/
1345 /* SEQUENCES & TAGS */
1346 /********************/
1348 .sequence-text, .tag-description {
1349 font-size: 1.2rem;
1350 padding: 0 22px;
1353 #content.tag-index-page .tag-description {
1354 margin: 1em 0 0;
1357 section {
1358 max-width: 100%;
1359 margin-top: 2em;
1360 margin-bottom: 4em;
1363 h1.sequence-chapter {
1364 font-size: 2.3rem;
1367 article {
1368 max-width: 100%;
1371 .post-meta + .comments {
1372 margin-top: 3em;
1375 .tag-list {
1376 column-count: auto;
1377 column-width: 15em;
1378 margin-top: 0;
1379 border-bottom: 1px solid #999;
1380 padding-bottom: 1em;
1381 margin-bottom: 0;
1384 #content.sequence-page h1 {
1385 margin-top: 0.1em;
1388 /**************/
1389 /* USER PAGES */
1390 /**************/
1392 /*=---------------------=*/
1393 /*= User's display name =*/
1394 /*=---------------------=*/
1396 #content.user-page h1.page-main-heading {
1397 margin: 0.25em 0 0 0;
1398 line-height: 1.1;
1399 grid-column: 1 / span 2;
1400 order: -2;
1403 #content.user-page h1.page-main-heading .user-full-name {
1404 font-size: 1rem;
1405 font-weight: normal;
1406 padding-left: 0.5em;
1409 /*=--------------------=*/
1410 /*= User's karma total =*/
1411 /*=--------------------=*/
1413 #content.user-page .user-stats {
1414 grid-column: 3;
1415 order: -2;
1416 text-align: right;
1417 align-self: end;
1420 #content.user-page .user-stats .karma-type {
1421 white-space: nowrap;
1424 /*=----------------------=*/
1425 /*= Expanded vs. compact =*/
1426 /*=----------------------=*/
1428 #content.user-page #comments-list-mode-selector {
1429 grid-row: span 2;
1431 #content.user-page #comments-list-mode-selector button {
1432 display: block;
1435 /*=----------------------------------------------------=*/
1436 /*= All, Posts, Comments, Drafts, Conversations, Inbox =*/
1437 /*=----------------------------------------------------=*/
1439 #content.user-page .sublevel-nav {
1440 margin-bottom: 0.5em;
1443 /*=--------------=*/
1444 /*= User's posts =*/
1445 /*=--------------=*/
1447 #content.user-page h1.listing {
1448 margin: 0.5em 0 0 0;
1451 #content.user-page .user-bio :first-child {
1452 margin-top: 0.5em;
1455 /*****************/
1456 /* CONVERSATIONS */
1457 /*****************/
1459 /*=----------------------=*/
1460 /*= List of participants =*/
1461 /*=----------------------=*/
1463 #content.conversation-page .conversation-participants {
1464 grid-column: 2 / span 2;
1465 text-align: right;
1466 margin: 0.5em 0 0 0;
1468 .post-meta > .conversation-participants {
1469 white-space: normal;
1471 .conversation-participants ul,
1472 .conversation-participants li {
1473 list-style-type: none;
1474 display: inline-block;
1475 margin: 0;
1476 padding: 0;
1478 .conversation-participants li {
1479 margin-left: 0.375em;
1481 .conversation-participants li:not(:last-of-type)::after {
1482 content: ",";
1485 /*=-------------------------=*/
1486 /*= Posting controls (form) =*/
1487 /*=-------------------------=*/
1489 #content.conversation-page .posting-controls {
1490 padding: 0 0 1em 0;
1492 #content.conversation-page .post-meta-fields {
1493 overflow: auto;
1494 display: flex;
1495 flex-flow: row wrap;
1497 .posting-controls.standalone textarea {
1498 margin-top: 0.375em;
1500 .posting-controls.standalone form {
1501 padding: 0 1em;
1503 #content.conversation-page .posting-controls.standalone form {
1504 padding: 0 1em 3em 1em;
1506 .posting-controls.standalone input[type='text'],
1507 .posting-controls.standalone label {
1508 margin: 0.25em 0;
1510 .posting-controls.standalone label {
1511 width: 4em;
1512 text-align: right;
1513 padding: 2px 6px;
1514 border: 1px solid transparent;
1516 .posting-controls.standalone input[type='text'] {
1517 width: calc(100% - 4em);
1518 padding: 0.25em;
1520 .posting-controls.standalone input[type='submit'] {
1521 float: right;
1523 .posting-controls.standalone #markdown-hints-checkbox ~ label {
1524 white-space: nowrap;
1526 .posting-controls.standalone #markdown-hints {
1527 top: calc(100% + 2em);
1530 /*=--------------------=*/
1531 /*= Conversation title =*/
1532 /*=--------------------=*/
1534 #content.conversation-page h1.page-main-heading {
1535 text-align: center;
1536 margin: 0.5em 0;
1537 line-height: 1.15;
1540 /*=----------=*/
1541 /*= Messages =*/
1542 /*=----------=*/
1544 #content.conversation-page > ul.comment-thread:last-of-type {
1545 margin-bottom: 2em;
1548 /******************/
1549 /* SEARCH RESULTS */
1550 /******************/
1552 #content.search-results-page h1.listing,
1553 #content.sequence-page h1.listing,
1554 #content.post-page h1.listing {
1555 font-size: 1.625em;
1558 /**************/
1559 /* LOGIN PAGE */
1560 /**************/
1562 .login-container {
1563 margin: 2em 0;
1564 padding: 1em;
1565 display: flex;
1566 flex-flow: row wrap;
1569 .login-container form {
1570 flex-basis: 50%;
1571 display: grid;
1572 grid-row-gap: 0.5em;
1573 align-content: start;
1575 .login-container form label {
1576 text-align: right;
1577 padding: 0.25em 0.5em;
1578 white-space: nowrap;
1579 grid-column: 1;
1581 .login-container form input {
1582 grid-column: 2;
1583 padding: 0.25em;
1585 .login-container form input[type='submit'],
1586 .login-container form a {
1587 grid-column: 2;
1588 justify-self: center;
1590 .login-container form input[type='submit'] {
1591 width: 10em;
1592 padding: 0.35em;
1593 line-height: 1;
1594 margin: 0.5em 0 0 0;
1596 .login-container form h1 {
1597 text-align: center;
1598 margin: 0;
1599 grid-column: 2;
1602 /* “Log in” form */
1604 #login-form {
1605 grid-template-columns: 5.5em 1fr;
1606 padding: 0.5em 2em 0.5em 0;
1609 /* “Create account” form */
1611 #signup-form {
1612 font-size: 0.9em;
1613 grid-template-columns: 8.5em 1fr;
1614 padding: 0.5em 1em 1em 1em;
1616 #signup-form h1 {
1617 font-size: 1.7em;
1619 #signup-form input[type='submit'] {
1620 padding: 0.4em 0.5em 0.5em 0.5em;
1623 /* Log in tip */
1625 .login-container .login-tip {
1626 padding: 0.5em 0.5em 0.5em 3em;
1627 margin: 2em 4em 0 4em;
1628 text-indent: -2em;
1629 line-height: 1.4;
1631 .login-container .login-tip span {
1632 font-weight: bold;
1635 /* Message box */
1637 #content.login-page .error-box {
1638 margin: 1.5em 0.875em -1.5em 0.875em;
1640 .error-box, .success-box {
1641 padding: 0.25em;
1642 text-align: center;
1645 /***********************/
1646 /* PASSWORD RESET PAGE */
1647 /***********************/
1649 .reset-password-container {
1650 margin-bottom: 2em;
1652 .reset-password-container input[type='submit'] {
1653 padding: 0.2em 0.5em;
1654 width: unset;
1656 .reset-password-container input {
1657 margin-left: 0.5em;
1658 width: 12em;
1660 .reset-password-container label {
1661 display: inline-block;
1662 width: 9em;
1664 .reset-password-container form > div {
1665 margin: 0.2em;
1667 .reset-password-container .action-container {
1668 padding-left: 11em;
1669 padding-top: 0.2em;
1671 .reset-password-container .error-box {
1672 margin: unset;
1675 /*********************/
1676 /* TABLE OF CONTENTS */
1677 /*********************/
1679 .contents {
1680 float: right;
1681 min-width: 6em;
1682 max-width: 40%;
1683 margin: 1.25em 0 0.75em 1.25em;
1684 padding: 7px 14px 10px 10px;
1685 position: relative;
1686 z-index: 1;
1689 .collection-page .contents {
1690 margin-top: 0;
1693 .contents-head {
1694 text-align: center;
1695 margin-bottom: 0.25em;
1698 .body-text .contents ul {
1699 list-style-type: none;
1700 margin: 0 0 0 0.5em;
1701 counter-reset: toc-item-1 toc-item-2 toc-item-3;
1702 padding-left: 1em;
1703 font-size: 0.75em;
1705 .body-text .contents li {
1706 margin: 0.15em 0 0.3em 1em;
1707 text-align: left;
1708 text-indent: -1em;
1709 line-height: 1.2;
1710 position: relative;
1712 .body-text .contents li::before {
1713 position: absolute;
1714 width: 3em;
1715 display: block;
1716 text-align: right;
1717 left: -4.5em;
1719 .contents .toc-item-1 {
1720 counter-increment: toc-item-1;
1721 counter-reset: toc-item-2 toc-item-3;
1723 .contents .toc-item-1::before {
1724 content: counter(toc-item-1);
1726 .contents .toc-item-1 ~ .toc-item-2 {
1727 margin-left: 2.9em;
1728 font-size: 0.95em;
1730 .contents .toc-item-2 {
1731 counter-increment: toc-item-2;
1732 counter-reset: toc-item-3;
1734 .contents .toc-item-1 ~ .toc-item-2::before {
1735 content: counter(toc-item-1) "." counter(toc-item-2);
1737 .contents .toc-item-2::before {
1738 content: counter(toc-item-2);
1740 .contents .toc-item-1 + .toc-item-3 {
1741 counter-increment: toc-item-2 toc-item-3;
1743 .contents .toc-item-2 ~ .toc-item-3,
1744 .contents .toc-item-1 ~ .toc-item-3 {
1745 margin-left: 2.9em;
1746 font-size: 0.95em;
1748 .contents .toc-item-1 ~ .toc-item-2 ~ .toc-item-3 {
1749 margin-left: 5.7em;
1750 font-size: 0.9em;
1752 .contents .toc-item-3 {
1753 counter-increment: toc-item-3;
1755 .contents .toc-item-1 ~ .toc-item-2 ~ .toc-item-3::before {
1756 content: counter(toc-item-1) "." counter(toc-item-2) "." counter(toc-item-3);
1758 .contents .toc-item-1 ~ .toc-item-3::before {
1759 content: counter(toc-item-1) "." counter(toc-item-3);
1761 .contents .toc-item-2 ~ .toc-item-3::before {
1762 content: counter(toc-item-2) "." counter(toc-item-3);
1764 .contents .toc-item-3::before {
1765 content: counter(toc-item-3);
1767 .contents .toc-item-4,
1768 .contents .toc-item-5,
1769 .contents .toc-item-6 {
1770 display: none;
1773 /********************/
1774 /* POSTS & COMMENTS */
1775 /********************/
1777 .post-meta > *,
1778 .comment-meta > * {
1779 display: inline-block;
1780 margin-right: 1em;
1781 font-size: 1.0625em;
1783 .body-text {
1784 overflow-wrap: break-word;
1785 text-align: justify;
1787 .body-text p {
1788 margin: 1em 0;
1790 .retracted .body-text {
1791 text-decoration: line-through;
1794 .bare-url {
1795 word-break: break-all;
1796 hyphens: auto;
1798 .body-text a:not([href]),
1799 .body-text a:not([href]):hover,
1800 .body-text a:not([href])::before,
1801 .body-text a:not([href])::after {
1802 text-decoration: none;
1803 text-shadow: unset;
1804 border: unset;
1805 color: unset;
1806 content: unset;
1808 /*************/
1809 /* POST-META */
1810 /*************/
1812 .post-meta {
1813 display: flex;
1814 flex-flow: row wrap;
1815 justify-content: center;
1817 .post-meta .lw2-link {
1818 opacity: 0.5;
1819 order: 1;
1821 .post-meta > *,
1822 .post-meta .post-section::before {
1823 margin: 0 0.5em;
1825 .post-meta .post-section {
1826 order: -1;
1827 margin: 0;
1828 visibility: hidden;
1830 .post-meta .post-section::before,
1831 .comment-meta .alignment-forum {
1832 visibility: visible;
1833 font-family: "Font Awesome", "Font Awesome 5 Free";
1834 font-weight: 900;
1836 .post-section.frontpage::before {
1837 content: "\F015";
1839 .post-section.featured::before {
1840 content: "\F005";
1842 .post-section.meta::before {
1843 content: "\F077";
1845 .post-section.events::before {
1846 content: "\F5A0";
1848 .post-section.personal::before {
1849 content: "\F007";
1851 .post-section.draft::before {
1852 content: "\F15B";
1854 .post-section.alignment-forum::before,
1855 .comment-meta .alignment-forum {
1856 content: "AF";
1857 font-family: Concourse, 'Changa One';
1860 /*= Karma controls hover tooltips =*/
1862 @media only screen and (pointer: fine) {
1863 .post .voting-controls,
1864 .comment-item .voting-controls {
1865 position: relative;
1867 .post .karma.active-controls::after,
1868 .comment-item .karma.active-controls::after {
1869 content: "Double-click for strong vote";
1870 position: absolute;
1871 pointer-events: none;
1872 display: block;
1873 left: 6px;
1874 width: 100%;
1875 line-height: 1.15;
1876 white-space: normal;
1877 text-align: center;
1878 font-size: 0.875rem;
1879 opacity: 0;
1880 transition: opacity 0.2s ease;
1882 .post .voting-controls.active-controls:hover::after,
1883 .comment-item .voting-controls.active-controls:hover::after {
1884 opacity: 1.0;
1887 .post .voting-controls .karma-value::after,
1888 .comment-item .voting-controls .karma-value::after {
1889 content: attr(title);
1890 position: absolute;
1891 pointer-events: none;
1892 display: block;
1893 left: 50%;
1894 transform: translateX(-50%);
1895 white-space: pre-wrap;
1896 width: max-content;
1897 text-align: center;
1898 font-size: 0.875rem;
1899 color: #bbb;
1900 opacity: 0;
1901 transition: opacity 0.2s ease;
1903 .post .voting-controls.agreement .karma-value:hover::after,
1904 .comment-item .voting-controls.agreement .karma-value:hover::after {
1905 top: unset;
1906 bottom: 100%;
1908 .post .voting-controls .karma-value:hover::after,
1909 .comment-item .voting-controls .karma-value:hover::after {
1910 opacity: 1.0;
1912 .post .voting-controls.waiting .karma-value:hover::after,
1913 .comment-item .voting-controls.waiting .karma-value:hover::after {
1914 display: none;
1916 .comment-item .voting-controls .karma-value:hover::after {
1917 z-index: 5001;
1920 .author {
1921 position: relative;
1923 .author:not(.redacted)::before {
1924 content: attr(data-full-name);
1925 position: absolute;
1926 pointer-events: none;
1927 display: block;
1928 padding: 0 1em;
1929 left: 50%;
1930 bottom: 2em;
1931 transform: translateX(-50%);
1932 white-space: nowrap;
1933 text-align: center;
1934 font-size: 0.875rem;
1935 font-weight: normal;
1936 opacity: 0;
1937 transition: opacity 0.2s ease;
1938 z-index: 5001;
1940 .author:hover::before {
1941 opacity: 1.0;
1945 /*********/
1946 /* POSTS */
1947 /*********/
1949 .post {
1950 max-width: 100%;
1953 .post-body {
1954 min-height: 8em;
1955 padding: 0 30px;
1956 line-height: 1.5;
1957 font-size: 1.3rem;
1958 overflow: auto;
1959 margin: 0.5em 0 0 0;
1961 h1.post-title {
1962 margin: 1.1em 0 0.35em 0;
1963 padding: 0 30px;
1964 text-align: center;
1965 font-size: 2.5em;
1966 line-height: 1;
1968 .post .post-meta {
1969 text-align: center;
1970 position: relative;
1971 z-index: 2;
1973 .post .top-post-meta:last-child {
1974 margin-bottom: 40px;
1976 .post .bottom-post-meta {
1977 margin: 0;
1978 padding: 20px 0;
1980 .bottom-post-meta {
1981 border-style: solid;
1982 border-width: 1px 0;
1985 /**********/
1986 /* EVENTS */
1987 /**********/
1989 .event-info .map {
1990 position: relative;
1991 width: 100%;
1992 margin: 2em 0 1em;
1995 .event-info .map::before {
1996 content: "";
1997 display: block;
1998 padding-bottom: 50%;
2001 .event-info .map iframe {
2002 width: 100%;
2003 height: 100%;
2004 border: 1px solid #000;
2005 position: absolute;
2006 top: 0;
2007 left: 0;
2010 .event-info ul {
2011 list-style: none;
2012 padding: 0;
2013 text-align: center;
2016 /*******************/
2017 /* POST NAVIGATION */
2018 /*******************/
2020 .post-nav-item {
2021 display: grid;
2022 grid-template: 100% / 32% 36% 32%;
2023 grid-template-areas:
2024 "prev seq next";
2026 .post-nav {
2027 display: flex;
2028 flex-flow: column;
2029 justify-content: flex-end;
2030 padding: 0.5em;
2033 .post-nav-title {
2034 font-size: 1.125em;
2035 line-height: 1.15;
2036 display: inline;
2037 border-top: 1px solid transparent;
2039 .post-nav.prev .post-nav-title,
2040 .post-nav.next .post-nav-title {
2041 border-bottom: 1px solid transparent;
2044 .sequence-title {
2045 align-items: center;
2046 text-align: center;
2047 grid-area: seq;
2049 .sequence-title .post-nav-title {
2050 font-size: 1.5em;
2053 .post-nav.prev {
2054 grid-area: prev;
2055 align-items: flex-start;
2057 .post-nav.prev .post-nav-title::before {
2058 content: "\F0D9\2005";
2060 .post-nav.next {
2061 grid-area: next;
2062 text-align: right;
2063 align-items: flex-end;
2065 .post-nav.prev .post-nav-label,
2066 .post-nav.next .post-nav-label {
2067 display: none;
2069 .post-nav.next .post-nav-title::after {
2070 content: "\2004\F0DA";
2072 .post-nav.prev .post-nav-title::before,
2073 .post-nav.next .post-nav-title::after {
2074 font-family: Font Awesome;
2075 font-weight: 900;
2076 vertical-align: text-bottom;
2077 opacity: 0.75;
2079 .post-nav-links {
2080 max-width: 100%;
2083 @media only screen and (max-width: 900px) {
2084 .post-nav-item {
2085 font-size: 0.875em;
2086 grid-template: auto auto / 50% 50%;
2087 grid-template-areas:
2088 "prev next"
2089 "seq seq";
2091 .post-nav.prev .post-nav-title,
2092 .post-nav.next .post-nav-title {
2093 border-bottom: none;
2095 .post-nav.prev {
2096 margin: 0 0 0 -1px;
2097 position: relative;
2098 left: 1px;
2100 .sequence-title {
2101 padding: 0.75em 0;
2104 @media only screen and (max-width: 520px) {
2105 .post-nav-links + .comments {
2106 padding: 1em 0 0 0;
2110 .related-posts, .related-post-group {
2111 padding-bottom: 1em;
2113 .related-post-type {
2114 font-size: 1.2em;
2115 font-weight: 600;
2116 margin-top: 0.5em;
2117 margin-bottom: -0.5em;
2118 list-style-type: disc;
2119 margin-left: -0.5em;
2120 opacity: 0.7;
2122 .related-post-type::before {
2123 content: "\269c";
2124 font-size: 1.375em;
2125 font-weight: normal;
2126 margin-right: 0.15em;
2127 position: relative;
2128 vertical-align: baseline;
2129 top: 0.05em;
2131 .related-posts .post-type-prefix {
2132 display: none;
2135 .crosspost {
2136 padding: 0.1em 1em;
2137 margin: 1em auto;
2140 /**************/
2141 /* LINK POSTS */
2142 /**************/
2144 .post.link-post > .post-body > p:first-child {
2145 text-align: center;
2146 font-size: 1.125em;
2147 margin: 0.5em 0 0 0;
2149 .post.link-post > .post-body > p:only-child {
2150 font-size: 1.5em;
2151 margin: 1em 0;
2153 .post.link-post a.link-post-link::before {
2154 content: "\F0C1";
2155 font-family: "Font Awesome", "Font Awesome 5 Free";
2156 font-weight: 900;
2157 font-size: 0.75em;
2158 position: relative;
2159 top: -2px;
2160 margin-right: 0.25em;
2163 /************/
2164 /* COMMENTS */
2165 /************/
2167 .comments {
2168 max-width: 100%;
2169 padding: 0 0 1px 0;
2170 position: relative;
2172 .comments::before {
2173 content: "";
2174 position: absolute;
2175 display: block;
2176 top: 0;
2177 left: 0;
2178 width: 100%;
2179 height: 100%;
2180 pointer-events: none;
2182 ul.comment-thread {
2183 list-style-type: none;
2184 padding: 0;
2185 max-width: 100%;
2187 .comments .comment-thread > li {
2188 position: relative;
2190 #content > #top-nav-bar + .comment-thread .comment-item {
2191 margin-top: 0;
2194 .comment-item {
2195 margin: 2em 0 0 0;
2197 .comment-item .comment-item {
2198 margin: 1em 8px 8px 16px;
2200 .comment-item .comment-item + .comment-item {
2201 margin: 2em 8px 8px 16px;
2204 .comment-body {
2205 line-height: 1.45;
2206 font-size: 1.2rem;
2207 padding: 10px;
2209 .comment-body ul {
2210 list-style-type: circle;
2212 .comment-body > *:first-child {
2213 margin-top: 0;
2215 .comment-body > *:last-child {
2216 margin-bottom: 0;
2219 .comments-empty-message {
2220 width: 100%;
2221 text-align: center;
2222 padding: 0.75em 0 0.9em 0;
2223 font-size: 1.375em;
2226 /**********************************/
2227 /* DEEP COMMENT THREAD COLLAPSING */
2228 /**********************************/
2230 .comment-item > input[id^="expand"] {
2231 display: none;
2233 .comment-item > input[id^="expand"] + label {
2234 display: block;
2235 visibility: hidden;
2236 position: relative;
2237 margin: 8px 9px;
2239 .comment-item > input[id^="expand"] + label::after {
2240 content: "(Expand " attr(data-child-count) " below)";
2241 visibility: visible;
2242 position: absolute;
2243 left: 0;
2244 white-space: nowrap;
2245 cursor: pointer;
2247 .comment-item > input[id^="expand"]:checked + label::after {
2248 content: "(Collapse " attr(data-child-count) " below)";
2250 .comment-item > input[id^="expand"] ~ .comment-thread {
2251 max-height: 34px;
2252 overflow: hidden;
2254 .comment-item > input[id^="expand"] ~ .comment-thread > li:first-child {
2255 margin-top: 0;
2257 .comment-item > input[id^="expand"]:checked ~ .comment-thread {
2258 max-height: 1000000px;
2261 .comment-item > input[id^="expand"]:checked ~ .comment-thread .comment-thread .comment-item {
2262 margin: 0;
2264 .comment-item > input[id^="expand"]:checked ~ .comment-thread .comment-thread .comment-item a.comment-parent-link:hover::after {
2265 display: none;
2268 /*************/
2269 /* BACKLINKS */
2270 /*************/
2272 .backlinks > input {
2273 display: none;
2276 .backlinks > label {
2277 margin-left: 10px;
2278 display: block;
2279 color: #00f;
2280 cursor: pointer;
2283 .backlinks > label::before {
2284 content: " ";
2285 border-left: 5px solid currentColor;
2286 border-top: 5px solid transparent;
2287 border-bottom: 5px solid transparent;
2288 transition: transform 0.25s ease-out;
2289 transform-origin: 29% 55%;
2290 display: inline-block;
2291 padding-right: 0.5em;
2294 .backlinks > input:checked + label::before {
2295 transform: rotate(90deg);
2298 .backlinks li {
2299 margin-top: 0;
2302 .backlinks > ul {
2303 height: 0;
2304 perspective-origin: top;
2305 transform: perspective(100em) rotateX(-90deg);
2306 transform-origin: center top;
2307 opacity: 0;
2308 margin-top: 0.5em;
2309 margin-bottom: 0.5em;
2312 .backlinks > input:checked ~ ul {
2313 height: auto;
2314 transform: perspective(100em) rotateX(0deg);
2315 transition: transform 0.25s ease-in, opacity 0.25s ease-in;
2316 opacity: 1;
2319 /****************/
2320 /* COMMENT-META */
2321 /****************/
2323 .comment-meta {
2324 padding: 2px 24px 2px 10px;
2325 margin: 0 -1px;
2326 border: none;
2327 display: flex;
2328 flex-flow: row wrap;
2329 align-items: baseline;
2331 .user-page .comment-meta,
2332 .conversation-page .comment-meta {
2333 padding-right: 10px;
2335 .comment-meta .comment-post-title {
2336 flex-basis: 100%;
2337 overflow: hidden;
2338 text-overflow: ellipsis;
2339 white-space: nowrap;
2340 line-height: 1.3;
2342 .conversation-page .comment-meta .comment-post-title {
2343 margin: 0;
2344 flex-basis: unset;
2345 flex: 1 0 auto;
2346 text-align: right;
2347 display: none; /* Not sure if we need to display this... */
2349 .comment-item .author:not(.redacted).original-poster::after {
2350 content: "\2004(OP)";
2351 font-size: 0.75em;
2354 /*****************************/
2355 /* COMMENT THREAD NAVIGATION */
2356 /*****************************/
2358 a.comment-parent-link:not(.inline-author),
2359 a.comment-parent-link.inline-author::before {
2360 opacity: 0.5;
2362 a.comment-parent-link:hover {
2363 opacity: 1.0;
2365 a.comment-parent-link::before {
2366 content: "\F062";
2367 font-family: "Font Awesome", "Font Awesome 5 Free";
2368 font-weight: 900;
2369 font-size: 0.75rem;
2370 line-height: 1;
2371 position: absolute;
2372 z-index: 1;
2373 display: block;
2374 padding: 3px 3px 0 3px;
2375 width: 16px;
2376 height: calc(100% + 2px);
2377 top: -1px;
2378 left: -17px;
2380 a.comment-parent-link::after {
2381 content: "";
2382 position: absolute;
2383 z-index: 0;
2384 display: block;
2385 width: calc(100% + 26px);
2386 height: calc(100% + 38px);
2387 top: -29px;
2388 left: -17px;
2389 pointer-events: none;
2390 overflow: hidden;
2391 visibility: hidden;
2393 a.comment-parent-link:hover::after {
2394 visibility: visible;
2397 .comment-child-links {
2398 flex-basis: 100%;
2400 .comment-child-link {
2401 margin: 0 0.25em;
2402 display: inline-block;
2404 .comment-child-link::before {
2405 content: ">";
2406 display: inline-block;
2407 margin: 0 2px 0 0;
2410 .comment-popup {
2411 position: fixed;
2412 top: 10%;
2413 right: 10%;
2414 max-width: 700px;
2415 z-index: 10001;
2416 font-size: 1rem;
2417 white-space: unset;
2418 pointer-events: none;
2420 .comment-popup .comment-parent-link {
2421 display: none;
2423 .comment-popup .comment-body {
2424 font-size: 1.0625rem;
2427 .comment-item.depth-odd {
2428 --GW-comment-background-color: var(--GW-comment-background-color-odd);
2429 --GW-comment-parent-background-color: var(--GW-comment-background-color-even);
2431 .comment-item.depth-even {
2432 --GW-comment-background-color: var(--GW-comment-background-color-even);
2433 --GW-comment-parent-background-color: var(--GW-comment-background-color-odd);
2436 .comment-item:target {
2437 --GW-comment-background-color: var(--GW-comment-background-color-target);
2439 .comment-item:target > .comment-thread > .comment-item {
2440 --GW-comment-parent-background-color: var(--GW-comment-background-color-target);
2443 /**********************/
2444 /* COMMENT PERMALINKS */
2445 /**********************/
2446 /********************/
2447 /* COMMENT LW LINKS */
2448 /********************/
2450 .comment-meta .permalink::before,
2451 .comment-meta .lw2-link::before,
2452 .individual-thread-page a.comment-parent-link:empty::before {
2453 content: "";
2454 display: inline-block;
2455 width: 1rem;
2456 height: 1rem;
2457 border-radius: 3px;
2458 box-shadow:
2459 0 0 0 1px #fff,
2460 0 0 0 2px #00e,
2461 0 0 0 3px transparent;
2462 padding: 0 0 0 2px;
2463 background-size: 100%;
2464 position: relative;
2465 top: 2px;
2466 opacity: 0.5;
2468 .comment-meta .permalink::before {
2469 background-image: url('data:image/gif;base64,<?php echo base64_encode(file_get_contents("assets/anchor-white-on-blue.gif")) ?>');
2471 .comment-meta .lw2-link::before {
2472 background-image: url('data:image/gif;base64,<?php echo base64_encode(file_get_contents("assets/lw-white-on-blue.gif")) ?>');
2474 .individual-thread-page a.comment-parent-link:empty::before {
2475 left: unset;
2476 background-image: url('data:image/gif;base64,<?php echo base64_encode(file_get_contents("assets/up-arrow-white-on-blue.gif")) ?>');
2478 .comment-meta .permalink:hover::before {
2479 background-image: url('data:image/gif;base64,<?php echo base64_encode(file_get_contents("assets/anchor-blue-on-white.gif")) ?>');
2481 .comment-meta .lw2-link:hover::before {
2482 background-image: url('data:image/gif;base64,<?php echo base64_encode(file_get_contents("assets/lw-blue-on-white.gif")) ?>');
2484 .individual-thread-page a.comment-parent-link:empty:hover::before {
2485 background-image: url('data:image/gif;base64,<?php echo base64_encode(file_get_contents("assets/up-arrow-blue-on-white.gif")) ?>');
2487 .comment-meta .permalink:hover::before,
2488 .comment-meta .lw2-link:hover::before,
2489 .individual-thread-page a.comment-parent-link:empty:hover::before {
2490 box-shadow:
2491 0 0 0 2px #00e,
2492 0 0 0 3px transparent;
2493 opacity: 1.0;
2494 filter: unset;
2496 .comment-meta .permalink:active::before,
2497 .comment-meta .lw2-link:active::before,
2498 .individual-thread-page a.comment-parent-link:empty:active::before {
2499 transform: scale(0.9);
2502 .comment-meta .permalink,
2503 .comment-meta .lw2-link,
2504 .individual-thread-page .comment-parent-link:empty {
2505 position: relative;
2506 opacity: 1.0;
2508 .comment-meta .permalink::after,
2509 .comment-meta .lw2-link::after,
2510 .individual-thread-page .comment-parent-link:empty::after {
2511 content: "";
2512 width: 30px;
2513 height: 30px;
2514 display: block;
2515 position: absolute;
2516 top: -2px;
2517 left: -7px;
2518 box-shadow: none;
2519 pointer-events: auto;
2520 visibility: visible;
2523 /*************************/
2524 /* COMMENTS COMPACT VIEW */
2525 /*************************/
2527 #comments-list-mode-selector,
2528 #content.index-page #comments-list-mode-selector,
2529 #content.user-page #comments-list-mode-selector {
2530 padding-top: 6px;
2531 grid-column: 1;
2532 position: unset;
2533 z-index: 1;
2534 justify-self: start;
2535 align-self: start;
2537 #comments-list-mode-selector button {
2538 color: transparent;
2539 width: 32px;
2540 height: 32px;
2541 padding: 6px;
2542 margin: 1px;
2543 overflow: hidden;
2544 background-repeat: no-repeat;
2545 background-size: 100%;
2546 background-origin: content-box;
2548 #comments-list-mode-selector button:disabled {
2549 cursor: auto;
2551 #comments-list-mode-selector button.expanded {
2552 background-image: url('data:image/gif;base64,<?php echo base64_encode(file_get_contents("assets/expanded_2x.gif")) ?>');
2554 #comments-list-mode-selector button.compact {
2555 background-image: url('data:image/gif;base64,<?php echo base64_encode(file_get_contents("assets/compact_2x.gif")) ?>');
2557 @media only screen and (max-resolution: 1dppx) {
2558 #comments-list-mode-selector button.expanded {
2559 background-image: url('data:image/gif;base64,<?php echo base64_encode(file_get_contents("assets/expanded_1x.gif")) ?>');
2561 #comments-list-mode-selector button.compact {
2562 background-image: url('data:image/gif;base64,<?php echo base64_encode(file_get_contents("assets/compact_1x.gif")) ?>');
2566 #content > ul.comment-thread > li.comment-item,
2567 #content.compact > ul.comment-thread > li.comment-item {
2568 margin: 0;
2571 #content > .comment-thread {
2572 margin: 1em 0;
2574 #content.compact > .comment-thread {
2575 font-size: 0.9375rem;
2576 margin: 0.5em 0;
2578 #content.compact > .comment-thread:hover {
2579 z-index: 1;
2581 #content.compact > .comment-thread .comment-body {
2582 font-size: 1.0625rem;
2584 #content.compact > .comment-thread .comment-item,
2585 #content.index-page .comment-item.ignored,
2586 #content.inbox-user-page .comment-item.ignored {
2587 max-height: 61px;
2588 margin-top: 1em;
2589 overflow: hidden;
2590 position: relative;
2592 #content.compact > .comment-thread .comment-item {
2593 pointer-events: none;
2595 #content.compact > .comment-thread .comment-item::after {
2596 content: "…";
2597 position: absolute;
2598 right: 0;
2599 bottom: 0;
2600 font-size: 2rem;
2601 line-height: 1;
2602 padding: 0 16px 10px 64px;
2603 pointer-events: auto;
2605 @media only screen and (hover: hover) {
2606 #content.compact:not(:focus-within) > .comment-thread .comment-item:hover,
2607 #content.compact > .comment-thread .comment-item.expanded {
2608 overflow: visible;
2609 pointer-events: auto;
2610 z-index: 10;
2613 @media only screen and (hover: none) {
2614 #content.compact > .comment-thread.expanded .comment-item {
2615 overflow: visible;
2616 pointer-events: auto;
2617 z-index: 10;
2620 #content.compact > .comment-thread .comment-item .comment-meta {
2621 white-space: nowrap;
2622 overflow: hidden;
2623 text-overflow: ellipsis;
2624 padding: 2px 10px;
2626 #content.compact > .comment-thread .comment-item:hover .comment-meta {
2627 white-space: unset;
2629 #content.compact > .comment-thread .comment-item .comment-meta a {
2630 pointer-events: auto;
2632 #content.compact > .comment-thread .comment-item .comment-meta .comment-post-title {
2633 display: inline;
2635 #content.compact > .comment-thread .comment-item .comment-meta .voting-controls + .comment-post-title {
2636 margin-left: 0.75em;
2638 @media only screen and (hover: hover) {
2639 #content.compact > .comment-thread:last-of-type .comment-item:hover,
2640 #content.compact > .comment-thread:last-of-type .comment-item.expanded {
2641 max-height: unset;
2643 #content.compact > .comment-thread .comment-item:hover .comment,
2644 #content.compact > .comment-thread .comment-item.expanded .comment {
2645 position: relative;
2646 z-index: 1;
2647 margin-bottom: 2em;
2648 bottom: 0;
2650 #content.compact > .comment-thread .comment-item:hover .comment::before,
2651 #content.compact > .comment-thread .comment-item.expanded .comment::before{
2652 content: "";
2653 position: absolute;
2654 display: block;
2655 width: calc(100% + 20px);
2656 height: calc(100% + 20px);
2657 z-index: -1;
2658 top: -10px;
2659 left: -10px;
2661 #content.compact > .comment-thread:last-of-type .comment-item:hover .comment,
2662 #content.compact > .comment-thread:last-of-type .comment-item.expanded .comment{
2663 margin: 0;
2666 @media only screen and (hover: none) {
2667 #content.compact > .comment-thread.expanded:last-of-type .comment-item {
2668 max-height: unset;
2670 #content.compact > .comment-thread.expanded .comment-item .comment {
2671 position: relative;
2672 z-index: 1;
2673 margin-bottom: 2em;
2674 bottom: 0;
2676 #content.compact > .comment-thread.expanded .comment-item .comment::before {
2677 content: "";
2678 position: absolute;
2679 display: block;
2680 width: calc(100% + 14px);
2681 height: calc(100% + 20px);
2682 z-index: -1;
2683 top: -10px;
2684 left: -10px;
2686 #content.compact > .comment-thread.expanded:last-of-type .comment-item .comment {
2687 margin: 0;
2689 #content.compact > .comment-thread.expanded .comment-item .comment::after {
2690 content: "";
2691 display: block;
2692 position: fixed;
2693 top: 0;
2694 left: 0;
2695 width: 100%;
2696 height: 100%;
2697 z-index: -2;
2698 background-color: rgba(0,0,0,0.5);
2702 /*****************************/
2703 /* HIGHLIGHTING NEW COMMENTS */
2704 /*****************************/
2706 .new-comment::before {
2707 content: "";
2708 position: absolute;
2709 width: 100%;
2710 height: 100%;
2711 z-index: 5000;
2712 pointer-events: none;
2715 /***********************************/
2716 /* COMMENT THREAD MINIMIZE BUTTONS */
2717 /***********************************/
2719 .comment-minimize-button {
2720 font-family: "Font Awesome", "Font Awesome 5 Free";
2721 font-weight: 900;
2722 font-size: 1.25rem;
2723 line-height: 1;
2724 position: absolute;
2725 right: 1px;
2726 top: 1px;
2727 width: 18px;
2728 margin: 0;
2729 cursor: pointer;
2731 .comment-minimize-button:active {
2732 transform: scale(0.9);
2734 .comment-minimize-button::after {
2735 content: attr(data-child-count);
2736 font-weight: normal;
2737 font-size: 0.8125rem;
2738 position: absolute;
2739 left: 0;
2740 width: 100%;
2741 text-align: center;
2742 top: 21px;
2744 #content.individual-thread-page .comment-minimize-button {
2745 display: none;
2748 /*****************/
2749 /* IGNORE SYSTEM */
2750 /*****************/
2752 #content.comment-thread-page .comment-item.ignored {
2753 height: 38px;
2754 overflow: hidden;
2756 .comment-item.ignored > .comment > .comment-meta > .author {
2757 text-decoration: line-through;
2760 /***********************************/
2761 /* INDIVIDUAL COMMENT THREAD PAGES */
2762 /***********************************/
2764 .individual-thread-page > h1 {
2765 line-height: 1;
2766 margin: 0.75em 0 3px 0;
2768 .individual-thread-page .comments {
2769 border: none;
2772 /*************/
2773 /* SHORTFORM */
2774 /*************/
2776 .shortform-index-page .comments::before {
2777 border: none;
2778 box-shadow: none;
2781 .shortform-index-page .comments > .comment-thread > .comment-item:first-child {
2782 margin-top: 0;
2785 /****************/
2786 /* VOTE BUTTONS */
2787 /****************/
2789 .vote {
2790 margin: 0;
2792 .vote {
2793 font-family: "Font Awesome", "Font Awesome 5 Free";
2794 font-weight: 900;
2795 border: none;
2798 .vote:disabled {
2799 visibility: hidden;
2800 cursor: default;
2803 @keyframes waiting {
2804 0% {background-position: 200% 0%}
2805 100% {background-position: 0% 0%}
2808 .voting-controls .karma-value {
2809 opacity: 1;
2810 transition: opacity 0.5s linear;
2813 .voting-controls.waiting .karma-value {
2814 opacity: 0.5;
2815 background: repeat-x linear-gradient(70deg, #000 50%, #fff 75%, #000);
2816 background-clip: text;
2817 -webkit-background-clip: text;
2818 color: transparent;
2819 background-position: 200% 0%;
2820 background-size: 200% 100%;
2821 animation: waiting 1s linear infinite;
2824 /* Replicated karma controls at bottom of comments. */
2825 .comment-controls .voting-controls {
2826 float: left;
2827 font-size: 0.9375em;
2830 .comment-controls .voting-controls:first-of-type {
2831 margin-left: -14px;
2834 /*****************************/
2835 /* COMMENTING AND POSTING UI */
2836 /*****************************/
2838 .comment-controls {
2839 text-align: right;
2840 margin: 0 8px 8px 16px;
2841 position: relative;
2842 z-index: 9999;
2844 .comment-thread .comment-controls + .comment-thread > li:first-child {
2845 margin-top: 8px;
2847 .comments > .comment-controls {
2848 margin: 8px 0 0 0;
2850 .comments > .comment-controls:last-child {
2851 margin: 8px 0 16px 0;
2854 .posting-controls input[type='submit'] {
2855 margin: 6px;
2856 padding: 4px 10px;
2857 font-size: 1.125rem;
2860 .comment-controls .cancel-comment-button {
2861 position: absolute;
2862 right: 0;
2863 margin: 0;
2864 height: 27px;
2865 font-size: inherit;
2866 padding: 4px 8px 2px 4px;
2867 z-index: 1;
2869 .comment-controls .cancel-comment-button::before {
2870 font-family: "Font Awesome", "Font Awesome 5 Free";
2871 margin-right: 3px;
2872 content: '\F00D';
2873 font-weight: 900;
2874 font-size: 0.9em;
2875 opacity: 0.7;
2878 .comment + .comment-controls .action-button {
2879 font-weight: normal;
2880 font-size: 1.0625em;
2881 padding: 1px 6px;
2883 .comment-controls .action-button::before {
2884 font-family: "Font Awesome", "Font Awesome 5 Free";
2885 margin-right: 3px;
2887 .new-comment-button {
2888 font-size: 1.5rem;
2889 margin: 0 0.25em;
2891 .comment-controls .reply-button::before {
2892 content: '\F3E5';
2893 font-weight: 900;
2894 font-size: 0.9em;
2895 opacity: 0.6;
2897 .comment-meta .replied::before {
2898 content: '\F3E5';
2899 font-family: "Font Awesome", "Font Awesome 5 Free";
2900 color: #090;
2901 font-weight: 900;
2902 font-size: 0.9em;
2903 opacity: 0.6;
2906 .post-controls {
2907 text-align: right;
2908 margin: 0.75em 0 0 0;
2909 align-self: start;
2910 justify-self: end;
2912 .edit-post-link {
2913 display: inline-block;
2914 margin-bottom: 0.25em;
2915 font-size: 1.125rem;
2917 .edit-post-link::before {
2918 margin-right: 0.3em;
2920 .comment-controls .edit-button::before,
2921 .edit-post-link::before {
2922 content: '\F303';
2923 font-family: "Font Awesome", "Font Awesome 5 Free";
2924 font-weight: 900;
2925 font-size: 0.75em;
2926 position: relative;
2927 top: -1px;
2930 .comment-controls .delete-button {
2931 margin-right: 0.25em;
2933 .comment-controls .edit-button,
2934 .comment-controls .retract-button,
2935 .comment-controls .unretract-button {
2936 margin-right: 1em;
2938 .comment-controls .retract-button::before {
2939 content: '\F4B3';
2940 opacity: 0.6;
2942 .comment-controls .unretract-button::before {
2943 content: '\F075';
2944 opacity: 0.9;
2946 .comment-controls .delete-button::before {
2947 content: '\F05E';
2948 opacity: 0.7;
2950 .comment-controls .retract-button::before,
2951 .comment-controls .unretract-button::before,
2952 .comment-controls .delete-button::before {
2953 font-weight: 900;
2954 font-size: 0.9em;
2957 .comment-controls form {
2958 position: relative;
2960 .textarea-container {
2961 position: relative;
2963 .posting-controls textarea {
2964 display: block;
2965 width: 100%;
2966 height: 15em;
2967 min-height: 15em;
2968 max-height: calc(100vh - 6em);
2969 margin: 2px 0 0 0;
2970 padding: 4px 5px;
2971 font-size: 1.2rem;
2972 border-style: solid;
2973 border-width: 29px 1px 1px 1px;
2974 resize: none;
2977 /* GUIEdit buttons */
2979 .guiedit-buttons-container {
2980 position: absolute;
2981 left: 1px;
2982 top: 1px;
2983 width: calc(100% - 2px);
2984 height: 28px;
2985 text-align: left;
2986 padding: 1px 4px 0 4px;
2987 overflow: hidden;
2989 .comment-thread-page .guiedit-buttons-container {
2990 padding-right: 60px;
2992 .guiedit-buttons-container button {
2993 height: 26px;
2994 padding: 0 7px;
2995 font-weight: 900;
2996 font-size: 0.875rem;
2997 line-height: 1;
2998 position: static;
3000 .guiedit-buttons-container button:active {
3001 transform: none;
3003 .guiedit-buttons-container button:active div {
3004 transform: scale(0.9);
3006 .guiedit-buttons-container button sup {
3007 font-weight: bold;
3009 .guiedit::after {
3010 content: attr(data-tooltip);
3011 position: absolute;
3012 font-weight: normal;
3013 font-size: 1rem;
3014 top: 2px;
3015 left: 464px;
3016 height: 25px;
3017 padding: 4px 0;
3018 white-space: nowrap;
3019 visibility: hidden;
3021 .guiedit:hover::after {
3022 visibility: visible;
3025 /* Markdown hints */
3027 .posting-controls .markdown-reference-link {
3028 float: left;
3029 padding: 1px 0 0 6px;
3031 .posting-controls .markdown-reference-link a {
3032 padding-right: 1.5em;
3033 margin-right: 0.15em;
3034 background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJAAAACQCAQAAABNTyozAAAEDklEQVR4Ae3cY3QDjRaG0V1e27Zt27Zt27Ztf7Zt27Zt10jOdZtZzbSN2q41533+tsFO4zRi0TKRJVACJdDiJVACJVACJVACZQmUQAmUQAmUQAmUQFkCJVACJVACJVACJVDWuD7P8icnGRcVbdyJ/uRZ+jTZYxwq/lN2qMcozvtMibmySe/TsPeqi0JZ3XsAHm1SZAua9CjgoMQo6UB4uiim5gbXV7Ab1EQxT+P3RRw/dHtV3e39UL3g8XuOEw39QNX3g4LHcYwU/n5uo+q7beGKNqLwJ3U1cteKuepEQ1cid03BJIESKIESKIESKIESaIkl0I3dv7Q7a293c//ShrWym7l/abdbGaCnidJGPFzre6opUdqDtLJXitJ+svpA4Uy30dru6hJRHaCws37L37CDRbWAwvctf38S1QOqe43l7f2iikDheg+x9J5ksqpA4TS3svju5CJRXaCwvX7lG3KAqDZQ+Jby/U4kUM0rNN+7hAQSrvNAC/c4Ewn0/052C8Xd0fkigebbRp/5DdpHJFCxr5nfr4QEUqzmJYC3iQRq1jXuj8cYT6CyTnAv54oEKm9EJFBnJVAC7eoS0XJn2r8qQP/wNFOipUY8wvbVAeIjooXq3ki1gPhHC0A/oWWgQZ/37ZI2FaUdVPpb33LHlQS6scPFstrDQBtAvEpNdLEfsZJA3N3lYsnOcTvaAuKzomttqW+lgXimabFoYx5N20D8SXSlw9yElQfiE0J5dW+lI6BBu4uOO8+dWB0g1hel/YIOgbiVE0VHXefhrB7QTRwtmra3gS4AcW+Xibab8SJWE4h7uaLpn/Ud6AoQTzIu2uzDrDYQzzUjCo17HF0D4g3qoo1+yWoCld8hv5OuAvFl0XLb6V8rQGws5votXQfqs45oqaPdjLUDdNO5f7Xa32APgBhu6b2SC92VtQTEfVwlXOhO9ASI2zhNLKsRj2atAfFCo55Iz4C4nyvFks16OWsRiPvQUyCeblIs0adYq0B6DsTb1EV5fk+1gfiWKG0XAwnUZyPRtOPdggTiRg4UC7rEPUkg4PbOFIXGPIEEmt+DCmeu5rUkUHHPaXj76Qsk0MK9R/ynv5FAzfdDYS9Da+n/xe6ovd2lS/8vVlyfH7o1vQLKJVACJVACJVACJVACIYGW/A6z/A6zG8RcNbdT9d1eTcx1A8eKhn6s6vtxweNYfisaqvupu+jXV8H63cXP1Asev+Wpopi6aVMVbFpdFPMUlP6jdrY/8AgTYkHZhEcAvFNdFMpq3qFh78y/okIT3qk4j8zborn290hN91S/c6zrzapVsFnXO9bvPFXjYtEykSVQAnVUAiVQAiVQAiVQAiVQlkAJlEAJlEAJlEAJlCVQAiVQAiVQAiVQAmX/BMHb3CdNrgcrAAAAAElFTkSuQmCC');
3035 background-size: 1.25em;
3036 background-repeat: no-repeat;
3037 background-position: right center;
3040 #markdown-hints-checkbox + label {
3041 float: left;
3042 margin: 2px 0 0 1em;
3043 line-height: 1.3;
3044 cursor: pointer;
3046 #edit-post-form #markdown-hints-checkbox + label {
3047 padding: 0;
3049 #markdown-hints-checkbox {
3050 visibility: hidden;
3051 float: left;
3053 #markdown-hints-checkbox + label::after {
3054 content: "(Show Markdown help)";
3056 #markdown-hints-checkbox:checked + label::after {
3057 content: "(Hide Markdown help)";
3059 #markdown-hints-checkbox + label::before {
3060 content: '\F059';
3061 font-family: "Font Awesome", "Font Awesome 5 Free";
3062 font-weight: 900;
3063 margin-right: 3px;
3065 #markdown-hints-checkbox:checked + label::before {
3066 font-weight: normal;
3068 #markdown-hints {
3069 margin: 4px 0 0 4px;
3070 padding: 4px 8px;
3071 position: absolute;
3072 text-align: left;
3073 top: calc(100% - 1em);
3074 z-index: 1;
3075 display: none;
3077 .comment-controls #markdown-hints {
3078 top: calc(100% + 1.75em);
3080 #markdown-hints-checkbox:checked ~ #markdown-hints {
3081 display: table;
3083 .markdown-hints-row {
3084 display: table-row;
3086 #markdown-hints .markdown-hints-row span,
3087 #markdown-hints .markdown-hints-row code {
3088 float: none;
3089 display: table-cell;
3090 border: none;
3091 background-color: inherit;
3092 padding: 0 12px 0 0;
3095 /******************/
3096 /* EDIT POST FORM */
3097 /******************/
3099 #edit-post-form {
3100 padding: 1em 1em 4em 1em;
3102 #edit-post-form .post-meta-fields {
3103 display: grid;
3104 grid-template-columns: 5em auto auto auto 1fr auto;
3105 margin-bottom: 0.625em;
3108 #edit-post-form label[for='title'],
3109 #edit-post-form label[for='url'],
3110 #edit-post-form label[for='section'] {
3111 grid-column: 1;
3113 #edit-post-form input[type='text'] {
3114 padding: 0.25em;
3115 grid-column: 2 / span 4;
3116 margin-bottom: 0.5em;
3119 #edit-post-form .link-post-checkbox,
3120 #edit-post-form .link-post-checkbox + label {
3121 grid-row: 1;
3122 grid-column: 6;
3124 #edit-post-form .question-checkbox,
3125 #edit-post-form .question-checkbox + label {
3126 grid-row: 3;
3127 grid-column: 5;
3128 justify-self: start;
3129 margin-left: 1.5em;
3132 #edit-post-form .post-meta-fields label[for="submit-to-frontpage"] {
3133 grid-row: 4;
3134 grid-column: 2 / span 4;
3135 text-align: left;
3136 margin-top: 8px;
3139 #edit-post-form .post-meta-fields input[type='checkbox'] {
3140 height: 0;
3141 opacity: 0;
3142 pointer-events: none;
3144 #edit-post-form .post-meta-fields input[type='checkbox'] + label {
3145 white-space: nowrap;
3146 position: relative;
3147 cursor: pointer;
3148 padding: 0.25em 0.5em 0.25em calc(20px + 0.25em + 0.3725em);
3149 align-self: start;
3151 #edit-post-form .post-meta-fields input[type='checkbox'] + label::before {
3152 content: "";
3153 font-family: "Font Awesome", "Font Awesome 5 Free";
3154 font-size: 1.375rem;
3155 line-height: 0.7;
3156 text-indent: 1px;
3157 font-weight: 900;
3158 position: absolute;
3159 width: 20px;
3160 height: 20px;
3161 left: 5px;
3163 #edit-post-form label[for='url'],
3164 #edit-post-form input[name='url'] {
3165 display: none;
3167 #edit-post-form .link-post-checkbox:checked ~ label[for='url'],
3168 #edit-post-form .link-post-checkbox:checked ~ input[name='url'] {
3169 display: initial;
3171 #edit-post-form label {
3172 line-height: normal;
3173 border: 1px solid transparent;
3174 text-align: right;
3175 padding: 0.25em 0.5em;
3176 white-space: nowrap;
3178 #edit-post-form input[type='radio'] {
3179 width: 0;
3180 margin: 0;
3181 opacity: 0;
3182 pointer-events: none;
3184 #edit-post-form input[type='radio'] + label {
3185 padding: 4px 12px;
3186 text-align: center;
3187 border-style: solid;
3188 border-width: 1px 1px 1px 0;
3189 cursor: pointer;
3191 #edit-post-form input[type='radio']:checked + label {
3192 cursor: default;
3195 #edit-post-form label[for='section'] {
3196 grid-row: 3;
3198 #edit-post-form input[type='radio'] + label {
3199 grid-row: 3;
3201 <?php fit_content("#edit-post-form input[type='radio'] + label"); ?>
3203 #edit-post-form textarea {
3204 min-height: 24em;
3207 #edit-post-form input[type='submit'] {
3208 padding: 6px 12px;
3209 float: right;
3211 #edit-post-form #markdown-hints {
3212 top: calc(100% + 2em);
3215 #edit-post-form button.guiedit div {
3216 overflow: visible;
3218 .guiedit-mobile-auxiliary-button {
3219 display: none;
3222 /***********/
3223 /* BUTTONS */
3224 /***********/
3226 button,
3227 input[type='submit'] {
3228 font-family: inherit;
3229 font-size: inherit;
3230 background-color: inherit;
3231 cursor: pointer;
3232 border: none;
3233 border-radius: 0;
3236 /************/
3237 /* HEADINGS */
3238 /************/
3240 .body-text h1,
3241 .body-text h2,
3242 .body-text h3,
3243 .body-text h4,
3244 .body-text h5,
3245 .body-text h6 {
3246 line-height: 1.1;
3247 margin: 1em 0 0.75em 0;
3248 text-align: left;
3251 .post-body h5,
3252 .post-body h6 {
3253 font-size: 1em;
3255 .post-body h4,
3256 .body-text h4 {
3257 font-size: 1.2em;
3259 .post-body h3,
3260 .body-text h3 {
3261 font-size: 1.4em;
3263 .post-body h2,
3264 .body-text h2 {
3265 font-size: 1.75em;
3267 .post-body h1,
3268 .body-text h1 {
3269 font-size: 2.1em;
3272 .comment-body h5,
3273 .comment-body h6 {
3274 font-size: 1em;
3276 .comment-body h4 {
3277 font-size: 1.15em;
3279 .comment-body h3 {
3280 font-size: 1.3em;
3282 .comment-body h2 {
3283 font-size: 1.5em;
3285 .comment-body h1 {
3286 font-size: 1.75em;
3289 /**********/
3290 /* QUOTES */
3291 /**********/
3293 blockquote,
3294 .post-body .comment-box .comment-body {
3295 font-size: 0.9em;
3296 margin: 1em 0;
3297 padding-left: 0.5em;
3298 margin-left: 1px;
3299 padding-bottom: 3px;
3301 blockquote *:first-child {
3302 margin-top: 0;
3304 blockquote *:last-child {
3305 margin-bottom: 0;
3307 blockquote blockquote {
3308 font-size: 0.95em;
3311 /* Pseudo-blockquotes that LW sometimes uses for some reason */
3313 .post-body .comment-box .user-name {
3314 font-style: italic;
3316 .post-body .comment-box .user-name::after {
3317 content: ":";
3319 .post-body .comment-box {
3320 zoom: 1.25;
3323 /**********/
3324 /* IMAGES */
3325 /**********/
3327 #content img, #content figure {
3328 max-width: 100%;
3331 .prediction-poll > svg {
3332 width: 700px;
3333 max-width: 100%;
3336 img.inline-latex {
3337 position: relative;
3338 top: 2.5px;
3339 margin: 0 2px;
3342 #content figure {
3343 text-align: center;
3344 margin: 1.5em auto;
3347 p.imgonly,
3348 div.imgonly,
3349 figure {
3350 text-align: center;
3351 margin: auto;
3352 clear: both;
3355 .imgonly iframe {
3356 display: block;
3357 width: 100%;
3358 height: 250px;
3359 border: 0;
3362 // Aspect ratio trick from https://css-tricks.com/aspect-ratio-boxes/
3364 [style*="--aspect-ratio"] > * {
3365 width: 100%;
3367 [style*="--aspect-ratio"] > img {
3368 height: auto;
3370 @supports (--custom:property) {
3371 [style*="--aspect-ratio"] {
3372 position: relative;
3374 [style*="--aspect-ratio"]::before {
3375 content: "";
3376 display: block;
3377 padding-bottom: calc(100% / (var(--aspect-ratio)));
3379 [style*="--aspect-ratio"] > * {
3380 position: absolute;
3381 top: 0;
3382 left: 0;
3383 height: 100%;
3387 /**********/
3388 /* TABLES */
3389 /**********/
3391 .body-text table {
3392 border-collapse: collapse;
3393 font-size: 0.875em;
3395 .body-text table th,
3396 .body-text table td {
3397 text-align: left;
3398 padding: 4px 6px;
3399 line-height: 1.3;
3401 .body-text table .numeric {
3402 text-align: right;
3403 font-family: Inconsolata, Menlo, monospace;
3405 .body-text table caption {
3406 margin: 0 0 0.25em 0;
3407 font-weight: bold;
3408 font-size: 1.125em;
3411 /********/
3412 /* MISC */
3413 /********/
3415 /*= Superscripts & subscripts =*/
3417 /* Make sure superscripts and subscripts do not affect line spacing. */
3418 sup, sub {
3419 vertical-align: baseline;
3420 position: relative;
3421 top: -0.5em;
3422 left: 0.05em;
3423 font-size: 0.8em;
3425 sub {
3426 top: 0.3em;
3429 /*= Code blocks & other "unstyled" text. =*/
3431 pre,
3432 code {
3433 font-family: Inconsolata, Menlo, monospace;
3435 pre {
3436 white-space: pre-wrap;
3438 .body-text pre {
3439 text-align: left;
3441 code {
3442 font-size: 0.95em;
3443 display: inline-block;
3444 padding: 0 4px 1px 5px;
3446 pre > code {
3447 display: block;
3448 border-radius: 0;
3449 padding: 3px 4px 5px 8px;
3450 tab-size: 4;
3453 /*= Fractions =*/
3455 .frac::after {
3456 content: "\200B";
3459 /*= Removing browser default styling of various elements =*/
3461 /* On various input elements such as text fields and buttons, remove "blue glow" focus outlines on Macs, dotted black outlines in Firefox, etc. */
3462 :focus {
3463 outline: none;
3466 /* Remove "embossed" appearance of horizontal rules. */
3467 hr {
3468 border: none;
3471 input,
3472 button,
3473 textarea {
3474 -webkit-appearance: none;
3475 -moz-appearance: none;
3476 appearance: none;
3479 input {
3480 font-family: inherit;
3481 font-size: inherit;
3482 font-weight: inherit;
3485 /*************/
3486 /* FOOTNOTES */
3487 /*************/
3489 ol {
3490 counter-reset: ordered-list;
3492 .footnote-definition {
3493 font-size: 0.9em;
3494 list-style-type: none;
3495 counter-increment: ordered-list;
3496 position: relative;
3498 .footnote-definition p {
3499 font-size: inherit !important;
3501 .footnote-definition::before {
3502 content: counter(ordered-list) ".";
3503 position: absolute;
3504 left: -2.5em;
3505 font-weight: bold;
3506 text-align: right;
3507 width: 2em;
3510 /*= LW Docs footnotes =*/
3512 .footnote-item {
3513 display: flex;
3516 .footnote-item > :not(.nothing) {
3517 margin: 0 0.2em;
3520 .footnote-item > :first-child {
3521 margin-left: -0.2em;
3522 margin-right: 0;
3525 .footnote-back-link a:not(.nothing) {
3526 font-size: 0;
3527 text-decoration: none;
3528 border: none;
3531 .footnote-back-link a:not(.nothing):hover {
3532 text-shadow: 0 0 1px #fff, 0 0 3px #fff, 0 0 5px #00e;
3533 border: none;
3534 text-decoration: none;
3537 .footnote-back-link a::after {
3538 content: '\F106';
3539 font-family: Font Awesome;
3540 font-size: 1rem;
3541 padding: 0.2em;
3542 text-decoration: none;
3543 font-weight: bold;
3546 .footnote-content > :first-child {
3547 margin-top: 0;
3550 /*********/
3551 /* LISTS */
3552 /*********/
3554 li {
3555 margin-bottom: 0.5em;
3558 .body-text ol p,
3559 .body-text ul p {
3560 margin: 0.5em 0;
3563 .body-text ol {
3564 list-style: none;
3565 padding: 0;
3566 counter-reset: ol;
3568 .body-text ol > li {
3569 position: relative;
3570 counter-increment: ol;
3571 padding: 0 0 0 2.5em;
3572 margin: 0.25em 0 0 0;
3574 .body-text ol > li::before {
3575 content: counter(ol) ".";
3576 position: absolute;
3577 width: 2em;
3578 text-align: right;
3579 left: 0;
3581 .body-text ul {
3582 list-style: none;
3583 padding: 0;
3585 .body-text ul:not(.contents-list) > li:empty {
3586 padding-bottom: 1.25em;
3588 .body-text ul:not(.contents-list) > li {
3589 position: relative;
3590 padding: 0 0 0 1.75em;
3591 margin: 0.25em 0 0 0;
3593 .body-text ul:not(.contents-list) > li ul > li {
3594 padding: 0 0 0 2em;
3596 .body-text ul:not(.contents-list) > li::before {
3597 content: "•";
3598 position: absolute;
3599 width: 1.25em;
3600 text-align: right;
3601 left: 0;
3603 .body-text ul:not(.contents-list) > li ul > li::before {
3604 width: 1.5em;
3606 .body-text li > ul:first-child > li {
3607 padding-left: 0;
3609 .body-text li > ul:first-child > li::before {
3610 content: none;
3613 /**************/
3614 /* ERROR PAGE */
3615 /**************/
3617 .error-retry-form {
3618 margin: 0.5em 0;
3621 .error-retry-form input[type="submit"] {
3622 border: 1px solid #aaa;
3623 font-weight: bold;
3624 font-size: 1.125rem;
3625 padding: 0.5em 1.25em;
3628 /**************/
3629 /* ABOUT PAGE */
3630 /**************/
3632 #content.about-page .contents {
3633 margin-top: 0.25em;
3635 #content.about-page .accesskey-table {
3636 border-collapse: collapse;
3637 margin: auto;
3639 #content.about-page .accesskey-table th,
3640 #content.about-page .accesskey-table td {
3641 padding: 2px 6px;
3643 #content.about-page .accesskey-table td:first-child {
3644 padding-right: 1.5em;
3646 #content.about-page .accesskey-table td:last-child {
3647 text-align: center;
3648 font-family: Inconsolata, Menlo, monospace;
3650 #content.about-page h3:nth-of-type(n+2) {
3651 clear: both;
3654 /******************/
3655 /* IMAGES OVERLAY */
3656 /******************/
3658 #images-overlay + #content .post-body img {
3659 visibility: hidden;
3662 #images-overlay div {
3663 position: absolute;
3665 #images-overlay div::after {
3666 content: "Click to enlarge";
3667 display: block;
3668 position: absolute;
3669 margin: auto;
3670 left: 0;
3671 right: 0;
3672 bottom: 10px;
3673 padding: 6px 10px;
3674 font-size: 1.25rem;
3675 background-color: rgba(0,0,0,0.6);
3676 color: #fff;
3677 border-radius: 5px;
3678 opacity: 0.0;
3679 transition: opacity 0.15s ease;
3680 pointer-events: none;
3682 <?php fit_content("#images-overlay div::after"); ?>
3683 #images-overlay div:hover::after {
3684 opacity: 1.0;
3687 #images-overlay img {
3688 width: 100%;
3691 /***************/
3692 /* IMAGE FOCUS */
3693 /***************/
3695 /*=--------------=*/
3696 /*= Hover styles =*/
3697 /*=--------------=*/
3699 #content img:hover,
3700 #images-overlay img:hover {
3701 filter: drop-shadow(0 0 3px #777);
3702 cursor: zoom-in;
3704 #content img:active,
3705 #images-overlay img:active {
3706 transform: scale(0.975);
3709 /*=---------=*/
3710 /*= Overlay =*/
3711 /*=---------=*/
3713 #image-focus-overlay {
3714 position: fixed;
3715 top: 0;
3716 right: 0;
3717 bottom: 0;
3718 left: 0;
3719 z-index: 2;
3720 display: none;
3721 cursor: zoom-out;
3723 #image-focus-overlay::before {
3724 content: "";
3725 display: block;
3726 position: absolute;
3727 top: 0;
3728 right: 0;
3729 bottom: 0;
3730 left: 0;
3731 background-color: #000;
3732 opacity: 0.5;
3733 z-index: -1;
3735 #image-focus-overlay.engaged {
3736 display: initial;
3739 #image-focus-overlay img {
3740 margin: auto;
3741 position: absolute;
3742 left: 50%;
3743 top: 50%;
3744 transform: translateX(-50%) translateY(-50%);
3747 /*=-------------------=*/
3748 /*= Single-image mode =*/
3749 /*=-------------------=*/
3751 #image-focus-overlay:not(.slideshow) .image-number,
3752 #image-focus-overlay:not(.slideshow) .slideshow-buttons {
3753 visibility: hidden;
3756 /*=---------=*/
3757 /*= Caption =*/
3758 /*=---------=*/
3760 #image-focus-overlay .caption {
3761 position: absolute;
3762 bottom: 0.75em;
3763 background-color: rgba(0,0,0,0.7);
3764 left: 9em;
3765 right: 9em;
3766 margin: auto;
3767 max-width: calc(100% - 18em);
3768 text-align: center;
3769 font-size: 1.375em;
3770 border-radius: 8px;
3771 z-index: 1;
3772 transition:
3773 bottom 0.2s ease;
3775 <?php fit_content("#image-focus-overlay .caption"); ?>
3776 #image-focus-overlay .caption.hidden {
3777 bottom: -5em;
3778 transition:
3779 bottom 0.5s ease;
3782 #image-focus-overlay .caption p {
3783 margin: 1em 1.25em;
3784 color: #fff;
3787 #image-focus-overlay .caption:not(:empty)::before {
3788 content: "";
3789 display: block;
3790 position: absolute;
3791 width: 100vw;
3792 height: calc(100% + 1.5em);
3793 z-index: -1;
3794 top: -0.75em;
3795 left: calc(-50vw + 50%);
3799 /*=--------------=*/
3800 /*= Help overlay =*/
3801 /*=--------------=*/
3803 #image-focus-overlay .help-overlay {
3804 position: absolute;
3805 display: flex;
3806 flex-flow: column;
3807 z-index: 2;
3808 font-size: 1.5rem;
3809 padding: 1em;
3810 border-radius: 10px;
3811 bottom: 1em;
3812 right: 1em;
3813 overflow: hidden;
3814 white-space: nowrap;
3815 color: transparent;
3816 cursor: default;
3817 visibility: hidden;
3818 transition:
3819 visibility 1s ease,
3820 color 1s ease,
3821 background-color 1s ease,
3822 bottom 0.3s ease;
3824 #image-focus-overlay .help-overlay:hover {
3825 max-width: 24em;
3826 max-height: 14em;
3827 background-color: rgba(0,0,0,0.85);
3828 color: #fff;
3829 visibility: visible;
3830 transition:
3831 visibility 0.2s ease 0.3s,
3832 color 0.2s ease 0.3s,
3833 background-color 0.2s ease 0.3s;
3836 #image-focus-overlay .help-overlay::after {
3837 content: "\F128";
3838 font-family: "Font Awesome", "Font Awesome 5 Free";
3839 font-weight: 900;
3840 font-size: 2rem;
3841 position: absolute;
3842 right: 0;
3843 bottom: 0;
3844 padding: 10px;
3845 color: #000;
3846 filter: drop-shadow(0 0 6px #fff);
3847 visibility: visible;
3848 opacity: 0.85;
3849 transition:
3850 visibility 1s ease;
3852 #image-focus-overlay .help-overlay:hover::after {
3853 visibility: hidden;
3854 transition:
3855 visibility 0.2s ease 0.3s;
3858 #image-focus-overlay .help-overlay p {
3859 margin: 0;
3860 text-indent: -2em;
3861 padding-left: 2em;
3862 max-width: 100%;
3863 overflow: hidden;
3865 #image-focus-overlay .help-overlay p + p {
3866 margin: 0.75em 0 0 0;
3868 #image-focus-overlay .help-overlay.hidden {
3869 bottom: -2em;
3872 /*=--------------=*/
3873 /*= Slide number =*/
3874 /*=--------------=*/
3876 #image-focus-overlay .image-number {
3877 position: absolute;
3878 z-index: 2;
3879 font-size: 1.75rem;
3880 left: 1em;
3881 bottom: 1em;
3882 font-weight: 600;
3883 text-shadow:
3884 0 0 3px #fff,
3885 0 0 5px #fff,
3886 0 0 8px #fff,
3887 0 0 13px #fff;
3888 width: 1.5em;
3889 text-align: right;
3890 white-space: nowrap;
3891 transition: bottom 0.3s ease;
3893 #image-focus-overlay .image-number::before {
3894 content: "#";
3895 opacity: 0.3;
3897 #image-focus-overlay .image-number::after {
3898 content: " of " attr(data-number-of-images);
3899 opacity: 0.3;
3901 #image-focus-overlay .image-number:hover::before,
3902 #image-focus-overlay .image-number:hover::after {
3903 opacity: 1.0;
3905 #image-focus-overlay .image-number.hidden {
3906 bottom: -1.25em;
3909 /*=-------------------=*/
3910 /*= Slideshow buttons =*/
3911 /*=-------------------=*/
3913 #image-focus-overlay .slideshow-buttons {
3914 position: absolute;
3915 top: 0;
3916 left: 0;
3917 width: 100%;
3918 height: 100%;
3919 z-index: 1;
3920 display: flex;
3921 justify-content: space-between;
3922 pointer-events: none;
3924 #image-focus-overlay .slideshow-buttons button {
3925 font-family: "Font Awesome", "Font Awesome 5 Free";
3926 font-weight: 900;
3927 font-size: 3rem;
3928 padding: 0.5em;
3929 color: #ddd;
3930 position: relative;
3931 left: 0;
3932 transition:
3933 left 0.3s ease;
3934 pointer-events: auto;
3936 #image-focus-overlay .slideshow-buttons button::selection {
3937 background-color: transparent;
3939 @media only screen and (hover: hover) {
3940 #image-focus-overlay .slideshow-buttons button:hover {
3941 background-color: rgba(0,0,0,0.1);
3942 color: #777;
3945 #image-focus-overlay .slideshow-buttons button:active {
3946 transform: none;
3947 color: #888;
3949 #image-focus-overlay .slideshow-buttons button:disabled {
3950 text-shadow: none;
3951 background-color: transparent;
3952 color: #ddd;
3953 cursor: default;
3954 opacity: 0.4;
3956 #image-focus-overlay .slideshow-button.previous.hidden {
3957 left: -1.75em;
3959 #image-focus-overlay .slideshow-button.next.hidden {
3960 left: 1.75em;
3963 /*=-----------------=*/
3964 /*= Background blur =*/
3965 /*=-----------------=*/
3967 .blurred {
3968 filter: blur(3px);
3971 /**************************/
3972 /* QUALIFIED HYPERLINKING */
3973 /**************************/
3975 #content.no-nav-bars {
3976 margin: 8px auto;
3978 #content.no-nav-bars + #ui-elements-container > * {
3979 padding-top: 8px;
3982 #aux-about-link {
3983 position: fixed;
3984 top: 40px;
3985 left: calc((100% - 900px) / 2 - 69px);
3986 width: 1.5em;
3987 height: 1.5em;
3988 text-align: center;
3989 display: table;
3991 #aux-about-link a {
3992 display: table-cell;
3993 width: 100%;
3994 vertical-align: middle;
3995 font-family: "Font Awesome", "Font Awesome 5 Free";
3996 font-weight: 900;
3997 font-size: 1.25rem;
3998 opacity: 0.4;
3999 z-index: 1;
4002 .qualified-linking {
4003 margin: 0;
4004 position: relative;
4006 .qualified-linking input[type='checkbox'] {
4007 visibility: hidden;
4008 width: 0;
4009 height: 0;
4010 margin: 0;
4012 .qualified-linking label {
4013 font-family: "Font Awesome", "Font Awesome 5 Free";
4014 font-weight: 900;
4015 font-size: 1rem;
4016 padding: 0 0.5em;
4017 display: inline-block;
4018 margin-left: 0.25em;
4020 .qualified-linking label:hover {
4021 cursor: pointer;
4023 .qualified-linking label:active span {
4024 display: inline-block;
4025 transform: scale(0.9);
4027 .qualified-linking label::selection {
4028 background-color: transparent;
4031 .qualified-linking label::after {
4032 content: "";
4033 width: 100vw;
4034 height: 0;
4035 left: 0;
4036 top: 0;
4037 position: fixed;
4038 z-index: 1;
4039 cursor: default;
4041 .qualified-linking input[type='checkbox']:checked + label::after {
4042 height: 100vh;
4045 .qualified-linking-toolbar {
4046 position: absolute;
4047 right: 0.25em;
4048 top: 110%;
4049 z-index: 1;
4051 .qualified-linking input[type='checkbox'] ~ .qualified-linking-toolbar {
4052 display: none;
4054 .qualified-linking input[type='checkbox']:checked ~ .qualified-linking-toolbar {
4055 display: block;
4057 #qualified-linking-toolbar-toggle-checkbox-bottom ~ .qualified-linking-toolbar {
4058 top: unset;
4059 bottom: 125%;
4062 .qualified-linking-toolbar a {
4063 display: block;
4064 padding: 0 6px;
4065 margin: 4px;
4067 .qualified-linking-toolbar a::selection {
4068 background-color: transparent;
4071 /*****************/
4072 /* HOVER PREVIEW */
4073 /*****************/
4075 #preview-popup-toggle {
4076 position: absolute;
4077 right: -67px;
4078 bottom: 285px;
4079 cursor: pointer;
4080 color: var(--GW-toggle-widget-color, #888);
4082 #preview-popup-toggle:hover {
4083 color: var(--GW-toggle-widget-hover-color, #444);
4086 #content.preview:not(not) {
4087 padding: 0;
4089 #content.preview > .comment-thread {
4090 margin: 2px;
4092 #content.preview.individual-thread-page > .comment-thread > .comment-item {
4093 border: none;
4095 #content.preview.user-page .page-main-heading, #content.preview.user-page .user-stats {
4096 padding: 0 8px;
4098 #content.preview.user-page .page-main-heading {
4099 margin-left: 8px;
4101 #content.preview.not(not) .body-text {
4102 margin-left: 8px;
4103 margin-right: 8px;
4105 #content.preview.user-page .user-stats {
4106 margin-right: 32px;
4108 #content.preview.user-page .page-toolbar, #content.preview.user-page nav {
4109 display: none;
4111 #content.preview button.vote {
4112 display: none;
4114 #content.preview > h1.listing {
4115 max-height: unset;
4117 #content.preview.user-page > .comment-thread {
4118 margin: 0.5em 0;
4120 #content.preview > .post {
4121 margin: 0 18px;
4123 #content.preview .post-title {
4124 margin-top: 0.5em;
4126 #content.preview .post-meta {
4127 line-height: 1.0;
4129 #content.preview .body-text {
4130 font-size: 1em;
4132 #content.preview nav.contents,
4133 #content.preview .lw2-link {
4134 display: none;
4137 .preview-popup {
4138 position: fixed;
4139 transform-origin: top;
4140 top: 10%;
4141 right: 10%;
4142 max-width: 700px;
4143 z-index: 10001;
4144 background-color: #eee;
4145 border: 1px solid #ccc;
4146 box-shadow: 2px 6px 20px -4px #000;
4147 transition: height 0.2s ease, top 0.2s ease;
4149 .popup-hide-button {
4150 position: fixed;
4151 top: 4px;
4152 right: 4px;
4153 color: #000;
4154 background-color: #fff;
4155 width: 28px;
4156 height: 28px;
4157 display: flex;
4158 font-family: "Font Awesome";
4159 font-size: 14px;
4160 line-height: 1;
4161 border: 1px solid #bbb;
4162 border-radius: 28px;
4163 align-items: center;
4164 justify-content: center;
4165 //padding-bottom: 2px;
4166 padding-left: 1.5px;
4167 font-family: "Font Awesome", "Font Awesome 5 Free";
4168 cursor: pointer;
4170 .popup-hide-button:hover::before {
4171 content: "Turn off preview popups";
4172 display: block;
4173 position: absolute;
4174 width: max-content;
4175 right: 32px;
4176 color #000;
4177 background-color: #fff;
4178 border: 1px solid #eee;
4179 border-radius: 2px;
4180 padding: 4px;
4183 /********/
4184 /* MATH */
4185 /********/
4187 .mathjax-block-container {
4188 display: block;
4189 overflow-y: hidden;
4190 border-radius: 6px;
4191 margin: 1em 0 1.5em 0;
4193 .mathjax-inline-container {
4194 max-width: 100%;
4195 overflow-x: auto;
4196 overflow-y: hidden;
4197 position: relative;
4198 padding: 0 1px;
4200 #content .mathjax-inline-container,
4201 #content .mathjax-inline-container .mjpage,
4202 #content .mathjax-inline-container .mjx-chtml,
4203 #content .mathjax-inline-container .mjx-math,
4204 #content .mathjax-inline-container .mjx-mrow {
4205 display: inline;
4206 white-space: normal;
4208 .post .mathjax-inline-container {
4209 line-height: 1;
4211 .comment .mathjax-inline-container {
4212 line-height: 1;
4214 .mathjax-inline-container .mjx-chtml {
4215 padding: 0;
4218 /************/
4219 /* SPOILERS */
4220 /************/
4222 .spoiler {
4223 color: #000;
4224 background-color: currentColor;
4225 transition: none;
4226 text-shadow: none;
4227 margin: 1em 0;
4228 box-shadow: 0 0 0 1px currentColor inset;
4229 overflow: auto;
4231 .spoiler:not(:last-child) {
4232 margin-bottom: 0;
4234 #content .spoiler * {
4235 color: inherit;
4236 border: none;
4238 .spoiler:hover {
4239 color: unset;
4240 background-color: unset;
4241 text-shadow: unset;
4242 transition:
4243 color 0.1s ease-out 0.1s,
4244 background-color 0.1s ease-out 0.1s,
4245 text-shadow 0.1s ease-out 0.1s;
4247 .spoiler::selection,
4248 .spoiler ::selection {
4249 color: #fff;
4250 background-color: #000;
4252 .spoiler:not(:hover)::selection,
4253 .spoiler:not(:hover) ::selection {
4254 background-color: transparent;
4257 /*= Fix for LessWrong being weird =*/
4259 .spoiler > p {
4260 padding: 0 7px;
4262 .spoiler > p:first-child {
4263 margin-top: 0.25em;
4265 .spoiler > p:last-child {
4266 margin-bottom: 0;
4267 padding-bottom: 0.25em;
4269 .spoiler > p:hover ~ p {
4270 background-color: currentColor;
4272 .spoiler > p + p {
4273 margin-top: -1em;
4275 .spoiler > p:not(:first-child) {
4276 padding-top: 0.5em;
4278 .spoiler > p:not(:last-child) {
4279 padding-bottom: 0.5em;
4282 .spoiler:not(:hover) pre,
4283 .spoiler:not(:hover) code {
4284 background-color: inherit;
4285 box-shadow: none;
4287 #content .spoiler pre {
4288 border-color: currentColor;
4289 border-style: solid;
4290 border-width: 0 1px;
4291 border-radius: 0;
4294 /*******************/
4295 /* PAGE LIST INDEX */
4296 /*******************/
4298 .page-list-index {
4299 margin: 1em 30px;
4300 line-height: 1.2;
4303 .page-list-index > p {
4304 font-weight: bold;
4305 font-size: 1.2em;
4308 .page-list-index > ul * {
4309 margin: 0;
4312 .page-list-index ul {
4313 padding-left: 1.5em;
4316 .page-list-index li {
4317 margin-top: 0.67em;
4320 .page-list-index li > a {
4321 display: block;
4322 font-size: 1.1em;
4323 font-weight: bold;
4324 margin: 0.33em 0;
4327 .page-list-index li > a:last-child {
4328 margin-bottom: 1em;
4332 /*****************/
4333 /* USER MENTIONS */
4334 /*****************/
4336 .textarea-container .autocomplete-container {
4337 position: absolute;
4338 overflow-y: auto;
4339 font-size: 1.125rem;
4340 cursor: default;
4341 backdrop-filter: blur(2px);
4342 width: 360px;
4344 .textarea-container .autocomplete-container:empty {
4345 display: none;
4348 @media only screen and (min-width: 521px) {
4349 .textarea-container .autocomplete-container.inside {
4350 max-height: calc(100% - 36px);
4351 top: 32px;
4353 .textarea-container .autocomplete-container.outside {
4354 max-height: calc(100% - 28px);
4355 top: 28px;
4356 z-index: 10001;
4359 .textarea-container .autocomplete-container.inside.right {
4360 right: 18px;
4362 .textarea-container .autocomplete-container.inside.left {
4363 left: 18px;
4365 .textarea-container .autocomplete-container.outside.right {
4366 left: calc(100% + 3px);
4368 .textarea-container .autocomplete-container.outside.left {
4369 right: calc(100% + 3px);
4372 head.content-width-normal + body .textarea-container .autocomplete-container.outside {
4373 max-width: calc((100vw - (900px - 40px * 2)) / 2);
4375 head.content-width-wide + body .textarea-container .autocomplete-container.outside {
4376 max-width: calc((100vw - (1150px - 40px * 2)) / 2);
4378 head.content-width-fluid + body .textarea-container .autocomplete-container.outside {
4379 max-width: calc((300px + 40px * 2) / 2);
4383 .textarea-container .autocomplete-container div {
4384 padding: 2px 8px 0 8px;
4385 white-space: nowrap;
4386 display: flex;
4387 justify-content: flex-end;
4390 .textarea-container .autocomplete-container div span.name {
4391 flex: 1 1 auto;
4392 width: calc(100% - 9em);
4393 overflow: hidden;
4394 text-overflow: ellipsis;
4396 .textarea-container .autocomplete-container div span.name:hover {
4397 overflow: visible;
4398 z-index: 1;
4400 .textarea-container .autocomplete-container div span.age,
4401 .textarea-container .autocomplete-container div span.karma {
4402 font-size: 0.9em;
4403 text-align: right;
4405 .textarea-container .autocomplete-container div span.age {
4406 flex: 0 0 3em;
4408 .textarea-container .autocomplete-container div span.karma {
4409 flex: 0 0 6em;
4413 /***************/
4414 /* COLLECTIONS */
4415 /***************/
4417 h2.sequence-chapter,
4418 h3.sequence-chapter,
4419 h4.sequence-chapter {
4420 text-align: center;
4422 h2.sequence-chapter::before,
4423 h3.sequence-chapter::before,
4424 h4.sequence-chapter::before {
4425 display: block;
4426 clear: both;
4427 margin: 1.5em 0 0.75em 0;
4428 font-style: normal;
4429 font-weight: normal;
4430 font-family: <?php echo $UI_font; ?>;
4432 h2.sequence-chapter::before {
4433 content: '\25A3';
4435 h3.sequence-chapter::before {
4436 content: '\25AA\2004\25AA';
4438 h4.sequence-chapter::before {
4439 content: '\00B7\2004\00B7\2004\00B7';
4443 /*******************/
4444 /* ALIGNMENT FORUM */
4445 /*******************/
4447 #content.alignment-forum-index-page::after {
4448 content: "Alignment Forum";
4449 font-size: 1.5rem;
4450 margin: 0.375em 0 0 -0.375em;
4451 order: -1;
4454 /**********************/
4455 /* FOR NARROW SCREENS */
4456 /**********************/
4458 @media only screen and (max-width: 1440px) {
4459 #hns-date-picker {
4460 right: -81px;
4461 padding: 8px 10px 10px 10px;
4462 bottom: 62px;
4463 display: none;
4465 #hns-date-picker::before {
4466 content: "";
4467 position: absolute;
4468 display: block;
4469 z-index: -1;
4470 height: calc(100% + 2px);
4471 top: -1px;
4472 left: -1px;
4473 width: 50%;
4476 @media only screen and (max-width: 1160px) {
4477 #new-comment-nav-ui {
4478 bottom: 180px;
4479 right: -68px;
4481 #hns-date-picker {
4482 bottom: 200px;
4483 right: -36px;
4485 #hns-date-picker::before {
4486 width: calc(100% - 35px);
4488 #theme-selector button::before {
4489 right: unset;
4490 left: 100%;
4492 #theme-selector:hover::after {
4493 content: "";
4494 display: block;
4495 position: absolute;
4496 width: calc(6em - 7px);
4497 height: calc(100% + 2px);
4498 top: 0;
4499 left: calc(100% + 1px);
4501 #anti-kibitzer-toggle {
4502 bottom: 330px;
4505 @media only screen and (max-width: 1080px) {
4506 #width-selector {
4507 right: -30px;
4509 #width-selector button {
4510 display: block;
4512 #text-size-adjustment-ui {
4513 top: 90px;
4514 right: -30px;
4516 #text-size-adjustment-ui button {
4517 display: block;
4518 position: relative;
4520 #text-size-adjustment-ui button.increase {
4521 bottom: 48px;
4523 #text-size-adjustment-ui button.decrease {
4524 top: 50px;
4526 #theme-selector {
4527 top: 46px;
4528 left: -44px;
4530 #theme-tweaker-toggle {
4531 left: -44px;
4532 top: 2px;
4534 #theme-tweaker-toggle button {
4535 height: 2em;
4536 width: 2em;
4537 padding: 7px;
4539 #quick-nav-ui {
4540 right: -54px;
4542 #new-comment-nav-ui {
4543 right: -55px;
4545 #hns-date-picker {
4546 right: -23px;
4548 #hns-date-picker::before {
4549 width: calc(100% - 22px);
4551 #anti-kibitzer-toggle {
4552 right: -54px;
4555 @media only screen and (max-width: 1040px) {
4556 #quick-nav-ui {
4557 right: -49px;
4559 #new-comment-nav-ui {
4560 right: -50px;
4562 #hns-date-picker {
4563 right: -18px;
4565 #hns-date-picker::before {
4566 width: calc(100% - 17px);
4568 #anti-kibitzer-toggle {
4569 right: -50px;
4572 @media only screen and (max-width: 1020px) {
4573 #quick-nav-ui {
4574 right: -20px;
4576 #new-comment-nav-ui {
4577 right: -21px;
4579 #new-comment-nav-ui .new-comments-count::before {
4580 content: "";
4581 position: absolute;
4582 width: 100%;
4583 height: calc(100% + 45px);
4584 z-index: -1;
4585 left: 0;
4586 top: -22px;
4588 #hns-date-picker {
4589 right: 19px;
4591 #hns-date-picker::before {
4592 width: 100%;
4594 #anti-kibitzer-toggle {
4595 right: -20px;
4598 @media only screen and (max-width: 1000px) {
4599 #theme-selector {
4600 left: -17px;
4601 top: 120px;
4602 padding: 3px 0;
4603 max-width: 32px;
4605 #theme-selector button {
4606 margin: 1px 4px;
4608 #text-size-adjustment-ui {
4609 top: 100px;
4610 right: -12px;
4612 @media not screen and (hover: none) {
4613 #quick-nav-ui,
4614 #new-comment-nav-ui,
4615 #new-comment-nav-ui + #hns-date-picker,
4616 #anti-kibitzer-toggle {
4617 opacity: 0.4;
4619 #quick-nav-ui:hover,
4620 #new-comment-nav-ui:hover,
4621 #new-comment-nav-ui + #hns-date-picker:hover,
4622 #new-comment-nav-ui + #hns-date-picker:focus-within,
4623 #new-comment-nav-ui:hover + #hns-date-picker,
4624 #anti-kibitzer-toggle:hover {
4625 opacity: 1.0;
4628 #theme-tweaker-toggle {
4629 top: 70px;
4630 left: -21px;
4634 /**************/
4635 /* PRINT VIEW */
4636 /**************/
4638 @media only print {
4639 .nav-bar {
4640 visibility: hidden;
4641 max-height: 0;
4642 overflow: hidden;
4644 #ui-elements-container {
4645 display: none;
4647 #images-overlay {
4648 display: none;
4650 #images-overlay + #content .post-body img {
4651 visibility: visible;
4653 .comment-controls {
4654 display: none;
4656 #comments-sort-mode-selector {
4657 display: none;
4659 .comment-minimize-button {
4660 display: none;
4662 .post-meta .qualified-linking,
4663 .post-meta .lw2-link {
4664 display: none;
4666 .comment-meta .permalink,
4667 .comment-meta .lw2-link,
4668 .comment-meta .comment-parent-link {
4669 display: none;
4671 .new-comment::before {
4672 display: none;
4674 #content::before {
4675 box-shadow: none;
4679 <?php include("style_mobile_additions.css.php"); ?>
4681 <?php if (isset($argv[2]) && preg_match("/\\.css(.php)?$/", $argv[2])) include($argv[2]); ?>
4683 <?php
4685 ## TO BE IMPLEMENTED:
4686 ## This will be specified via command-line argument; but for now, we just
4687 ## include all available additions (currently, only 'accordius').
4689 $additions = [
4690 'accordius'
4693 foreach ($additions as $addition) {
4694 $potential_includes = [
4695 "style.css.php",
4696 "style_mobile_additions.css.php"
4698 foreach ($potential_includes as $include) {
4699 $include_path = "{$addition}/{$include}";
4700 if (file_exists($include_path))
4701 include ($include_path);