]> cat aescling's git repositories - mastodon.git/blob - app/javascript/styles/components.scss
Merge branch 'sorin-davidoi-swipe-gestures'
[mastodon.git] / app / javascript / styles / components.scss
1 @import 'variables';
2
3 .app-body {
4 -webkit-overflow-scrolling: touch;
5 -ms-overflow-style: -ms-autohiding-scrollbar;
6 }
7
8 .button {
9 background-color: darken($ui-highlight-color, 3%);
10 border: 10px none;
11 border-radius: 4px;
12 box-sizing: border-box;
13 color: $primary-text-color;
14 cursor: pointer;
15 display: inline-block;
16 font-family: inherit;
17 font-size: 14px;
18 font-weight: 500;
19 height: 36px;
20 letter-spacing: 0;
21 line-height: 36px;
22 overflow: hidden;
23 padding: 0 16px;
24 position: relative;
25 text-align: center;
26 text-transform: uppercase;
27 text-decoration: none;
28 text-overflow: ellipsis;
29 transition: all 100ms ease-in;
30 white-space: nowrap;
31 width: auto;
32
33 &:active,
34 &:focus,
35 &:hover {
36 background-color: lighten($ui-highlight-color, 7%);
37 transition: all 200ms ease-out;
38 }
39
40 &:disabled {
41 background-color: $ui-primary-color;
42 cursor: default;
43 }
44
45 &.button-secondary {
46 //
47 }
48
49 &.button--block {
50 display: block;
51 width: 100%;
52 }
53 }
54
55 .column__wrapper {
56 display: flex;
57 flex: 1 1 auto;
58 position: relative;
59 }
60
61 .column-collapsable {
62 position: relative;
63
64 .column-collapsable__content {
65 overflow: auto;
66 transition: 300ms ease;
67 opacity: 1;
68 max-height: 70vh;
69 }
70
71 &.collapsed .column-collapsable__content {
72 height: 0 !important;
73 opacity: 0;
74 }
75
76 .column-collapsable__button {
77 color: $primary-text-color;
78 background: lighten($ui-base-color, 8%);
79
80 &:hover {
81 color: $primary-text-color;
82 background: lighten($ui-base-color, 8%);
83 }
84 }
85
86 &.collapsed .column-collapsable__button {
87 color: $ui-primary-color;
88 background: lighten($ui-base-color, 4%);
89 }
90 }
91
92 .column-icon {
93 background: lighten($ui-base-color, 4%);
94 color: $ui-primary-color;
95 cursor: pointer;
96 font-size: 16px;
97 padding: 15px;
98 position: absolute;
99 right: 0;
100 top: -48px;
101 z-index: 3;
102
103 &:hover {
104 color: lighten($ui-primary-color, 7%);
105 }
106 }
107
108 .icon-button {
109 display: inline-block;
110 padding: 0;
111 color: lighten($ui-base-color, 26%);
112 border: none;
113 background: transparent;
114 cursor: pointer;
115 transition: color 100ms ease-in;
116
117 &:hover,
118 &:active,
119 &:focus {
120 color: lighten($ui-base-color, 33%);
121 transition: color 200ms ease-out;
122 }
123
124 &.disabled {
125 color: lighten($ui-base-color, 13%);
126 cursor: default;
127 }
128
129 &.active {
130 color: $ui-highlight-color;
131 }
132
133 &::-moz-focus-inner {
134 border: 0;
135 }
136
137 &::-moz-focus-inner,
138 &:focus,
139 &:active {
140 outline: 0 !important;
141 }
142
143 &.inverted {
144 color: lighten($ui-base-color, 33%);
145
146 &:hover,
147 &:active,
148 &:focus {
149 color: lighten($ui-base-color, 26%);
150 }
151
152 &.active {
153 color: $ui-highlight-color;
154 }
155
156 &.disabled {
157 color: $ui-primary-color;
158 }
159 }
160
161 &.overlayed {
162 box-sizing: content-box;
163 background: rgba($base-overlay-background, 0.6);
164 color: rgba($primary-text-color, 0.7);
165 border-radius: 4px;
166 padding: 2px;
167
168 &:hover {
169 background: rgba($base-overlay-background, 0.9);
170 }
171 }
172 }
173
174 .text-icon-button {
175 color: lighten($ui-base-color, 33%);
176 border: none;
177 background: transparent;
178 cursor: pointer;
179 font-weight: 600;
180 font-size: 11px;
181 padding: 0 3px;
182 line-height: 27px;
183 outline: 0;
184 transition: color 100ms ease-in;
185
186 &:hover,
187 &:active,
188 &:focus {
189 color: lighten($ui-base-color, 26%);
190 transition: color 200ms ease-out;
191 }
192
193 &.disabled {
194 color: lighten($ui-base-color, 13%);
195 cursor: default;
196 }
197
198 &.active {
199 color: $ui-highlight-color;
200 }
201
202 &::-moz-focus-inner {
203 border: 0;
204 }
205
206 &::-moz-focus-inner,
207 &:focus,
208 &:active {
209 outline: 0 !important;
210 }
211 }
212
213 .dropdown--active .icon-button {
214 color: $ui-highlight-color;
215 }
216
217 .dropdown--active::after {
218 content: "";
219 display: block;
220 position: absolute;
221 width: 0;
222 height: 0;
223 border-style: solid;
224 border-width: 0 4.5px 7.8px;
225 border-color: transparent transparent $ui-secondary-color;
226 bottom: 8px;
227 right: 104px;
228 }
229
230 .invisible {
231 font-size: 0;
232 line-height: 0;
233 display: inline-block;
234 width: 0;
235 }
236
237 .ellipsis {
238 &::after {
239 content: "…";
240 }
241 }
242
243 .lightbox .icon-button {
244 color: $ui-base-color;
245 }
246
247 .compose-form {
248 padding: 10px;
249 }
250
251 .compose-form__warning {
252 color: darken($ui-secondary-color, 65%);
253 margin-bottom: 15px;
254 background: $ui-primary-color;
255 box-shadow: 0 2px 6px rgba($base-shadow-color, 0.3);
256 padding: 8px 10px;
257 border-radius: 4px;
258 font-size: 13px;
259 font-weight: 400;
260
261 strong {
262 color: darken($ui-secondary-color, 65%);
263 font-weight: 500;
264 }
265
266 a {
267 color: darken($ui-primary-color, 33%);
268 font-weight: 500;
269 text-decoration: underline;
270
271 &:hover,
272 &:active,
273 &:focus {
274 text-decoration: none;
275 }
276 }
277 }
278
279 .compose-form__modifiers {
280 color: $ui-base-color;
281 font-family: inherit;
282 font-size: 14px;
283 background: $simple-background-color;
284 border-radius: 0 0 4px;
285 }
286
287 .compose-form__buttons-wrapper {
288 display: flex;
289 justify-content: space-between;
290 }
291
292 .compose-form__buttons {
293 padding: 10px;
294 background: darken($simple-background-color, 8%);
295 box-shadow: inset 0 5px 5px rgba($base-shadow-color, 0.05);
296 border-radius: 0 0 4px 4px;
297 display: flex;
298
299 .icon-button {
300 box-sizing: content-box;
301 padding: 0 3px;
302 }
303 }
304
305 .compose-form__upload-button-icon {
306 line-height: 27px;
307 }
308
309 .compose-form__sensitive-button {
310 display: none;
311
312 &.compose-form__sensitive-button--visible {
313 display: block;
314 }
315
316 .compose-form__sensitive-button__icon {
317 line-height: 27px;
318 }
319 }
320
321 .compose-form__upload-wrapper {
322 overflow: hidden;
323 }
324
325 .compose-form__uploads-wrapper {
326 display: flex;
327 padding: 5px;
328 }
329
330 .compose-form__upload {
331 flex: 1 1 0;
332 margin: 5px;
333 }
334
335 .compose-form__upload-thumbnail {
336 border-radius: 4px;
337 background-position: center;
338 background-size: cover;
339 background-repeat: no-repeat;
340 height: 100px;
341 width: 100%;
342 }
343
344 .compose-form__upload-cancel {
345 background-size: cover;
346 border-radius: 4px;
347 height: 100px;
348 width: 100px;
349 }
350
351 .compose-form__label {
352 display: block;
353 line-height: 24px;
354 vertical-align: middle;
355
356 &.with-border {
357 border-top: 1px solid $ui-base-color;
358 padding-top: 10px;
359 }
360
361 .compose-form__label__text {
362 display: inline-block;
363 vertical-align: middle;
364 margin-bottom: 14px;
365 margin-left: 8px;
366 color: $ui-primary-color;
367 }
368 }
369
370 .compose-form__textarea,
371 .follow-form__input {
372 background: $simple-background-color;
373
374 &:disabled {
375 background: $ui-secondary-color;
376 }
377 }
378
379 .compose-form__autosuggest-wrapper {
380 position: relative;
381
382 .emoji-picker__dropdown {
383 position: absolute;
384 right: 5px;
385 top: 5px;
386
387 &.dropdown--active::after {
388 border-color: transparent transparent $base-border-color;
389 bottom: -1px;
390 right: 8px;
391 }
392 }
393 }
394
395 .compose-form__publish {
396 display: flex;
397 min-width: 0;
398 }
399
400 .compose-form__publish-button-wrapper {
401 overflow: hidden;
402 padding-top: 10px;
403 }
404
405 .emojione {
406 display: inline-block;
407 font-size: inherit;
408 vertical-align: middle;
409 margin: -.2ex .15em .2ex;
410 width: 16px;
411 height: 16px;
412
413 img {
414 width: auto;
415 }
416 }
417
418 .reply-indicator {
419 border-radius: 4px 4px 0 0;
420 position: relative;
421 bottom: -2px;
422 background: $ui-primary-color;
423 padding: 10px;
424 }
425
426 .reply-indicator__header {
427 margin-bottom: 5px;
428 overflow: hidden;
429 }
430
431 .reply-indicator__cancel {
432 float: right;
433 line-height: 24px;
434 }
435
436 .reply-indicator__display-name {
437 color: $ui-base-color;
438 display: block;
439 max-width: 100%;
440 line-height: 24px;
441 overflow: hidden;
442 padding-right: 25px;
443 text-decoration: none;
444 }
445
446 .reply-indicator__display-avatar {
447 float: left;
448 margin-right: 5px;
449 }
450
451 .status__content--with-action {
452 cursor: pointer;
453 }
454
455 .status__content,
456 .reply-indicator__content {
457 font-size: 15px;
458 line-height: 20px;
459 word-wrap: break-word;
460 font-weight: 400;
461 overflow: hidden;
462 white-space: pre-wrap;
463
464 .emojione {
465 width: 18px;
466 height: 18px;
467 }
468
469 p {
470 margin-bottom: 20px;
471
472 &:last-child {
473 margin-bottom: 0;
474 }
475 }
476
477 a {
478 color: $ui-secondary-color;
479 text-decoration: none;
480
481 &:hover {
482 text-decoration: underline;
483
484 .fa {
485 color: lighten($ui-base-color, 40%);
486 }
487 }
488
489 &.mention {
490 &:hover {
491 text-decoration: none;
492
493 span {
494 text-decoration: underline;
495 }
496 }
497 }
498
499 .fa {
500 color: lighten($ui-base-color, 30%);
501 }
502 }
503
504 .status__content__spoiler-link {
505 background: lighten($ui-base-color, 30%);
506
507 &:hover {
508 background: lighten($ui-base-color, 33%);
509 text-decoration: none;
510 }
511 }
512
513 .status__content__text {
514 display: none;
515
516 &.status__content__text--visible {
517 display: block;
518 }
519 }
520 }
521
522 .status__content__spoiler-link {
523 display: inline-block;
524 border-radius: 2px;
525 background: transparent;
526 border: 0;
527 color: lighten($ui-base-color, 8%);
528 font-weight: 500;
529 font-size: 11px;
530 padding: 0 6px;
531 text-transform: uppercase;
532 line-height: inherit;
533 cursor: pointer;
534 }
535
536 .status__prepend-icon-wrapper {
537 left: -26px;
538 position: absolute;
539 }
540
541 .status {
542 padding: 8px 10px;
543 padding-left: 68px;
544 position: relative;
545 min-height: 48px;
546 border-bottom: 1px solid lighten($ui-base-color, 8%);
547 cursor: default;
548
549 @keyframes fade {
550 0% { opacity: 0; }
551 100% { opacity: 1; }
552 }
553
554 opacity: 1;
555 animation: fade 150ms linear;
556
557 &.status-direct {
558 background: lighten($ui-base-color, 8%);
559
560 .icon-button.disabled {
561 color: lighten($ui-base-color, 16%);
562 }
563 }
564
565 &.light {
566 .status__relative-time {
567 color: $ui-primary-color;
568 }
569
570 .status__display-name {
571 color: $ui-base-color;
572 }
573
574 .display-name {
575 strong {
576 color: $ui-base-color;
577 }
578
579 span {
580 color: $ui-primary-color;
581 }
582 }
583
584 .status__content {
585 color: $ui-base-color;
586
587 a {
588 color: $ui-highlight-color;
589 }
590
591 a.status__content__spoiler-link {
592 color: $primary-text-color;
593 background: $ui-primary-color;
594
595 &:hover {
596 background: lighten($ui-primary-color, 8%);
597 }
598 }
599 }
600 }
601 }
602
603 .notification-favourite {
604 .status.status-direct {
605 background: transparent;
606
607 .icon-button.disabled {
608 color: lighten($ui-base-color, 13%);
609 }
610 }
611 }
612
613 .status__relative-time {
614 color: lighten($ui-base-color, 26%);
615 float: right;
616 font-size: 14px;
617 }
618
619 .status__display-name {
620 color: lighten($ui-base-color, 26%);
621 }
622
623 .status__info .status__display-name {
624 display: block;
625 max-width: 100%;
626 padding-right: 25px;
627 }
628
629 .status__info {
630 font-size: 15px;
631 }
632
633 .status-check-box {
634 border-bottom: 1px solid lighten($ui-base-color, 8%);
635 display: flex;
636
637 .status__content {
638 background: lighten($ui-base-color, 4%);
639 flex: 1 1 auto;
640 padding: 10px;
641 }
642 }
643
644 .status-check-box-toggle {
645 align-items: center;
646 display: flex;
647 flex: 0 0 auto;
648 justify-content: center;
649 padding: 10px;
650 }
651
652 .status__prepend {
653 margin-left: 68px;
654 color: lighten($ui-base-color, 26%);
655 padding: 8px 0;
656 padding-bottom: 2px;
657 font-size: 14px;
658 position: relative;
659
660 .status__display-name strong {
661 color: lighten($ui-base-color, 26%);
662 }
663 }
664
665 .status__action-bar {
666 align-items: center;
667 display: flex;
668 margin-top: 10px;
669 }
670
671 .status__action-bar-button {
672 float: left;
673 margin-right: 18px;
674 }
675
676 .status__action-bar-dropdown {
677 float: left;
678 height: 18px;
679 width: 18px;
680 }
681
682 .detailed-status__action-bar-dropdown {
683 flex: 1 1 auto;
684 display: flex;
685 align-items: center;
686 justify-content: center;
687 position: relative;
688
689 .dropdown {
690 display: block;
691 width: 18px;
692 height: 18px;
693 }
694
695 .dropdown--active {
696 .dropdown__content.dropdown__left {
697 left: 20px;
698 right: initial;
699 }
700
701 &::after {
702 bottom: initial;
703 margin-left: 7px;
704 margin-top: -7px;
705 right: initial;
706 }
707 }
708 }
709
710 .detailed-status {
711 background: lighten($ui-base-color, 4%);
712 padding: 14px 10px;
713
714 .status__content {
715 font-size: 19px;
716 line-height: 24px;
717
718 .emojione {
719 width: 22px;
720 height: 22px;
721 }
722 }
723 }
724
725 .detailed-status__meta {
726 margin-top: 15px;
727 color: lighten($ui-base-color, 26%);
728 font-size: 14px;
729 line-height: 18px;
730 }
731
732 .detailed-status__action-bar {
733 background: lighten($ui-base-color, 4%);
734 border-top: 1px solid lighten($ui-base-color, 8%);
735 border-bottom: 1px solid lighten($ui-base-color, 8%);
736 display: flex;
737 flex-direction: row;
738 padding: 10px 0;
739 }
740
741 .detailed-status__link {
742 color: inherit;
743 text-decoration: none;
744 }
745
746 .detailed-status__favorites,
747 .detailed-status__reblogs {
748 display: inline-block;
749 font-weight: 500;
750 font-size: 12px;
751 margin-left: 6px;
752 }
753
754 .reply-indicator__content {
755 color: $ui-base-color;
756 font-size: 14px;
757
758 a {
759 color: lighten($ui-base-color, 20%);
760 }
761 }
762
763 .account {
764 padding: 10px;
765 border-bottom: 1px solid lighten($ui-base-color, 8%);
766
767 .account__display-name {
768 flex: 1 1 auto;
769 display: block;
770 color: $ui-primary-color;
771 overflow: hidden;
772 text-decoration: none;
773 font-size: 14px;
774 }
775 }
776
777 .account__wrapper {
778 display: flex;
779 }
780
781 .account__avatar-wrapper {
782 float: left;
783 margin-left: 12px;
784 margin-right: 12px;
785 }
786
787 .account__avatar {
788 @include avatar-radius();
789 position: relative;
790 cursor: pointer;
791
792 &-inline {
793 display: inline-block;
794 vertical-align: middle;
795 margin-right: 5px;
796 }
797 }
798
799 .account__avatar-overlay {
800 @include avatar-size(48px);
801
802 &-base {
803 @include avatar-radius();
804 @include avatar-size(36px);
805 }
806
807 &-overlay {
808 @include avatar-radius();
809 @include avatar-size(24px);
810
811 position: absolute;
812 bottom: 0;
813 right: 0;
814 z-index: 1;
815 }
816 }
817
818 .account__relationship {
819 height: 18px;
820 padding: 10px;
821 }
822
823 .account__header {
824 flex: 0 0 auto;
825 background: lighten($ui-base-color, 4%);
826 text-align: center;
827 background-size: cover;
828 background-position: center;
829 position: relative;
830
831 & > div {
832 background: rgba(lighten($ui-base-color, 4%), 0.9);
833 padding: 20px 10px;
834 }
835
836 .account__header__content {
837 color: $ui-secondary-color;
838 }
839
840 .account__header__display-name {
841 color: $primary-text-color;
842 display: inline-block;
843 font-size: 20px;
844 line-height: 27px;
845 font-weight: 500;
846 }
847
848 .account__header__username {
849 color: $ui-highlight-color;
850 font-size: 14px;
851 font-weight: 400;
852 display: block;
853 margin-bottom: 10px;
854 }
855 }
856
857 .account__header__content {
858 color: $ui-primary-color;
859 font-size: 14px;
860 font-weight: 400;
861 overflow: hidden;
862 word-break: normal;
863 word-wrap: break-word;
864
865 p {
866 margin-bottom: 20px;
867
868 &:last-child {
869 margin-bottom: 0;
870 }
871 }
872
873 a {
874 color: inherit;
875 text-decoration: underline;
876
877 &:hover {
878 text-decoration: none;
879 }
880 }
881 }
882
883 .account__header__display-name {
884 .emojione {
885 width: 25px;
886 height: 25px;
887 }
888 }
889
890 .account__action-bar {
891 border-top: 1px solid lighten($ui-base-color, 8%);
892 border-bottom: 1px solid lighten($ui-base-color, 8%);
893 line-height: 36px;
894 overflow: hidden;
895 flex: 0 0 auto;
896 display: flex;
897 }
898
899 .account__action-bar-dropdown {
900 flex: 1 1 auto;
901 padding: 10px;
902
903 .dropdown--active {
904 .dropdown__content.dropdown__right {
905 left: 6px;
906 right: initial;
907 }
908
909 &::after {
910 bottom: initial;
911 margin-left: 11px;
912 margin-top: -7px;
913 right: initial;
914 }
915 }
916 }
917
918 .account__action-bar-links {
919 display: flex;
920 flex: 1 1 auto;
921 line-height: 18px;
922 }
923
924 .account__action-bar__tab {
925 text-decoration: none;
926 overflow: hidden;
927 width: 80px;
928 border-left: 1px solid lighten($ui-base-color, 8%);
929 padding: 10px 5px;
930
931 & > span {
932 display: block;
933 text-transform: uppercase;
934 font-size: 11px;
935 color: $ui-primary-color;
936 }
937
938 strong {
939 display: block;
940 font-size: 15px;
941 font-weight: 500;
942 color: $primary-text-color;
943 }
944
945 abbr {
946 color: lighten($ui-base-color, 26%);
947 }
948 }
949
950 .account__header__avatar {
951 background-size: 90px 90px;
952 display: block;
953 height: 90px;
954 margin: 0 auto 10px;
955 overflow: hidden;
956 width: 90px;
957 }
958
959 .account-authorize {
960 padding: 14px 10px;
961
962 .detailed-status__display-name {
963 display: block;
964 margin-bottom: 15px;
965 overflow: hidden;
966 }
967 }
968
969 .account-authorize__avatar {
970 float: left;
971 margin-right: 10px;
972 }
973
974 .status__display-name,
975 .status__relative-time,
976 .detailed-status__display-name,
977 .detailed-status__datetime,
978 .detailed-status__application,
979 .account__display-name {
980 text-decoration: none;
981 }
982
983 .status__display-name,
984 .account__display-name {
985 strong {
986 color: $primary-text-color;
987 }
988
989 &.muted {
990 .emojione {
991 opacity: 0.5;
992 }
993 }
994 }
995
996 .status__display-name,
997 .reply-indicator__display-name,
998 .detailed-status__display-name,
999 .account__display-name {
1000 &:hover strong {
1001 text-decoration: underline;
1002 }
1003 }
1004
1005 .account__display-name strong {
1006 display: block;
1007 }
1008
1009 .detailed-status__application,
1010 .detailed-status__datetime {
1011 color: inherit;
1012 }
1013
1014 .detailed-status__display-name {
1015 color: $ui-secondary-color;
1016 display: block;
1017 line-height: 24px;
1018 margin-bottom: 15px;
1019 overflow: hidden;
1020
1021 strong,
1022 span {
1023 display: block;
1024 }
1025
1026 strong {
1027 font-size: 16px;
1028 color: $primary-text-color;
1029 }
1030 }
1031
1032 .detailed-status__display-avatar {
1033 float: left;
1034 margin-right: 10px;
1035 }
1036
1037 .status__avatar {
1038 height: 48px;
1039 left: 10px;
1040 position: absolute;
1041 top: 10px;
1042 width: 48px;
1043 }
1044
1045 .muted {
1046 .status__content p,
1047 .status__content a {
1048 color: lighten($ui-base-color, 26%);
1049 }
1050
1051 .status__display-name strong {
1052 color: lighten($ui-base-color, 26%);
1053 }
1054
1055 .status__avatar {
1056 opacity: 0.5;
1057 }
1058
1059 a.status__content__spoiler-link {
1060 background: lighten($ui-base-color, 26%);
1061 color: lighten($ui-base-color, 4%);
1062
1063 &:hover {
1064 background: lighten($ui-base-color, 29%);
1065 text-decoration: none;
1066 }
1067 }
1068 }
1069
1070 .notification__message {
1071 margin-left: 68px;
1072 padding: 8px 0;
1073 padding-bottom: 0;
1074 cursor: default;
1075 color: $ui-primary-color;
1076 font-size: 15px;
1077 position: relative;
1078
1079 .fa {
1080 color: $ui-highlight-color;
1081 }
1082 }
1083
1084 .notification__favourite-icon-wrapper {
1085 left: -26px;
1086 position: absolute;
1087
1088 .star-icon {
1089 color: $gold-star;
1090 }
1091 }
1092
1093 .star-icon.active {
1094 color: $gold-star;
1095 }
1096
1097 .notification__display-name {
1098 color: inherit;
1099 font-weight: 500;
1100 text-decoration: none;
1101
1102 &:hover {
1103 color: $primary-text-color;
1104 text-decoration: underline;
1105 }
1106 }
1107
1108 .display-name {
1109 display: block;
1110 max-width: 100%;
1111 overflow: hidden;
1112 text-overflow: ellipsis;
1113 white-space: nowrap;
1114 }
1115
1116 .display-name__html {
1117 font-weight: 500;
1118 }
1119
1120 .display-name__account {
1121 font-size: 14px;
1122 }
1123
1124 .status__relative-time,
1125 .detailed-status__datetime {
1126 &:hover {
1127 text-decoration: underline;
1128 }
1129 }
1130
1131 .image-loader {
1132 position: relative;
1133 }
1134
1135 .image-loader__preview-img {
1136 position: absolute;
1137 top: 0;
1138 left: 0;
1139 width: 100%;
1140 height: 100%;
1141 filter: blur(2px);
1142 }
1143
1144 .media-modal img.image-loader__preview-img {
1145 width: 100%;
1146 height: 100%;
1147 }
1148
1149 .navigation-bar {
1150 padding: 10px;
1151 display: flex;
1152 flex-shrink: 0;
1153 cursor: default;
1154 color: $ui-primary-color;
1155
1156 strong {
1157 color: $primary-text-color;
1158 }
1159
1160 .permalink {
1161 text-decoration: none;
1162 }
1163 }
1164
1165 .navigation-bar__profile {
1166 flex: 1 1 auto;
1167 margin-left: 8px;
1168 }
1169
1170 .navigation-bar__profile-account {
1171 display: block;
1172 font-weight: 500;
1173 }
1174
1175 .navigation-bar__profile-edit {
1176 color: inherit;
1177 text-decoration: none;
1178 }
1179
1180 .dropdown {
1181 display: inline-block;
1182 }
1183
1184 .dropdown__content {
1185 display: none;
1186 position: absolute;
1187 }
1188
1189 .dropdown__sep {
1190 border-bottom: 1px solid darken($ui-secondary-color, 8%);
1191 margin: 5px 7px 6px;
1192 padding-top: 1px;
1193 }
1194
1195 .dropdown--active .dropdown__content {
1196 display: block;
1197 line-height: 18px;
1198 max-width: 311px;
1199 right: 0;
1200 text-align: left;
1201 z-index: 9999;
1202
1203 & > ul {
1204 list-style: none;
1205 background: $ui-secondary-color;
1206 padding: 4px 0;
1207 border-radius: 4px;
1208 box-shadow: 0 0 15px rgba($base-shadow-color, 0.4);
1209 min-width: 140px;
1210 position: relative;
1211 }
1212
1213 &.dropdown__right {
1214 right: 0;
1215 }
1216
1217 &.dropdown__left {
1218 & > ul {
1219 left: -98px;
1220 }
1221 }
1222
1223 & > ul > li > a {
1224 font-size: 13px;
1225 line-height: 18px;
1226 display: block;
1227 padding: 4px 14px;
1228 box-sizing: border-box;
1229 text-decoration: none;
1230 background: $ui-secondary-color;
1231 color: $ui-base-color;
1232 overflow: hidden;
1233 text-overflow: ellipsis;
1234 white-space: nowrap;
1235
1236 &:focus {
1237 outline: 0;
1238 }
1239
1240 &:hover {
1241 background: $ui-highlight-color;
1242 color: $ui-secondary-color;
1243 }
1244 }
1245 }
1246
1247 .dropdown__icon {
1248 vertical-align: middle;
1249 }
1250
1251 .static-content {
1252 padding: 10px;
1253 padding-top: 20px;
1254 color: lighten($ui-base-color, 26%);
1255
1256 h1 {
1257 font-size: 16px;
1258 font-weight: 500;
1259 margin-bottom: 40px;
1260 text-align: center;
1261 }
1262
1263 p {
1264 font-size: 13px;
1265 margin-bottom: 20px;
1266 }
1267 }
1268
1269 .columns-area {
1270 display: flex;
1271 flex: 1 1 auto;
1272 flex-direction: row;
1273 justify-content: flex-start;
1274 overflow-x: auto;
1275 position: relative;
1276 }
1277
1278 @media screen and (min-width: 360px) {
1279 .columns-area {
1280 padding: 10px;
1281 }
1282 }
1283
1284 .column {
1285 width: 330px;
1286 position: relative;
1287 box-sizing: border-box;
1288 display: flex;
1289 flex-direction: column;
1290
1291 > .scrollable {
1292 background: $ui-base-color;
1293 }
1294 }
1295
1296 .ui {
1297 flex: 0 0 auto;
1298 display: flex;
1299 flex-direction: column;
1300 width: 100%;
1301 height: 100%;
1302 background: darken($ui-base-color, 7%);
1303 }
1304
1305 .drawer {
1306 width: 300px;
1307 box-sizing: border-box;
1308 display: flex;
1309 flex-direction: column;
1310 overflow-y: hidden;
1311 }
1312
1313 .drawer__tab {
1314 display: block;
1315 flex: 1 1 auto;
1316 padding: 15px;
1317 padding-bottom: 13px;
1318 color: $ui-primary-color;
1319 text-decoration: none;
1320 text-align: center;
1321 font-size: 16px;
1322 border-bottom: 2px solid transparent;
1323 }
1324
1325 .column,
1326 .drawer {
1327 flex: 1 1 100%;
1328 overflow: hidden;
1329 @supports(display: grid) { // hack to fix Chrome <57
1330 contain: strict;
1331 }
1332 }
1333
1334 @media screen and (min-width: 360px) {
1335 .tabs-bar {
1336 margin: 10px;
1337 margin-bottom: 0;
1338 }
1339
1340 .search {
1341 margin-bottom: 10px;
1342 }
1343 }
1344
1345 @media screen and (max-width: 1024px) {
1346 .column,
1347 .drawer {
1348 width: 100%;
1349 padding: 0;
1350 }
1351
1352 .columns-area {
1353 flex-direction: column;
1354 }
1355
1356 .search__input,
1357 .autosuggest-textarea__textarea {
1358 font-size: 16px;
1359 }
1360 }
1361
1362 @media screen and (min-width: 1025px) {
1363 .columns-area {
1364 padding: 0;
1365 }
1366
1367 .column,
1368 .drawer {
1369 flex: 0 0 auto;
1370 padding: 10px;
1371 padding-left: 5px;
1372 padding-right: 5px;
1373
1374 &:first-child {
1375 padding-left: 10px;
1376 }
1377
1378 &:last-child {
1379 padding-right: 10px;
1380 }
1381 }
1382
1383 .columns-area > div {
1384 .column,
1385 .drawer {
1386 padding-left: 5px;
1387 padding-right: 5px;
1388 }
1389 }
1390 }
1391
1392 .drawer__pager {
1393 box-sizing: border-box;
1394 padding: 0;
1395 flex-grow: 1;
1396 position: relative;
1397 overflow: hidden;
1398 display: flex;
1399 }
1400
1401 .drawer__inner {
1402 position: absolute;
1403 top: 0;
1404 left: 0;
1405 background: lighten($ui-base-color, 13%);
1406 box-sizing: border-box;
1407 padding: 0;
1408 display: flex;
1409 flex-direction: column;
1410 overflow: hidden;
1411 overflow-y: auto;
1412 width: 100%;
1413 height: 100%;
1414
1415 &.darker {
1416 background: $ui-base-color;
1417 }
1418 }
1419
1420 .pseudo-drawer {
1421 background: lighten($ui-base-color, 13%);
1422 font-size: 13px;
1423 text-align: left;
1424 }
1425
1426 .drawer__header {
1427 flex: 0 0 auto;
1428 font-size: 16px;
1429 background: lighten($ui-base-color, 8%);
1430 margin-bottom: 10px;
1431 display: flex;
1432 flex-direction: row;
1433
1434 a {
1435 transition: background 100ms ease-in;
1436
1437 &:hover {
1438 background: lighten($ui-base-color, 3%);
1439 transition: background 200ms ease-out;
1440 }
1441 }
1442 }
1443
1444 .tabs-bar {
1445 display: flex;
1446 background: lighten($ui-base-color, 8%);
1447 flex: 0 0 auto;
1448 overflow-y: auto;
1449 }
1450
1451 .tabs-bar__link {
1452 display: block;
1453 flex: 1 1 auto;
1454 padding: 15px 10px;
1455 color: $primary-text-color;
1456 text-decoration: none;
1457 text-align: center;
1458 font-size: 14px;
1459 font-weight: 500;
1460 border-bottom: 2px solid lighten($ui-base-color, 8%);
1461 transition: all 200ms linear;
1462
1463 .fa {
1464 font-weight: 400;
1465 font-size: 16px;
1466 }
1467
1468 &.active {
1469 border-bottom: 2px solid $ui-highlight-color;
1470 color: $ui-highlight-color;
1471 }
1472
1473 &:hover,
1474 &:focus,
1475 &:active {
1476 @media screen and (min-width: 1025px) {
1477 background: lighten($ui-base-color, 14%);
1478 transition: all 100ms linear;
1479 }
1480 }
1481
1482 span {
1483 margin-left: 5px;
1484 display: none;
1485 }
1486 }
1487
1488 @media screen and (min-width: 600px) {
1489 .tabs-bar__link {
1490 span {
1491 display: inline;
1492 }
1493 }
1494 }
1495
1496 @media screen and (min-width: 1025px) {
1497 .tabs-bar {
1498 display: none;
1499 }
1500 }
1501
1502 .scrollable {
1503 overflow-y: scroll;
1504 overflow-x: hidden;
1505 flex: 1 1 auto;
1506 backface-visibility: hidden;
1507 -webkit-overflow-scrolling: touch;
1508 @supports(display: grid) { // hack to fix Chrome <57
1509 contain: strict;
1510 }
1511
1512 &.optionally-scrollable {
1513 overflow-y: auto;
1514 }
1515 }
1516
1517 .column-back-button {
1518 background: lighten($ui-base-color, 4%);
1519 color: $ui-highlight-color;
1520 cursor: pointer;
1521 flex: 0 0 auto;
1522 font-size: 16px;
1523 padding: 15px;
1524 z-index: 3;
1525
1526 &:hover {
1527 text-decoration: underline;
1528 }
1529 }
1530
1531 .column-header__back-button {
1532 background: lighten($ui-base-color, 4%);
1533 border: 0;
1534 font-family: inherit;
1535 color: $ui-highlight-color;
1536 cursor: pointer;
1537 flex: 0 0 auto;
1538 font-size: 16px;
1539 padding: 0 5px 0 0;
1540 z-index: 3;
1541
1542 &:hover {
1543 text-decoration: underline;
1544 }
1545 }
1546
1547 .column-back-button__icon {
1548 display: inline-block;
1549 margin-right: 5px;
1550 }
1551
1552 .column-back-button--slim {
1553 position: relative;
1554 }
1555
1556 .column-back-button--slim-button {
1557 cursor: pointer;
1558 flex: 0 0 auto;
1559 font-size: 16px;
1560 padding: 15px;
1561 position: absolute;
1562 right: 0;
1563 top: -48px;
1564 }
1565
1566 .react-toggle {
1567 display: inline-block;
1568 position: relative;
1569 cursor: pointer;
1570 background-color: transparent;
1571 border: 0;
1572 padding: 0;
1573 user-select: none;
1574 -webkit-tap-highlight-color: rgba($base-overlay-background, 0);
1575 -webkit-tap-highlight-color: transparent;
1576 }
1577
1578 .react-toggle-screenreader-only {
1579 border: 0;
1580 clip: rect(0 0 0 0);
1581 height: 1px;
1582 margin: -1px;
1583 overflow: hidden;
1584 padding: 0;
1585 position: absolute;
1586 width: 1px;
1587 }
1588
1589 .react-toggle--disabled {
1590 cursor: not-allowed;
1591 opacity: 0.5;
1592 transition: opacity 0.25s;
1593 }
1594
1595 .react-toggle-track {
1596 width: 50px;
1597 height: 24px;
1598 padding: 0;
1599 border-radius: 30px;
1600 background-color: $ui-base-color;
1601 transition: all 0.2s ease;
1602 }
1603
1604 .react-toggle:hover:not(.react-toggle--disabled) .react-toggle-track {
1605 background-color: darken($ui-base-color, 10%);
1606 }
1607
1608 .react-toggle--checked .react-toggle-track {
1609 background-color: $ui-highlight-color;
1610 }
1611
1612 .react-toggle--checked:hover:not(.react-toggle--disabled) .react-toggle-track {
1613 background-color: lighten($ui-highlight-color, 10%);
1614 }
1615
1616 .react-toggle-track-check {
1617 position: absolute;
1618 width: 14px;
1619 height: 10px;
1620 top: 0;
1621 bottom: 0;
1622 margin-top: auto;
1623 margin-bottom: auto;
1624 line-height: 0;
1625 left: 8px;
1626 opacity: 0;
1627 transition: opacity 0.25s ease;
1628 }
1629
1630 .react-toggle--checked .react-toggle-track-check {
1631 opacity: 1;
1632 transition: opacity 0.25s ease;
1633 }
1634
1635 .react-toggle-track-x {
1636 position: absolute;
1637 width: 10px;
1638 height: 10px;
1639 top: 0;
1640 bottom: 0;
1641 margin-top: auto;
1642 margin-bottom: auto;
1643 line-height: 0;
1644 right: 10px;
1645 opacity: 1;
1646 transition: opacity 0.25s ease;
1647 }
1648
1649 .react-toggle--checked .react-toggle-track-x {
1650 opacity: 0;
1651 }
1652
1653 .react-toggle-thumb {
1654 transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1) 0ms;
1655 position: absolute;
1656 top: 1px;
1657 left: 1px;
1658 width: 22px;
1659 height: 22px;
1660 border: 1px solid $ui-base-color;
1661 border-radius: 50%;
1662 background-color: darken($simple-background-color, 2%);
1663 box-sizing: border-box;
1664 transition: all 0.25s ease;
1665 }
1666
1667 .react-toggle--checked .react-toggle-thumb {
1668 left: 27px;
1669 border-color: $ui-highlight-color;
1670 }
1671
1672 .column-link {
1673 background: lighten($ui-base-color, 8%);
1674 color: $primary-text-color;
1675 display: block;
1676 font-size: 16px;
1677 padding: 15px;
1678 text-decoration: none;
1679
1680 &:hover {
1681 background: lighten($ui-base-color, 11%);
1682 }
1683
1684 &.hidden-on-mobile {
1685 @media screen and (max-width: 1024px) {
1686 display: none;
1687 }
1688 }
1689 }
1690
1691 .column-link__icon {
1692 display: inline-block;
1693 margin-right: 5px;
1694 }
1695
1696 .column-subheading {
1697 background: $ui-base-color;
1698 color: lighten($ui-base-color, 26%);
1699 padding: 8px 20px;
1700 font-size: 12px;
1701 font-weight: 500;
1702 text-transform: uppercase;
1703 cursor: default;
1704 }
1705
1706 .autosuggest-textarea,
1707 .spoiler-input {
1708 position: relative;
1709 }
1710
1711 .autosuggest-textarea__textarea,
1712 .spoiler-input__input {
1713 display: block;
1714 box-sizing: border-box;
1715 width: 100%;
1716 margin: 0;
1717 color: $ui-base-color;
1718 padding: 10px;
1719 font-family: inherit;
1720 font-size: 14px;
1721 resize: vertical;
1722 border: 0;
1723 outline: 0;
1724
1725 &:focus {
1726 outline: 0;
1727 }
1728
1729 @media screen and (max-width: 600px) {
1730 font-size: 16px;
1731 }
1732 }
1733
1734 .spoiler-input__input {
1735 border-radius: 4px;
1736 }
1737
1738 .autosuggest-textarea__textarea {
1739 min-height: 100px;
1740 background: $simple-background-color;
1741 border-radius: 4px 4px 0 0;
1742 padding-bottom: 0;
1743 padding-right: 10px + 22px;
1744 resize: none;
1745
1746 @media screen and (max-width: 600px) {
1747 height: 100px !important; // prevent auto-resize textarea
1748 resize: vertical;
1749 }
1750 }
1751
1752 .autosuggest-textarea__suggestions {
1753 display: none;
1754 position: absolute;
1755 top: 100%;
1756 width: 100%;
1757 z-index: 99;
1758 box-shadow: 0 0 15px rgba($base-shadow-color, 0.4);
1759 background: $ui-secondary-color;
1760 color: $ui-base-color;
1761 font-size: 14px;
1762
1763 &.autosuggest-textarea__suggestions--visible {
1764 display: block;
1765 }
1766 }
1767
1768 .autosuggest-textarea__suggestions__item {
1769 padding: 10px;
1770 cursor: pointer;
1771
1772 &:hover {
1773 background: darken($ui-secondary-color, 10%);
1774 }
1775
1776 &.selected {
1777 background: $ui-highlight-color;
1778 color: $base-border-color;
1779 }
1780 }
1781
1782 .autosuggest-account {
1783 overflow: hidden;
1784 }
1785
1786 .autosuggest-account-icon {
1787 float: left;
1788 margin-right: 5px;
1789 }
1790
1791 .autosuggest-status {
1792 overflow: hidden;
1793 white-space: nowrap;
1794 text-overflow: ellipsis;
1795
1796 strong {
1797 font-weight: 500;
1798 }
1799 }
1800
1801 .character-counter__wrapper {
1802 line-height: 36px;
1803 margin-right: 16px;
1804 padding-top: 10px;
1805 }
1806
1807 .character-counter {
1808 cursor: default;
1809 font-size: 16px;
1810 }
1811
1812 .character-counter--over {
1813 color: $warning-red;
1814 }
1815
1816 .getting-started__wrapper {
1817 position: relative;
1818 flex: 0 0 auto;
1819 }
1820
1821 .getting-started__footer {
1822 display: flex;
1823 flex-direction: column;
1824 }
1825
1826 .getting-started {
1827 box-sizing: border-box;
1828 padding-bottom: 235px;
1829 background: url('../images/mastodon-getting-started.png') no-repeat 0 100%;
1830 flex: 1 0 auto;
1831
1832 p {
1833 color: $ui-secondary-color;
1834 }
1835
1836 a {
1837 color: lighten($ui-base-color, 26%);
1838 }
1839 }
1840
1841 .setting-text {
1842 color: $ui-primary-color;
1843 background: transparent;
1844 border: none;
1845 border-bottom: 2px solid $ui-primary-color;
1846 box-sizing: border-box;
1847 display: block;
1848 font-family: inherit;
1849 margin-bottom: 10px;
1850 padding: 7px 0;
1851 width: 100%;
1852
1853 &:focus,
1854 &:active {
1855 color: $primary-text-color;
1856 border-bottom-color: $ui-highlight-color;
1857 }
1858
1859 @media screen and (max-width: 600px) {
1860 font-size: 16px;
1861 }
1862 }
1863
1864 @import 'boost';
1865
1866 button.icon-button i.fa-retweet {
1867 background-position: 0 0;
1868 height: 19px;
1869 transition: background-position 0.9s steps(10);
1870 transition-duration: 0s;
1871 vertical-align: middle;
1872 width: 22px;
1873
1874 &::before {
1875 display: none !important;
1876 }
1877 }
1878
1879 button.icon-button.active i.fa-retweet {
1880 transition-duration: 0.9s;
1881 background-position: 0 100%;
1882 }
1883
1884 .status-card {
1885 display: flex;
1886 cursor: pointer;
1887 font-size: 14px;
1888 border: 1px solid lighten($ui-base-color, 8%);
1889 border-radius: 4px;
1890 color: lighten($ui-base-color, 26%);
1891 margin-top: 14px;
1892 text-decoration: none;
1893 overflow: hidden;
1894
1895 &:hover {
1896 background: lighten($ui-base-color, 8%);
1897 }
1898 }
1899
1900 .status-card-video,
1901 .status-card-rich,
1902 .status-card-photo {
1903 margin-top: 14px;
1904 overflow: hidden;
1905
1906 iframe {
1907 width: 100%;
1908 height: auto;
1909 }
1910 }
1911
1912 .status-card-photo {
1913 display: block;
1914 text-decoration: none;
1915
1916 img {
1917 display: block;
1918 width: 100%;
1919 height: auto;
1920 margin: 0;
1921 }
1922 }
1923
1924 .status-card-video {
1925 position: relative;
1926 width: 100%;
1927 height: auto;
1928 padding-top: 56.25%;
1929
1930 iframe {
1931 position: absolute;
1932 top: 0;
1933 left: 0;
1934 bottom: 0;
1935 right: 0;
1936 width: 1px;
1937 min-width: 100%;
1938 height: 1px;
1939 min-height: 100%;
1940 margin: auto;
1941 }
1942 }
1943
1944 .status-card__title {
1945 display: block;
1946 font-weight: 500;
1947 margin-bottom: 5px;
1948 color: $ui-primary-color;
1949 overflow: hidden;
1950 text-overflow: ellipsis;
1951 white-space: nowrap;
1952 }
1953
1954 .status-card__content {
1955 flex: 1 1 auto;
1956 overflow: hidden;
1957 padding: 14px 14px 14px 8px;
1958 }
1959
1960 .status-card__description {
1961 color: $ui-primary-color;
1962 }
1963
1964 .status-card__host {
1965 display: block;
1966 margin-top: 5px;
1967 font-size: 13px;
1968 }
1969
1970 .status-card__image {
1971 flex: 0 0 100px;
1972 background: lighten($ui-base-color, 8%);
1973 }
1974
1975 .status-card__image-image {
1976 border-radius: 4px 0 0 4px;
1977 display: block;
1978 height: auto;
1979 margin: 0;
1980 width: 100%;
1981 }
1982
1983 .load-more {
1984 display: block;
1985 color: lighten($ui-base-color, 26%);
1986 background-color: transparent;
1987 border: 0;
1988 font-size: inherit;
1989 text-align: center;
1990 line-height: inherit;
1991 margin: 0;
1992 padding: 15px;
1993 width: 100%;
1994 clear: both;
1995
1996 &:hover {
1997 background: lighten($ui-base-color, 2%);
1998 }
1999 }
2000
2001 .missing-indicator {
2002 text-align: center;
2003 font-size: 16px;
2004 font-weight: 500;
2005 color: lighten($ui-base-color, 16%);
2006 background: $ui-base-color;
2007 cursor: default;
2008 display: flex;
2009 flex: 1 1 auto;
2010 align-items: center;
2011 justify-content: center;
2012
2013 & > div {
2014 background: url('../images/mastodon-not-found.png') no-repeat center -50px;
2015 padding-top: 210px;
2016 width: 100%;
2017 }
2018 }
2019
2020 .column-header__wrapper {
2021 position: relative;
2022 flex: 0 0 auto;
2023
2024 &.active {
2025 &::before {
2026 display: block;
2027 content: "";
2028 position: absolute;
2029 top: 35px;
2030 left: 0;
2031 right: 0;
2032 margin: 0 auto;
2033 width: 60%;
2034 pointer-events: none;
2035 height: 28px;
2036 z-index: 1;
2037 background: radial-gradient(ellipse, rgba($ui-highlight-color, 0.23) 0%, rgba($ui-highlight-color, 0) 60%);
2038 }
2039 }
2040 }
2041
2042 .column-header {
2043 padding: 15px;
2044 font-size: 16px;
2045 background: lighten($ui-base-color, 4%);
2046 flex: 0 0 auto;
2047 cursor: pointer;
2048 position: relative;
2049 z-index: 2;
2050 outline: 0;
2051
2052 &.active {
2053 box-shadow: 0 1px 0 rgba($ui-highlight-color, 0.3);
2054
2055 .column-header__icon {
2056 color: $ui-highlight-color;
2057 text-shadow: 0 0 10px rgba($ui-highlight-color, 0.4);
2058 }
2059 }
2060
2061 &.hidden-on-mobile {
2062 @media screen and (max-width: 1024px) {
2063 display: none;
2064 }
2065 }
2066
2067 &:focus,
2068 &:active {
2069 outline: 0;
2070 }
2071 }
2072
2073 .column-header__buttons {
2074 position: absolute;
2075 right: 0;
2076 top: 0;
2077 height: 100%;
2078 display: flex;
2079 height: 48px;
2080 }
2081
2082 .column-header__button {
2083 background: lighten($ui-base-color, 4%);
2084 border: 0;
2085 color: $ui-primary-color;
2086 cursor: pointer;
2087 font-size: 16px;
2088 padding: 0 15px;
2089
2090 &:hover {
2091 color: lighten($ui-primary-color, 7%);
2092 }
2093
2094 &.active {
2095 color: $primary-text-color;
2096 background: lighten($ui-base-color, 8%);
2097
2098 &:hover {
2099 color: $primary-text-color;
2100 background: lighten($ui-base-color, 8%);
2101 }
2102 }
2103 }
2104
2105 .column-header__collapsible {
2106 max-height: 70vh;
2107 overflow: hidden;
2108 overflow-y: auto;
2109 color: $ui-primary-color;
2110 transition: max-height 150ms ease-in-out, opacity 300ms linear;
2111 opacity: 1;
2112
2113 & > div {
2114 background: lighten($ui-base-color, 8%);
2115 padding: 15px;
2116 }
2117
2118 &.collapsed {
2119 max-height: 0;
2120 opacity: 0.5;
2121 }
2122
2123 &.animating {
2124 overflow-y: hidden;
2125 }
2126 }
2127
2128 .column-header__setting-btn {
2129 &:hover {
2130 color: lighten($ui-primary-color, 4%);
2131 text-decoration: underline;
2132 }
2133 }
2134
2135 .column-header__setting-arrows {
2136 float: right;
2137
2138 .column-header__setting-btn {
2139 padding: 0 10px;
2140
2141 &:last-child {
2142 padding-right: 0;
2143 }
2144 }
2145 }
2146
2147 .text-btn {
2148 display: inline-block;
2149 padding: 0;
2150 font-family: inherit;
2151 font-size: inherit;
2152 color: inherit;
2153 border: 0;
2154 background: transparent;
2155 cursor: pointer;
2156 }
2157
2158 .column-header__icon {
2159 display: inline-block;
2160 margin-right: 5px;
2161 }
2162
2163 .loading-indicator {
2164 color: $ui-secondary-color;
2165 font-size: 16px;
2166 font-weight: 500;
2167 padding-top: 120px;
2168 text-align: center;
2169 }
2170
2171 .video-error-cover {
2172 align-items: center;
2173 background: $base-overlay-background;
2174 color: $primary-text-color;
2175 cursor: pointer;
2176 display: flex;
2177 flex-direction: column;
2178 height: 100%;
2179 justify-content: center;
2180 margin-top: 8px;
2181 position: relative;
2182 text-align: center;
2183 z-index: 100;
2184 }
2185
2186 .media-spoiler {
2187 align-items: center;
2188 background: $base-overlay-background;
2189 color: $primary-text-color;
2190 cursor: pointer;
2191 display: flex;
2192 flex-direction: column;
2193 height: 100%;
2194 justify-content: center;
2195 position: relative;
2196 text-align: center;
2197 z-index: 100;
2198 }
2199
2200 .media-spoiler__warning {
2201 display: block;
2202 font-size: 14px;
2203 }
2204
2205 .media-spoiler__trigger {
2206 display: block;
2207 font-size: 11px;
2208 font-weight: 500;
2209 }
2210
2211 .spoiler-button {
2212 display: none;
2213 left: 4px;
2214 position: absolute;
2215 text-shadow: 0 1px 1px $base-shadow-color, 1px 0 1px $base-shadow-color;
2216 top: 4px;
2217 z-index: 100;
2218
2219 &.spoiler-button--visible {
2220 display: block;
2221 }
2222 }
2223
2224 .modal-container--preloader {
2225 background: lighten($ui-base-color, 8%);
2226 }
2227
2228 .account--panel {
2229 background: lighten($ui-base-color, 4%);
2230 border-top: 1px solid lighten($ui-base-color, 8%);
2231 border-bottom: 1px solid lighten($ui-base-color, 8%);
2232 display: flex;
2233 flex-direction: row;
2234 padding: 10px 0;
2235 }
2236
2237 .account--panel__button,
2238 .detailed-status__button {
2239 flex: 1 1 auto;
2240 text-align: center;
2241 }
2242
2243 .column-settings__outer {
2244 background: lighten($ui-base-color, 8%);
2245 padding: 15px;
2246 }
2247
2248 .column-settings__section {
2249 color: $ui-primary-color;
2250 cursor: default;
2251 display: block;
2252 font-weight: 500;
2253 margin-bottom: 10px;
2254 }
2255
2256 .column-settings__row {
2257 .text-btn {
2258 margin-bottom: 15px;
2259 }
2260 }
2261
2262 .modal-container__nav {
2263 align-items: center;
2264 background: rgba($base-overlay-background, 0.5);
2265 box-sizing: border-box;
2266 color: $primary-text-color;
2267 cursor: pointer;
2268 display: flex;
2269 font-size: 24px;
2270 height: 100%;
2271 padding: 30px 15px;
2272 position: absolute;
2273 top: 0;
2274 }
2275
2276 .modal-container__nav--left {
2277 left: -61px;
2278 }
2279
2280 .modal-container__nav--right {
2281 right: -61px;
2282 }
2283
2284 .account--follows-info {
2285 color: $primary-text-color;
2286 position: absolute;
2287 top: 10px;
2288 right: 10px;
2289 opacity: 0.7;
2290 display: inline-block;
2291 vertical-align: top;
2292 background-color: rgba($base-overlay-background, 0.4);
2293 text-transform: uppercase;
2294 font-size: 11px;
2295 font-weight: 500;
2296 padding: 4px;
2297 border-radius: 4px;
2298 }
2299
2300 .account--action-button {
2301 position: absolute;
2302 top: 10px;
2303 left: 20px;
2304 }
2305
2306 .setting-toggle {
2307 display: block;
2308 line-height: 24px;
2309 }
2310
2311 .setting-toggle__label {
2312 color: $ui-primary-color;
2313 display: inline-block;
2314 margin-bottom: 14px;
2315 margin-left: 8px;
2316 vertical-align: middle;
2317 }
2318
2319 .report.scrollable {
2320 box-sizing: border-box;
2321 display: flex;
2322 flex-direction: column;
2323 max-height: 100%;
2324 }
2325
2326 .report__target {
2327 border-bottom: 1px solid lighten($ui-base-color, 4%);
2328 color: $ui-secondary-color;
2329 flex: 0 0 auto;
2330 padding: 10px;
2331
2332 strong {
2333 display: block;
2334 color: $primary-text-color;
2335 font-weight: 500;
2336 }
2337 }
2338
2339 .report__statuses {
2340 flex: 1 1 auto;
2341 }
2342
2343 .report__textarea-wrapper {
2344 flex: 0 0 100px;
2345 padding: 10px;
2346 }
2347
2348 .report__textarea {
2349 background: transparent;
2350 box-sizing: border-box;
2351 border: 0;
2352 border-bottom: 2px solid $ui-primary-color;
2353 border-radius: 2px 2px 0 0;
2354 color: $primary-text-color;
2355 display: block;
2356 font-family: inherit;
2357 font-size: 14px;
2358 margin-bottom: 10px;
2359 outline: 0;
2360 padding: 7px 4px;
2361 resize: vertical;
2362 width: 100%;
2363
2364 &:active,
2365 &:focus {
2366 border-bottom-color: $ui-highlight-color;
2367 background: rgba($base-overlay-background, 0.1);
2368 }
2369 }
2370
2371 .report__submit {
2372 margin-top: 10px;
2373 overflow: hidden;
2374 }
2375
2376 .report__submit-button {
2377 float: right;
2378 }
2379
2380 .empty-column-indicator {
2381 color: lighten($ui-base-color, 20%);
2382 background: $ui-base-color;
2383 text-align: center;
2384 padding: 20px;
2385 font-size: 15px;
2386 font-weight: 400;
2387 cursor: default;
2388 display: flex;
2389 flex: 1 1 auto;
2390 align-items: center;
2391 justify-content: center;
2392 @supports(display: grid) { // hack to fix Chrome <57
2393 contain: strict;
2394 }
2395
2396 a {
2397 color: $ui-highlight-color;
2398 text-decoration: none;
2399
2400 &:hover {
2401 text-decoration: underline;
2402 }
2403 }
2404 }
2405
2406 @keyframes pulse {
2407 0% {
2408 opacity: 1;
2409 }
2410
2411 100% {
2412 opacity: 0.5;
2413 }
2414 }
2415
2416 .pulse-loading {
2417 animation: pulse 1s ease-in-out infinite;
2418 animation-direction: alternate;
2419 }
2420
2421 .emoji-dialog {
2422 width: 245px;
2423 height: 270px;
2424 background: $simple-background-color;
2425 box-sizing: border-box;
2426 border-radius: 4px;
2427 overflow: hidden;
2428 position: relative;
2429 box-shadow: 0 0 8px rgba($base-shadow-color, 0.2);
2430
2431 .emojione {
2432 margin: 0;
2433 width: 100%;
2434 height: auto;
2435 }
2436
2437 .emoji-dialog-header {
2438 padding: 0 10px;
2439
2440 ul {
2441 padding: 0;
2442 margin: 0;
2443 list-style: none;
2444 }
2445
2446 li {
2447 display: inline-block;
2448 box-sizing: border-box;
2449 padding: 10px 5px;
2450 cursor: pointer;
2451 border-bottom: 2px solid transparent;
2452
2453 .emoji {
2454 width: 18px;
2455 height: 18px;
2456 }
2457
2458 img,
2459 svg {
2460 width: 18px;
2461 height: 18px;
2462 filter: grayscale(100%);
2463 }
2464
2465 &:hover {
2466 img,
2467 svg {
2468 filter: grayscale(0);
2469 }
2470 }
2471
2472 &.active {
2473 border-bottom-color: $ui-highlight-color;
2474
2475 img,
2476 svg {
2477 filter: grayscale(0);
2478 }
2479 }
2480 }
2481 }
2482
2483 .emoji-row {
2484 box-sizing: border-box;
2485 overflow-y: hidden;
2486 padding-left: 10px;
2487
2488 .emoji {
2489 display: inline-block;
2490 padding: 2.5px;
2491 border-radius: 4px;
2492 }
2493 }
2494
2495 .emoji-category-header {
2496 box-sizing: border-box;
2497 overflow-y: hidden;
2498 padding: 10px 8px 10px 16px;
2499 display: table;
2500
2501 > * {
2502 display: table-cell;
2503 vertical-align: middle;
2504 }
2505 }
2506
2507 .emoji-category-title {
2508 font-size: 12px;
2509 text-transform: uppercase;
2510 font-weight: 500;
2511 color: darken($ui-secondary-color, 18%);
2512 cursor: default;
2513 }
2514
2515 .emoji-category-heading-decoration {
2516 text-align: right;
2517 }
2518
2519 .modifiers {
2520 list-style: none;
2521 padding: 0;
2522 margin: 0;
2523 vertical-align: middle;
2524 white-space: nowrap;
2525 margin-top: 4px;
2526
2527 li {
2528 display: inline-block;
2529 padding: 0 2px;
2530
2531 &:last-of-type {
2532 padding-right: 0;
2533 }
2534 }
2535
2536 .modifier {
2537 display: inline-block;
2538 border-radius: 10px;
2539 width: 15px;
2540 height: 15px;
2541 position: relative;
2542 cursor: pointer;
2543
2544 &.active::after {
2545 content: "";
2546 display: block;
2547 position: absolute;
2548 width: 7px;
2549 height: 7px;
2550 border-radius: 10px;
2551 border: 2px solid $base-border-color;
2552 top: 2px;
2553 left: 2px;
2554 }
2555 }
2556 }
2557
2558 .emoji-search-wrapper {
2559 padding: 10px;
2560 border-bottom: 1px solid lighten($ui-secondary-color, 4%);
2561 }
2562
2563 .emoji-search {
2564 font-size: 14px;
2565 font-weight: 400;
2566 padding: 7px 9px;
2567 font-family: inherit;
2568 display: block;
2569 width: 100%;
2570 background: rgba($ui-secondary-color, 0.3);
2571 color: darken($ui-secondary-color, 18%);
2572 border: 1px solid $ui-secondary-color;
2573 border-radius: 4px;
2574 }
2575
2576 .emoji-categories-wrapper {
2577 position: absolute;
2578 top: 42px;
2579 bottom: 0;
2580 left: 0;
2581 right: 0;
2582 }
2583
2584 .emoji-search-wrapper + .emoji-categories-wrapper {
2585 top: 93px;
2586 }
2587
2588 .emoji-row .emoji {
2589 img,
2590 svg {
2591 transition: transform 60ms ease-in-out;
2592 }
2593
2594 &:hover {
2595 background: lighten($ui-secondary-color, 3%);
2596
2597 img,
2598 svg {
2599 transform: translateZ(0) scale(1.2);
2600 }
2601 }
2602 }
2603
2604 .emoji {
2605 width: 22px;
2606 height: 22px;
2607 cursor: pointer;
2608
2609 &:focus {
2610 outline: 0;
2611 }
2612 }
2613 }
2614
2615 .upload-area {
2616 align-items: center;
2617 background: rgba($base-overlay-background, 0.8);
2618 display: flex;
2619 height: 100%;
2620 justify-content: center;
2621 left: 0;
2622 opacity: 0;
2623 position: absolute;
2624 top: 0;
2625 visibility: hidden;
2626 width: 100%;
2627 z-index: 2000;
2628
2629 * {
2630 pointer-events: none;
2631 }
2632 }
2633
2634 .upload-area__drop {
2635 width: 320px;
2636 height: 160px;
2637 display: flex;
2638 box-sizing: border-box;
2639 position: relative;
2640 padding: 8px;
2641 }
2642
2643 .upload-area__background {
2644 position: absolute;
2645 top: 0;
2646 right: 0;
2647 bottom: 0;
2648 left: 0;
2649 z-index: -1;
2650 border-radius: 4px;
2651 background: $ui-base-color;
2652 box-shadow: 0 0 5px rgba($base-shadow-color, 0.2);
2653 }
2654
2655 .upload-area__content {
2656 flex: 1;
2657 display: flex;
2658 align-items: center;
2659 justify-content: center;
2660 color: $ui-secondary-color;
2661 font-size: 18px;
2662 font-weight: 500;
2663 border: 2px dashed lighten($ui-base-color, 26%);
2664 border-radius: 4px;
2665 }
2666
2667 .upload-progress {
2668 padding: 10px;
2669 color: lighten($ui-base-color, 26%);
2670 overflow: hidden;
2671 display: flex;
2672
2673 .fa {
2674 font-size: 34px;
2675 margin-right: 10px;
2676 }
2677
2678 span {
2679 font-size: 12px;
2680 text-transform: uppercase;
2681 font-weight: 500;
2682 display: block;
2683 }
2684 }
2685
2686 .upload-progess__message {
2687 flex: 1 1 auto;
2688 }
2689
2690 .upload-progress__backdrop {
2691 width: 100%;
2692 height: 6px;
2693 border-radius: 6px;
2694 background: lighten($ui-base-color, 26%);
2695 position: relative;
2696 margin-top: 5px;
2697 }
2698
2699 .upload-progress__tracker {
2700 position: absolute;
2701 left: 0;
2702 top: 0;
2703 height: 6px;
2704 background: $ui-highlight-color;
2705 border-radius: 6px;
2706 }
2707
2708 .emoji-button {
2709 display: block;
2710 font-size: 24px;
2711 line-height: 24px;
2712 margin-left: 2px;
2713 width: 24px;
2714 outline: 0;
2715
2716 &:active,
2717 &:focus {
2718 outline: 0 !important;
2719 }
2720
2721 img {
2722 filter: grayscale(100%);
2723 opacity: 0.8;
2724 display: block;
2725 margin: 0;
2726 width: 22px;
2727 height: 22px;
2728 margin-top: 2px;
2729 }
2730
2731 &:hover,
2732 &:active,
2733 &:focus {
2734 img {
2735 opacity: 1;
2736 filter: none;
2737 }
2738 }
2739 }
2740
2741 .dropdown--active .emoji-button img {
2742 opacity: 1;
2743 filter: none;
2744 }
2745
2746 .privacy-dropdown {
2747 position: relative;
2748 }
2749
2750 .privacy-dropdown__dropdown {
2751 display: none;
2752 position: absolute;
2753 left: 0;
2754 top: 27px;
2755 width: 230px;
2756 background: $simple-background-color;
2757 border-radius: 0 4px 4px;
2758 z-index: 2;
2759 overflow: hidden;
2760 }
2761
2762 .privacy-dropdown__option {
2763 color: $ui-base-color;
2764 padding: 10px;
2765 cursor: pointer;
2766 display: flex;
2767
2768 &:hover,
2769 &.active {
2770 background: $ui-highlight-color;
2771 color: $primary-text-color;
2772
2773 .privacy-dropdown__option__content {
2774 color: $primary-text-color;
2775
2776 strong {
2777 color: $primary-text-color;
2778 }
2779 }
2780 }
2781
2782 &.active:hover {
2783 background: lighten($ui-highlight-color, 4%);
2784 }
2785 }
2786
2787 .privacy-dropdown__option__icon {
2788 display: flex;
2789 align-items: center;
2790 justify-content: center;
2791 margin-right: 10px;
2792 }
2793
2794 .privacy-dropdown__option__content {
2795 flex: 1 1 auto;
2796 color: darken($ui-primary-color, 24%);
2797
2798 strong {
2799 font-weight: 500;
2800 display: block;
2801 color: $ui-base-color;
2802 }
2803 }
2804
2805 .privacy-dropdown.active {
2806 .privacy-dropdown__value {
2807 background: $simple-background-color;
2808 border-radius: 4px 4px 0 0;
2809 box-shadow: 0 -4px 4px rgba($base-shadow-color, 0.1);
2810 }
2811
2812 .privacy-dropdown__dropdown {
2813 display: block;
2814 box-shadow: 2px 4px 6px rgba($base-shadow-color, 0.1);
2815 }
2816 }
2817
2818 .search {
2819 position: relative;
2820 }
2821
2822 .search__input {
2823 padding-right: 30px;
2824 color: $ui-secondary-color;
2825 outline: 0;
2826 box-sizing: border-box;
2827 display: block;
2828 width: 100%;
2829 border: none;
2830 padding: 10px;
2831 padding-right: 30px;
2832 font-family: inherit;
2833 background: $ui-base-color;
2834 color: $ui-primary-color;
2835 font-size: 14px;
2836 margin: 0;
2837
2838 &::-moz-focus-inner {
2839 border: 0;
2840 }
2841
2842 &::-moz-focus-inner,
2843 &:focus,
2844 &:active {
2845 outline: 0 !important;
2846 }
2847
2848 &:focus {
2849 background: lighten($ui-base-color, 4%);
2850 }
2851
2852 @media screen and (max-width: 600px) {
2853 font-size: 16px;
2854 }
2855 }
2856
2857 .search__icon {
2858 .fa {
2859 position: absolute;
2860 top: 10px;
2861 right: 10px;
2862 z-index: 2;
2863 display: inline-block;
2864 opacity: 0;
2865 transition: all 100ms linear;
2866 font-size: 18px;
2867 width: 18px;
2868 height: 18px;
2869 color: $ui-secondary-color;
2870 cursor: default;
2871 pointer-events: none;
2872
2873 &.active {
2874 pointer-events: auto;
2875 opacity: 0.3;
2876 }
2877 }
2878
2879 .fa-search {
2880 transform: translateZ(0) rotate(90deg);
2881
2882 &.active {
2883 pointer-events: none;
2884 transform: translateZ(0) rotate(0deg);
2885 }
2886 }
2887
2888 .fa-times-circle {
2889 top: 11px;
2890 transform: translateZ(0) rotate(0deg);
2891 cursor: pointer;
2892
2893 &.active {
2894 transform: translateZ(0) rotate(90deg);
2895 }
2896
2897 &:hover {
2898 color: $primary-text-color;
2899 }
2900 }
2901 }
2902
2903 .search-results__header {
2904 color: lighten($ui-base-color, 26%);
2905 background: lighten($ui-base-color, 2%);
2906 border-bottom: 1px solid darken($ui-base-color, 4%);
2907 padding: 15px 10px;
2908 font-size: 14px;
2909 font-weight: 500;
2910 }
2911
2912 .search-results__hashtag {
2913 display: block;
2914 padding: 10px;
2915 color: $ui-secondary-color;
2916 text-decoration: none;
2917
2918 &:hover,
2919 &:active,
2920 &:focus {
2921 color: lighten($ui-secondary-color, 4%);
2922 text-decoration: underline;
2923 }
2924 }
2925
2926 .modal-root__overlay {
2927 position: absolute;
2928 top: 0;
2929 left: 0;
2930 right: 0;
2931 bottom: 0;
2932 z-index: 9999;
2933 opacity: 0;
2934 background: rgba($base-overlay-background, 0.7);
2935 transform: translateZ(0);
2936 }
2937
2938 .modal-root__container {
2939 position: absolute;
2940 top: 0;
2941 left: 0;
2942 width: 100%;
2943 height: 100%;
2944 display: flex;
2945 flex-direction: column;
2946 align-items: center;
2947 justify-content: center;
2948 align-content: space-around;
2949 z-index: 9999;
2950 opacity: 0;
2951 pointer-events: none;
2952 user-select: none;
2953 }
2954
2955 .modal-root__modal {
2956 pointer-events: auto;
2957 display: flex;
2958 z-index: 9999;
2959 }
2960
2961 .media-modal {
2962 max-width: 80vw;
2963 max-height: 80vh;
2964 position: relative;
2965
2966 img,
2967 video {
2968 max-width: 80vw;
2969 max-height: 80vh;
2970 width: auto;
2971 height: auto;
2972 }
2973
2974 img {
2975 display: block;
2976 background: url('../images/void.png') repeat;
2977 }
2978 }
2979
2980 .media-modal__close {
2981 position: absolute;
2982 right: 4px;
2983 top: 4px;
2984 z-index: 100;
2985 }
2986
2987 .onboarding-modal {
2988 background: $ui-secondary-color;
2989 color: $ui-base-color;
2990 border-radius: 8px;
2991 overflow: hidden;
2992 display: flex;
2993 flex-direction: column;
2994 }
2995
2996 .onboarding-modal__pager {
2997 height: 80vh;
2998 width: 80vw;
2999 max-width: 520px;
3000 max-height: 420px;
3001 position: relative;
3002
3003 & > div {
3004 position: absolute;
3005 top: 0;
3006 left: 0;
3007 width: 100%;
3008 height: 100%;
3009 box-sizing: border-box;
3010 padding: 25px;
3011 display: none;
3012 flex-direction: column;
3013 align-items: center;
3014 justify-content: center;
3015 display: flex;
3016 opacity: 0;
3017 user-select: text;
3018 }
3019 }
3020
3021 @media screen and (max-width: 550px) {
3022 .onboarding-modal {
3023 width: 100%;
3024 height: 100%;
3025 border-radius: 0;
3026 }
3027
3028 .onboarding-modal__pager {
3029 width: 100%;
3030 height: auto;
3031 max-width: none;
3032 max-height: none;
3033 flex: 1 1 auto;
3034 }
3035 }
3036
3037 .onboarding-modal__paginator {
3038 flex: 0 0 auto;
3039 background: darken($ui-secondary-color, 8%);
3040 display: flex;
3041 padding: 25px;
3042
3043 & > div {
3044 min-width: 33px;
3045 }
3046
3047 .onboarding-modal__nav {
3048 color: darken($ui-secondary-color, 34%);
3049 background-color: transparent;
3050 border: 0;
3051 font-size: 14px;
3052 font-weight: 500;
3053 padding: 0;
3054 line-height: inherit;
3055 height: auto;
3056
3057 &:hover,
3058 &:focus,
3059 &:active {
3060 color: darken($ui-secondary-color, 38%);
3061 }
3062
3063 &.onboarding-modal__done,
3064 &.onboarding-modal__next {
3065 color: $ui-highlight-color;
3066 }
3067 }
3068 }
3069
3070 .onboarding-modal__dots {
3071 flex: 1 1 auto;
3072 display: flex;
3073 align-items: center;
3074 justify-content: center;
3075 }
3076
3077 .onboarding-modal__dot {
3078 width: 14px;
3079 height: 14px;
3080 border-radius: 14px;
3081 background: darken($ui-secondary-color, 16%);
3082 margin: 0 3px;
3083 cursor: pointer;
3084
3085 &:hover {
3086 background: darken($ui-secondary-color, 18%);
3087 }
3088
3089 &.active {
3090 cursor: default;
3091 background: darken($ui-secondary-color, 24%);
3092 }
3093 }
3094
3095 .onboarding-modal__page__wrapper {
3096 pointer-events: none;
3097
3098 &.onboarding-modal__page__wrapper--active {
3099 pointer-events: auto;
3100 }
3101 }
3102
3103 .onboarding-modal__page {
3104 cursor: default;
3105 line-height: 21px;
3106
3107 h1 {
3108 font-size: 18px;
3109 font-weight: 500;
3110 color: $ui-base-color;
3111 margin-bottom: 20px;
3112 }
3113
3114 a {
3115 color: $ui-highlight-color;
3116
3117 &:hover,
3118 &:focus,
3119 &:active {
3120 color: lighten($ui-highlight-color, 4%);
3121 }
3122 }
3123
3124 p {
3125 font-size: 16px;
3126 color: lighten($ui-base-color, 8%);
3127 margin-top: 10px;
3128 margin-bottom: 10px;
3129
3130 &:last-child {
3131 margin-bottom: 0;
3132 }
3133
3134 strong {
3135 font-weight: 500;
3136 background: $ui-base-color;
3137 color: $ui-secondary-color;
3138 border-radius: 4px;
3139 font-size: 14px;
3140 padding: 3px 6px;
3141 }
3142 }
3143 }
3144
3145 .onboarding-modal__page-one {
3146 display: flex;
3147 align-items: center;
3148 }
3149
3150 .onboarding-modal__page-one__elephant-friend {
3151 background: url('../images/elephant-friend-1.png') no-repeat center center / contain;
3152 width: 155px;
3153 height: 193px;
3154 margin-right: 15px;
3155 }
3156
3157 @media screen and (max-width: 400px) {
3158 .onboarding-modal__page-one {
3159 flex-direction: column;
3160 }
3161
3162 .onboarding-modal__page-one__elephant-friend {
3163 width: 100%;
3164 height: 30vh;
3165 max-height: 160px;
3166 margin-bottom: 5vh;
3167 }
3168 }
3169
3170 .onboarding-modal__page-two,
3171 .onboarding-modal__page-three,
3172 .onboarding-modal__page-four,
3173 .onboarding-modal__page-five {
3174 p {
3175 text-align: left;
3176 }
3177
3178 .figure {
3179 background: darken($ui-base-color, 8%);
3180 color: $ui-secondary-color;
3181 margin-bottom: 20px;
3182 border-radius: 4px;
3183 padding: 10px;
3184 text-align: center;
3185 font-size: 14px;
3186 box-shadow: 1px 2px 6px rgba($base-shadow-color, 0.3);
3187
3188 .onboarding-modal__image {
3189 border-radius: 4px;
3190 margin-bottom: 10px;
3191 }
3192
3193 &.non-interactive {
3194 pointer-events: none;
3195 text-align: left;
3196 }
3197 }
3198 }
3199
3200 .onboarding-modal__page-four__columns {
3201 .row {
3202 display: flex;
3203 margin-bottom: 20px;
3204
3205 & > div {
3206 flex: 1 1 0;
3207 margin: 0 10px;
3208
3209 &:first-child {
3210 margin-left: 0;
3211 }
3212
3213 &:last-child {
3214 margin-right: 0;
3215 }
3216
3217 p {
3218 text-align: center;
3219 }
3220 }
3221
3222 &:last-child {
3223 margin-bottom: 0;
3224 }
3225 }
3226
3227 .column-header {
3228 color: $primary-text-color;
3229 }
3230 }
3231
3232 @media screen and (max-width: 320px) and (max-height: 600px) {
3233 .onboarding-modal__page p {
3234 font-size: 14px;
3235 line-height: 20px;
3236 }
3237
3238 .onboarding-modal__page-two .figure,
3239 .onboarding-modal__page-three .figure,
3240 .onboarding-modal__page-four .figure,
3241 .onboarding-modal__page-five .figure {
3242 font-size: 12px;
3243 margin-bottom: 10px;
3244 }
3245
3246 .onboarding-modal__page-four__columns .row {
3247 margin-bottom: 10px;
3248 }
3249
3250 .onboarding-modal__page-four__columns .column-header {
3251 padding: 5px;
3252 font-size: 12px;
3253 }
3254 }
3255
3256 .onboarding-modal__image {
3257 border-radius: 8px;
3258 width: 70vw;
3259 max-width: 450px;
3260 max-height: auto;
3261 display: block;
3262 margin: auto;
3263 margin-bottom: 20px;
3264 }
3265
3266 .onboard-sliders {
3267 display: inline-block;
3268 max-width: 30px;
3269 max-height: auto;
3270 margin-left: 10px;
3271 }
3272
3273 .boost-modal,
3274 .confirmation-modal {
3275 background: lighten($ui-secondary-color, 8%);
3276 color: $ui-base-color;
3277 border-radius: 8px;
3278 overflow: hidden;
3279 max-width: 90vw;
3280 width: 480px;
3281 position: relative;
3282 flex-direction: column;
3283
3284 .status__display-name {
3285 display: block;
3286 max-width: 100%;
3287 padding-right: 25px;
3288 }
3289
3290 .status__avatar {
3291 height: 28px;
3292 left: 10px;
3293 position: absolute;
3294 top: 10px;
3295 width: 48px;
3296 }
3297 }
3298
3299 .boost-modal__container {
3300 overflow-x: scroll;
3301 padding: 10px;
3302
3303 .status {
3304 user-select: text;
3305 border-bottom: 0;
3306 }
3307 }
3308
3309 .boost-modal__action-bar,
3310 .confirmation-modal__action-bar {
3311 display: flex;
3312 justify-content: space-between;
3313 background: $ui-secondary-color;
3314 padding: 10px;
3315 line-height: 36px;
3316
3317 & > div {
3318 flex: 1 1 auto;
3319 text-align: right;
3320 color: lighten($ui-base-color, 33%);
3321 padding-right: 10px;
3322 }
3323
3324 .button {
3325 flex: 0 0 auto;
3326 }
3327 }
3328
3329 .boost-modal__status-header {
3330 font-size: 15px;
3331 }
3332
3333 .boost-modal__status-time {
3334 float: right;
3335 font-size: 14px;
3336 }
3337
3338 .confirmation-modal {
3339 max-width: 280px;
3340
3341 @media screen and (min-width: 480px) {
3342 max-width: 380px;
3343 }
3344 }
3345
3346 .confirmation-modal__action-bar {
3347 .confirmation-modal__cancel-button {
3348 background-color: transparent;
3349 color: darken($ui-secondary-color, 34%);
3350 font-size: 14px;
3351 font-weight: 500;
3352
3353 &:hover,
3354 &:focus,
3355 &:active {
3356 color: darken($ui-secondary-color, 38%);
3357 }
3358 }
3359 }
3360
3361 .confirmation-modal__container {
3362 padding: 30px;
3363 font-size: 16px;
3364 text-align: center;
3365
3366 strong {
3367 font-weight: 500;
3368 }
3369 }
3370
3371 .loading-bar {
3372 background-color: $ui-highlight-color;
3373 height: 3px;
3374 position: absolute;
3375 top: 0;
3376 left: 0;
3377 }
3378
3379 .media-gallery__gifv__label {
3380 display: block;
3381 position: absolute;
3382 color: $primary-text-color;
3383 background: rgba($base-overlay-background, 0.5);
3384 bottom: 6px;
3385 left: 6px;
3386 padding: 2px 6px;
3387 border-radius: 2px;
3388 font-size: 11px;
3389 font-weight: 600;
3390 z-index: 1;
3391 pointer-events: none;
3392 opacity: 0.9;
3393 transition: opacity 0.1s ease;
3394 }
3395
3396 .media-gallery__gifv {
3397 &.autoplay {
3398 .media-gallery__gifv__label {
3399 display: none;
3400 }
3401 }
3402
3403 &:hover {
3404 .media-gallery__gifv__label {
3405 opacity: 1;
3406 }
3407 }
3408 }
3409
3410 .attachment-list {
3411 display: flex;
3412 font-size: 14px;
3413 border: 1px solid lighten($ui-base-color, 8%);
3414 border-radius: 4px;
3415 margin-top: 14px;
3416 overflow: hidden;
3417 }
3418
3419 .attachment-list__icon {
3420 flex: 0 0 auto;
3421 color: lighten($ui-base-color, 26%);
3422 padding: 8px 18px;
3423 cursor: default;
3424 border-right: 1px solid lighten($ui-base-color, 8%);
3425 display: flex;
3426 flex-direction: column;
3427 align-items: center;
3428 justify-content: center;
3429 font-size: 26px;
3430
3431 .fa {
3432 display: block;
3433 }
3434 }
3435
3436 .attachment-list__list {
3437 list-style: none;
3438 padding: 4px 0;
3439 padding-left: 8px;
3440 display: flex;
3441 flex-direction: column;
3442 justify-content: center;
3443
3444 li {
3445 display: block;
3446 padding: 4px 0;
3447 }
3448
3449 a {
3450 text-decoration: none;
3451 color: lighten($ui-base-color, 26%);
3452 font-weight: 500;
3453
3454 &:hover {
3455 text-decoration: underline;
3456 }
3457 }
3458 }
3459
3460 /* Media Gallery */
3461 .media-gallery {
3462 box-sizing: border-box;
3463 margin-top: 8px;
3464 overflow: hidden;
3465 position: relative;
3466 width: 100%;
3467 }
3468
3469 .media-gallery__item {
3470 border: none;
3471 box-sizing: border-box;
3472 display: block;
3473 float: left;
3474 position: relative;
3475 }
3476
3477 .media-gallery__item-thumbnail {
3478 background-position: center;
3479 background-repeat: no-repeat;
3480 background-size: cover;
3481 cursor: zoom-in;
3482 display: block;
3483 height: 100%;
3484 text-decoration: none;
3485 width: 100%;
3486 }
3487
3488 .media-gallery__gifv {
3489 height: 100%;
3490 overflow: hidden;
3491 position: relative;
3492 width: 100%;
3493 }
3494
3495 .media-gallery__item-gifv-thumbnail {
3496 cursor: zoom-in;
3497 height: 100%;
3498 object-fit: cover;
3499 position: relative;
3500 top: 50%;
3501 transform: translateY(-50%);
3502 width: 100%;
3503 z-index: 1;
3504 }
3505
3506 .media-gallery__item-thumbnail-label {
3507 clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
3508 clip: rect(1px, 1px, 1px, 1px);
3509 overflow: hidden;
3510 position: absolute;
3511 }
3512 /* End Media Gallery */
3513
3514 /* Status Video Player */
3515 .status__video-player {
3516 background: $base-overlay-background;
3517 box-sizing: border-box;
3518 cursor: default; /* May not be needed */
3519 margin-top: 8px;
3520 overflow: hidden;
3521 position: relative;
3522 }
3523
3524 .status__video-player-video {
3525 height: 100%;
3526 object-fit: cover;
3527 position: relative;
3528 top: 50%;
3529 transform: translateY(-50%);
3530 width: 100%;
3531 z-index: 1;
3532 }
3533
3534 .status__video-player-expand,
3535 .status__video-player-mute {
3536 color: $primary-text-color;
3537 opacity: 0.8;
3538 position: absolute;
3539 right: 4px;
3540 text-shadow: 0 1px 1px $base-shadow-color, 1px 0 1px $base-shadow-color;
3541 }
3542
3543 .status__video-player-spoiler {
3544 display: none;
3545 color: $primary-text-color;
3546 left: 4px;
3547 position: absolute;
3548 text-shadow: 0 1px 1px $base-shadow-color, 1px 0 1px $base-shadow-color;
3549 top: 4px;
3550 z-index: 100;
3551
3552 &.status__video-player-spoiler--visible {
3553 display: block;
3554 }
3555 }
3556
3557 .status__video-player-expand {
3558 bottom: 4px;
3559 z-index: 100;
3560 }
3561
3562 .status__video-player-mute {
3563 top: 4px;
3564 z-index: 5;
3565 }
3566
3567 .media-spoiler-video {
3568 background-size: cover;
3569 background-repeat: no-repeat;
3570 background-position: center;
3571 cursor: pointer;
3572 margin-top: 8px;
3573 position: relative;
3574 }
3575
3576 .media-spoiler-video-play-icon {
3577 border-radius: 100px;
3578 color: rgba($primary-text-color, 0.8);
3579 font-size: 36px;
3580 left: 50%;
3581 padding: 5px;
3582 position: absolute;
3583 top: 50%;
3584 transform: translate(-50%, -50%);
3585 }
3586 /* End Video Player */
3587
3588 .account-gallery__container {
3589 margin: -2px;
3590 padding: 4px;
3591 }
3592
3593 .account-gallery__item {
3594 float: left;
3595 width: 96px;
3596 height: 96px;
3597 margin: 2px;
3598
3599 a {
3600 display: block;
3601 width: 100%;
3602 height: 100%;
3603 background-color: $base-overlay-background;
3604 background-size: cover;
3605 background-position: center;
3606 position: relative;
3607 }
3608 }
3609
3610 .account-section-headline {
3611 color: lighten($ui-base-color, 26%);
3612 background: lighten($ui-base-color, 2%);
3613 border-bottom: 1px solid lighten($ui-base-color, 4%);
3614 padding: 15px 10px;
3615 font-size: 14px;
3616 font-weight: 500;
3617 position: relative;
3618 cursor: default;
3619
3620 &::before,
3621 &::after {
3622 display: block;
3623 content: "";
3624 position: absolute;
3625 bottom: 0;
3626 left: 18px;
3627 width: 0;
3628 height: 0;
3629 border-style: solid;
3630 border-width: 0 10px 10px;
3631 border-color: transparent transparent lighten($ui-base-color, 4%);
3632 }
3633
3634 &::after {
3635 bottom: -1px;
3636 border-color: transparent transparent $ui-base-color;
3637 }
3638 }
3639
3640 noscript {
3641 text-align: center;
3642
3643 div {
3644 font-size: 20px;
3645 margin: 20px 0;
3646 }
3647 }
This page took 0.371982 seconds and 4 git commands to generate.