]> git.immae.eu Git - github/shaarli/Shaarli.git/blob - assets/default/scss/shaarli.scss
b8578ea6869855b907c5d89ae963e938ecb864a0
[github/shaarli/Shaarli.git] / assets / default / scss / shaarli.scss
1 $fa-font-path: '~font-awesome/fonts';
2
3 @import '~font-awesome/scss/font-awesome';
4 @import '~purecss/build/pure.css';
5 @import '~purecss/build/grids-responsive.css';
6 @import '~pure-extras/css/pure-extras.css';
7 @import '~awesomplete/awesomplete.css';
8
9 $white: #fff;
10 $black: #000;
11 $almost-white: #f5f5f5;
12 $dark-grey: #252525;
13 $light-grey: #797979;
14 $main-green: #1b926c;
15 $light-green: #b0ddce;
16 $dark-green: #2a4c41;
17 $red: #ac2925;
18 $orange: #f89406;
19 $blue: #0b5ea6;
20 $background-color: #d0d0d0;
21 $background-linklist-info: #ddd;
22 $light-shadow: rgba(255, 255, 255, .078);
23 $dark-shadow: rgba(0, 0, 0, .298);
24 $warning-text: #97600d;
25 $form-input-border: #d8d8d8;
26 $form-input-background: #eee;
27
28 // General
29 body {
30 background: $background-color;
31 }
32
33 .strong {
34 font-weight: bold;
35 }
36
37 .clear {
38 clear: both;
39 }
40
41 .center {
42 margin: auto;
43 text-align: center;
44 }
45
46 .label {
47 display: inline-block;
48 border-radius: .25rem;
49 padding: .25em .4em;
50 vertical-align: baseline;
51 text-align: center;
52 line-height: 1;
53 white-space: nowrap;
54 font-size: 75%;
55 font-weight: 700;
56 }
57
58 pre {
59 max-width: 100%;
60 }
61
62 @font-face {
63 font-family: 'Roboto';
64 font-weight: 400;
65 font-style: normal;
66 src: local('Roboto'),
67 local('Roboto-Regular'),
68 url('../fonts/Roboto-Regular.woff2') format('woff2'),
69 url('../fonts/Roboto-Regular.woff') format('woff');
70 }
71
72 @font-face {
73 font-family: 'Roboto';
74 font-weight: 700;
75 font-style: normal;
76 src: local('Roboto'),
77 local('Roboto-Bold'),
78 url('../fonts/Roboto-Bold.woff2') format('woff2'),
79 url('../fonts/Roboto-Bold.woff') format('woff');
80 }
81
82 body,
83 .pure-g [class*='pure-u'] {
84 font-family: Roboto, Arial, sans-serif;
85 }
86
87 // Extends Pure grids responsive to hide items.
88 // Use xx-0 to hide an item on xx screen.
89 // Display it at any level with xx-visible.
90 .pure-u-0 {
91 display: none !important;
92 }
93
94 @media screen and (min-width: 35.5em) {
95 .pure-u-sm-0 {
96 display: none !important;
97 }
98
99 .pure-u-sm-visible {
100 display: inline-block !important;
101 }
102 }
103
104 @media screen and (min-width: 48em) {
105 .pure-u-md-0 {
106 display: none !important;
107 }
108
109 .pure-u-md-visible {
110 display: inline-block !important;
111 }
112 }
113
114 @media screen and (min-width: 64em) {
115 .pure-u-lg-0 {
116 display: none !important;
117 }
118
119 .pure-u-lg-visible {
120 display: inline-block !important;
121 }
122 }
123
124 @media screen and (min-width: 80em) {
125 .pure-u-xl-0 {
126 display: none !important;
127 }
128
129 .pure-u-xl-visible {
130 display: inline-block !important;
131 }
132 }
133
134 // Make pure-extras alert closable.
135 .pure-alert-closable {
136 .fa-times {
137 float: right;
138 }
139 }
140
141 .pure-alert-close {
142 cursor: pointer;
143 }
144
145 .pure-alert-success {
146 background-color: $main-green;
147 }
148
149 .pure-alert-warning {
150 a {
151 color: $warning-text;
152 font-weight: bold;
153 }
154 }
155
156 .page-single-alert {
157 margin-top: 100px;
158 }
159
160 .anchor {
161 &:target {
162 padding-top: 40px;
163 }
164 }
165
166 // MENU
167 .shaarli-menu {
168 position: fixed;
169 top: 0;
170 transition: max-height .5s;
171 z-index: 999;
172 background: $main-green;
173 width: 100%;
174 // Hack to transition with auto height: http://stackoverflow.com/a/8331169/1484919
175 max-height: 45px;
176 overflow: hidden;
177 -webkit-font-smoothing: antialiased;
178
179 &.open {
180 transition: max-height .75s;
181 max-height: 500px;
182 }
183 }
184
185 .pure-menu-item {
186 // Chrome bugfix: with 100% height, it only displays the first element.
187 height: 45px;
188
189 &:hover {
190 &::after {
191 display: block;
192 margin: -4px auto 0;
193 background: $white;
194 width: 100%;
195 height: 4px;
196 content: '';
197 }
198 }
199 }
200
201 .head-logo {
202 float: left;
203 margin: 0 5px 0 0;
204 }
205
206 %menu-link {
207 padding: .8em 1em;
208 color: $almost-white;
209 }
210
211 %menu-link-hover {
212 background: transparent;
213 color: $white;
214 }
215
216 .pure-menu-link {
217 @extend %menu-link;
218
219 &:visited {
220 @extend %menu-link;
221 }
222
223 &:hover,
224 &:focus {
225 @extend %menu-link-hover;
226 }
227 }
228
229 .pure-menu-selected {
230 .pure-menu-link {
231 @extend %menu-link;
232
233 &:visited {
234 @extend %menu-link;
235 }
236
237 &:hover,
238 &:focus {
239 @extend %menu-link-hover;
240 }
241 }
242 }
243
244 .menu-toggle {
245 display: none;
246 position: absolute;
247 top: 5px;
248 right: 0;
249 width: 34px;
250 height: 45px;
251
252 .bar {
253 display: block;
254 position: absolute;
255 top: 18px;
256 right: 7px;
257 border-radius: 100px;
258 background-color: $light-green;
259 width: 20px;
260 height: 2px;
261 transition-duration: .5s;
262
263 &:first-child {
264 transform: translateY(-6px);
265 }
266 }
267
268 &.x {
269 .bar {
270 transform: rotate(45deg);
271
272 &:first-child {
273 transform: rotate(-45deg);
274 }
275 }
276 }
277 }
278
279 @media screen and (max-width: 64em) {
280 .menu-toggle {
281 display: block;
282 }
283 }
284
285 .header-buttons {
286 text-align: right;
287 }
288
289 .linkcount {
290 color: $dark-grey;
291 font-size: .8em;
292 }
293
294 @media screen and (min-width: 64em) {
295 .linkcount {
296 position: absolute;
297 right: 5px;
298 }
299 }
300
301 .searchform-block {
302 width: 100%;
303 text-align: center;
304
305 input {
306 &[type='text'] {
307 border: medium none currentColor;
308 border-radius: 2px;
309 box-shadow: 0 1px 0 $light-shadow, 0 1px 1px $dark-shadow inset;
310 background: $almost-white;
311 padding: 0 5px;
312 width: 260px;
313 height: 30px;
314 color: $dark-grey;
315
316 &::-webkit-input-placeholder {
317 color: $light-grey;
318 }
319 }
320 }
321
322 button {
323 border: 0;
324 border-radius: 2px;
325 background-color: $main-green;
326 padding: 4px 8px 6px;
327 color: $almost-white;
328 }
329 }
330
331 @media screen and (max-width: 64em) {
332 .searchform {
333 margin: 0 auto;
334 max-width: 260px;
335 }
336 }
337
338 .search-tagcloud {
339 button {
340 width: 90%;
341 }
342 }
343
344 @media screen and (max-width: 64em) {
345 .search-linklist {
346 button {
347 width: 100%;
348 }
349
350 .awesomplete {
351 margin: 5px 0;
352 }
353 }
354 }
355
356 .header-search,
357 .search-linklist,
358 .search-tagcloud {
359 button {
360 &:hover {
361 color: $background-color;
362 }
363 }
364 }
365
366 .header-search,
367 .search-linklist {
368 padding: 6px 0;
369 }
370
371 @media screen and (max-width: 64em) {
372 .header-search ,
373 .header-search * {
374 visibility: hidden;
375 }
376 }
377
378 %subheader-form-input {
379 border: medium none currentColor;
380 border-radius: 2px;
381 box-shadow: 0 1px 0 $light-shadow, 0 1px 4px $dark-shadow inset;
382 background: $almost-white;
383 padding: 5px 5px 3px 15px;
384 color: $dark-grey;
385 }
386
387 .subheader-form {
388 display: block;
389 position: fixed;
390 visibility: hidden;
391 z-index: 999;
392 background: $main-green;
393 padding: 5px 0;
394 width: 100%;
395 height: 30px;
396 text-align: center;
397
398 input {
399 &[type='text'],
400 &[type='password'] {
401 @extend %subheader-form-input;
402
403 &::-webkit-input-placeholder {
404 color: $dark-grey;
405 }
406 }
407 }
408
409 &[type='submit'] {
410 display: inline-block;
411 margin: 0 0 5px;
412 border: 1px solid $almost-white;
413 border-radius: 2px;
414 background: $main-green;
415 padding: 4px 0;
416 width: 100px;
417 height: 28px;
418 color: $almost-white;
419
420 &:hover {
421 background: $almost-white;
422 color: $main-green;
423 }
424 }
425
426 .remember-me {
427 @extend %subheader-form-input;
428
429 display: inline-block;
430 cursor: pointer;
431 padding: 5px 20px 3px;
432 width: auto;
433
434 label,
435 input {
436 cursor: pointer;
437 }
438 }
439
440 a {
441 &.button {
442 border: 2px solid $almost-white;
443 border-radius: 5px;
444 padding: 3px 10px;
445 text-decoration: none;
446 color: $almost-white;
447 font-weight: bold;
448 }
449 }
450 }
451
452 .header-login-form {
453 input {
454 &[type='text'],
455 &[type='password'] {
456 width: 200px;
457
458 // because chrome
459 &::-webkit-input-placeholder {
460 color: $light-grey;
461 }
462 }
463 }
464 }
465
466 @media screen and (min-width: 64em) {
467 .subheader-form {
468 &.open {
469 visibility: visible;
470
471 * {
472 visibility: visible;
473 }
474 }
475 }
476 }
477
478 .new-version-message {
479 text-align: center;
480
481 a {
482 color: $warning-text;
483 font-weight: bold;
484 }
485 }
486
487 // CONTENT - GENERAL
488 .container {
489 position: relative;
490 z-index: 2;
491 margin-top: 45px;
492 }
493
494 // Plugins additional forms
495 .toolbar-plugin {
496 margin: 5px 0;
497 text-align: center;
498
499 input {
500 &[type='text'] {
501 border: medium none currentColor;
502 border-radius: 2px;
503 box-shadow: 0 1px 0 $light-shadow, 0 1px 1px $dark-shadow inset;
504 background: $almost-white;
505 padding: 0 5px;
506 width: 300px;
507 height: 30px;
508 color: $dark-grey;
509
510 &::-webkit-input-placeholder {
511 color: $light-grey;
512 }
513 }
514
515 &[type='submit'] {
516 border: medium none currentColor;
517 border-radius: 2px;
518 background: $almost-white;
519 padding: 0 10px;
520 height: 30px;
521 color: $dark-grey;
522
523 &:hover {
524 background: $white;
525 }
526 }
527 }
528 }
529
530 @media screen and (max-width: 64em) {
531 .toolbar-plugin {
532 input {
533 &[type='text'] {
534 width: 70%;
535 }
536 }
537 }
538 }
539
540 // CONTENT - LINKLIST PAGING
541 // 64em -> lg
542 .linklist-filters {
543 margin: 5px 0;
544 color: $dark-grey;
545 font-size: .9em;
546
547 a {
548 padding: 5px 8px;
549 text-decoration: none;
550 }
551
552 .filter-off {
553 background: $almost-white;
554 color: $dark-grey;
555 }
556
557 .filter-on {
558 background: $main-green;
559 color: $light-green;
560 }
561
562 .filter-block {
563 background: $red;
564 color: $almost-white;
565 }
566 }
567
568 .linklist-pages {
569 margin: 5px 0;
570 text-align: center;
571 color: $dark-grey;
572
573 a {
574 text-decoration: none;
575 color: $dark-grey;
576
577 &:hover {
578 color: $white;
579 }
580 }
581 }
582
583 %linksperpage-button {
584 display: inline-block;
585 width: 20px;
586 text-align: center;
587 }
588
589 .linksperpage {
590 margin: 5px 0;
591 text-align: right;
592 color: $dark-grey;
593 font-size: .9em;
594
595 form {
596 display: inline;
597 }
598
599 a {
600 @extend %linksperpage-button;
601
602 background: $almost-white;
603 padding: 5px;
604 text-decoration: none;
605 color: $dark-grey;
606 }
607
608 input {
609 &[type='text'] {
610 @extend %linksperpage-button;
611
612 margin: 0;
613 border: medium none currentColor;
614 background: $almost-white;
615 padding: 4px 5px 3px 8px;
616 height: 20px;
617 color: $dark-grey;
618 font-size: .8em;
619 }
620 }
621 }
622
623 // CONTENT - LINKLIST ITEMS
624 %private-border {
625 display: block;
626 position: absolute;
627 top: 0;
628 left: 3px;
629 z-index: 1;
630 background: $orange;
631 width: 2px;
632 height: 96%;
633 content: '';
634 }
635
636 .linklist-item {
637 position: relative;
638 margin: 0 0 10px;
639 box-shadow: 1px 1px 3px $light-grey;
640 background: $almost-white;
641
642 &.private {
643 &::before {
644 display: block;
645 position: absolute;
646 top: 0;
647 left: 0;
648 z-index: 1;
649 background: $orange;
650 width: 2px;
651 height: 100%;
652 content: '';
653 }
654 }
655 }
656
657 .linklist-item-buttons {
658 position: relative;
659 z-index: 99;
660 background: transparent;
661 width: 23px;
662 }
663
664 .linklist-item-buttons-right {
665 float: right;
666 margin-right: -25px;
667 }
668
669 .linklist-item-buttons * {
670 display: block;
671 float: left;
672 margin: auto;
673 width: 100%;
674 text-align: center;
675 }
676
677 .linklist-item-title {
678 position: relative;
679 margin: 0;
680 background: $almost-white;
681 word-wrap: break-word;
682
683 h2 {
684 margin: 0;
685 padding: 3px 10px 0;
686 line-height: 30px;
687 word-wrap: break-word;
688
689 a {
690 vertical-align: middle;
691 text-decoration: none;
692 color: $dark-grey;
693 font-size: .7em;
694
695 &:visited {
696 .linklist-link {
697 color: $dark-green;
698 }
699 }
700
701 &:hover {
702 color: $dark-grey;
703 }
704 }
705 }
706
707 .linklist-link {
708 color: $main-green;
709 font-size: 1.1em;
710
711 &:hover {
712 color: $dark-grey;
713 }
714 }
715
716 .label-private {
717 border: solid 1px $orange;
718 color: $orange;
719 font-family: Arial, sans-serif;
720 font-size: .65em;
721 }
722 }
723
724 .fold-button {
725 display: none;
726 color: $dark-grey;
727 }
728
729 .linklist-item-editbuttons {
730 float: right;
731 padding: 8px 5px;
732
733 * {
734 display: block;
735 float: left;
736 margin: 0 1px;
737 }
738
739 a {
740 font-size: 1em;
741 }
742
743 .delete-checkbox {
744 display: none;
745 }
746 }
747
748 .edit-link {
749 color: $blue;
750 font-size: 1.2em;
751 }
752
753 .delete-link {
754 color: $red !important;
755 font-size: 1.3em;
756 }
757
758 .linklist-item-description {
759 position: relative;
760 padding: 0 10px;
761 line-height: 1.3em;
762 color: $dark-grey;
763 word-wrap: break-word;
764
765 a {
766 text-decoration: none;
767 color: $main-green;
768
769 &:hover {
770 color: $dark-grey;
771 }
772
773 &:visited {
774 color: $dark-green;
775 }
776 }
777 }
778
779 .linklist-item-thumbnail {
780 position: relative;
781 float: right;
782 z-index: 50;
783 margin: 0;
784 padding: 0 0 0 5px;
785 height: 90px;
786 }
787
788 .linklist-item-infos {
789 background: $background-linklist-info;
790 padding: 4px 8px;
791 color: $dark-grey;
792
793 a {
794 text-decoration: none;
795 color: $dark-grey;
796
797 &:hover {
798 color: $black;
799 }
800 }
801
802 .linklist-item-tags {
803 font-size: .8em;
804 }
805
806 .label-tag {
807 font-size: 1em;
808 }
809
810 .mobile-buttons {
811 text-align: right;
812 }
813
814 .linklist-plugin-icon {
815 display: inline-block;
816 margin: 0 2px;
817 width: 16px;
818 height: 16px;
819 }
820 }
821
822 .linklist-item-infos-dateblock {
823 font-size: .9em;
824 }
825
826 .linklist-plugin-icon {
827 width: 13px;
828 height: 13px;
829 }
830
831 .linklist-item-infos-url {
832 height: 23px;
833 overflow: hidden;
834 text-align: right;
835 text-overflow: ellipsis;
836 line-height: 23px;
837 white-space: nowrap;
838 font-size: .8em;
839 }
840
841 .linklist-item-infos-controls-group {
842 display: inline-block;
843 border-right: 1px solid $light-grey;
844 padding-right: 6px;
845 }
846
847 .ctrl-edit {
848 margin: 0 7px;
849 }
850
851 // 64em -> lg
852 @media screen and (max-width: 64em) {
853 .linklist-item-infos-url {
854 text-align: left;
855 }
856 }
857
858 // Footer
859 .footer-container {
860 margin: 20px 0;
861 padding: 5px;
862 text-align: center;
863 color: $dark-grey;
864
865 &::before {
866 display: block;
867 margin: 10px auto;
868 background: linear-gradient(to right, $background-color, $dark-grey, $background-color);
869 width: 80%;
870 height: 1px;
871 content: '';
872 }
873
874 a {
875 color: $dark-grey;
876 }
877 }
878
879 // PAGE FORM
880 %page-form-input {
881 margin: 10px 0;
882 border: solid 1px $form-input-border;
883 border-radius: 2px;
884 background: $form-input-background;
885 padding: 5px 5px 3px 15px;
886 width: 90%;
887 height: 35px;
888 color: $dark-grey;
889 box-sizing: border-box;
890 }
891
892 %page-form-button {
893 display: inline-block;
894 margin: 15px 5px;
895 border: 0;
896 box-shadow: 1px 1px 1px $form-input-border, -1px -1px 6px $form-input-border, -1px 1px 2px $form-input-border, 1px -1px 2px $form-input-border;
897 background: $main-green;
898 min-width: 150px;
899 height: 35px;
900 vertical-align: center;
901 text-decoration: none;
902 line-height: 35px;
903 color: $almost-white;
904 font-size: 1.2em;
905 font-weight: normal;
906 }
907
908 .page-form {
909 margin: 20px 0 0;
910 box-shadow: 1px 1px 2px $light-grey;
911 background: $almost-white;
912 overflow: hidden;
913 color: $dark-grey;
914
915 .window-title {
916 margin: 0 0 10px;
917 background: $almost-white;
918 padding: 10px 0;
919 width: 100%;
920 text-align: center;
921 color: $main-green;
922 }
923
924 .window-subtitle {
925 text-align: center;
926 }
927
928 a {
929 text-decoration: none;
930 color: $main-green;
931 font-weight: bold;
932
933 &.button {
934 @extend %page-form-button;
935 }
936 }
937
938 p {
939 margin: 0;
940 padding: 5px 10px;
941 }
942
943 input {
944 &[type='text'] {
945 @extend %page-form-input;
946
947 &::-webkit-input-placeholder {
948 color: $light-grey;
949 }
950 }
951
952 &[type='password'] {
953 @extend %page-form-input;
954
955 &::-webkit-input-placeholder {
956 color: $light-grey;
957 }
958 }
959
960 &[type='submit'] {
961 @extend %page-form-button;
962 }
963 }
964
965 textarea {
966 @extend %page-form-input;
967
968 padding: 15px 5px 3px 15px;
969 min-height: 240px;
970 resize: vertical;
971 overflow-y: auto;
972 word-wrap: break-word;
973 }
974
975 select {
976 color: $dark-grey;
977 }
978
979 .button {
980 &.button-red {
981 background: $red;
982 }
983 }
984
985 .submit-buttons {
986 margin-bottom: 10px;
987 }
988
989 section {
990 margin: 10px 0 25px;
991 }
992
993 table,
994 th,
995 td {
996 border-width: 1px 0;
997 border-style: solid;
998 border-color: $light-grey;
999 }
1000
1001 th,
1002 td {
1003 padding: 5px;
1004 }
1005
1006 table {
1007 margin: auto;
1008 width: 90%;
1009
1010 .order {
1011 text-decoration: none;
1012 color: $dark-grey;
1013 }
1014 }
1015
1016 .awesomplete {
1017 width: 90%;
1018
1019 input {
1020 width: 100%;
1021 }
1022 }
1023
1024 div {
1025 .awesomplete {
1026 > ul {
1027 color: $black;
1028 }
1029 }
1030 }
1031 }
1032
1033 @media screen and (min-width: 64em) {
1034 .page-form {
1035 .submit-buttons {
1036 position: relative;
1037
1038 .button {
1039 &.button-red {
1040 position: absolute;
1041 right: 5%;
1042 }
1043 }
1044 }
1045 }
1046 }
1047
1048 @media screen and (max-width: 64em) {
1049 .page-form {
1050 .submit-buttons {
1051 .button {
1052 display: block;
1053 margin: auto;
1054 }
1055 }
1056 }
1057 }
1058
1059 // PAGE FORM - LIGHT
1060 .page-form-light {
1061 div,
1062 p {
1063 text-align: center;
1064 }
1065 }
1066
1067 // PAGE FORM - COMPLETE
1068 %page-form-valign {
1069 position: absolute;
1070 top: 50%;
1071 transform: translateY(-50%);
1072 }
1073
1074 .page-form-complete {
1075 div,
1076 p {
1077 color: $dark-grey;
1078 }
1079
1080 .form-label,
1081 .form-input {
1082 position: relative;
1083 height: 60px;
1084 }
1085
1086 .form-label {
1087 label {
1088 @extend %page-form-valign;
1089
1090 right: 0;
1091 padding: 0 20px;
1092 text-align: right;
1093 }
1094 }
1095
1096 .label-name {
1097 font-weight: bold;
1098 }
1099
1100 .label-desc {
1101 font-size: .8em;
1102 }
1103
1104 .form-input {
1105 input {
1106 @extend %page-form-valign;
1107
1108 &[type='text'],
1109 &[type='password'] {
1110 margin: 0;
1111 }
1112 }
1113
1114 select {
1115 &.align {
1116 @extend %page-form-valign;
1117 }
1118 }
1119 }
1120
1121 textarea {
1122 margin: 0;
1123 }
1124
1125 .timezone {
1126 @extend %page-form-valign;
1127 }
1128 }
1129
1130 // Awesomeplete fix
1131 div {
1132 &.awesomplete {
1133 width: inherit;
1134
1135 > input {
1136 display: inherit;
1137 }
1138
1139 > ul {
1140 z-index: 9999;
1141 }
1142 }
1143 }
1144
1145 form {
1146 &[name='linkform'] {
1147 &.page-form {
1148 overflow: visible;
1149 }
1150 }
1151 }
1152
1153 @media screen and (max-width: 64em) {
1154 %page-form-valign-mobile {
1155 position: inherit;
1156 top: inherit;
1157 transform: translateY(0);
1158 }
1159
1160 .page-form-complete {
1161 .form-label {
1162 height: inherit;
1163
1164 label {
1165 @extend %page-form-valign-mobile;
1166
1167 display: block;
1168 margin: 10px 0 0;
1169 text-align: left;
1170 }
1171 }
1172
1173 .form-input {
1174 text-align: center;
1175
1176 input {
1177 @extend %page-form-valign-mobile;
1178
1179 &[type='checkbox'] {
1180 position: absolute;
1181 top: 50%;
1182 right: 50%;
1183 transform: translateY(-50%);
1184 }
1185 }
1186 }
1187
1188 .timezone {
1189 @extend %page-form-valign-mobile;
1190 }
1191
1192 .radio-buttons {
1193 padding: 5px 15px;
1194 text-align: left;
1195 }
1196 }
1197
1198 .timezone-continent {
1199 &::after {
1200 white-space: pre;
1201 content: '\a\a';
1202 }
1203 }
1204 }
1205
1206 // Page visitor (page form extended)
1207 .page-visitor {
1208 color: $dark-grey;
1209 }
1210
1211 .page404-container {
1212 color: $dark-grey;
1213 }
1214
1215 // EDIT LINK
1216 .edit-link-container {
1217 .created-date {
1218 margin-bottom: 10px;
1219 color: $light-grey;
1220 }
1221 }
1222
1223 // LOGIN
1224 .login-form-container {
1225 .remember-me {
1226 margin: 5px 0;
1227 }
1228 }
1229
1230 // Search results
1231 .search-result {
1232 a {
1233 text-decoration: none;
1234 color: $white;
1235 }
1236
1237 .label-tag {
1238 border-color: $white;
1239
1240 .remove {
1241 margin: 0 0 0 5px;
1242 border-left: $white 1px solid;
1243 padding: 0 0 0 5px;
1244 }
1245 }
1246
1247 .label-private {
1248 border: 1px solid $white;
1249 }
1250 }
1251
1252 // TOOLS
1253 .tools-item {
1254 margin: 10px 0;
1255
1256 .pure-button {
1257 &:hover {
1258 background-color: $main-green;
1259 background-image: none;
1260 color: $almost-white;
1261 }
1262 }
1263 }
1264
1265 // PLUGIN ADMIN
1266 .pluginform-container {
1267 .mobile-row {
1268 font-size: .9em;
1269 }
1270
1271 .more {
1272 margin-top: 10px;
1273 }
1274 }
1275
1276 @media screen and (max-width: 64em) {
1277 .pluginform-container {
1278 .main-row {
1279 border-top-style: none;
1280 border-bottom-style: none;
1281
1282 td {
1283 border-top-style: none;
1284 border-bottom-style: none;
1285 }
1286 }
1287 }
1288 }
1289
1290 // IMPORT
1291 .import-field-container {
1292 margin: 15px 0;
1293 }
1294
1295 // TAG CLOUD
1296 .cloudtag-container {
1297 padding: 10px;
1298 text-align: center;
1299 text-decoration: none;
1300 color: $dark-grey;
1301
1302 a {
1303 text-decoration: none;
1304 color: $dark-grey;
1305 }
1306
1307 .count {
1308 color: $light-grey;
1309 }
1310 }
1311
1312 // TAG LIST
1313 .taglist-container {
1314 padding: 0 10px;
1315
1316 a {
1317 text-decoration: none;
1318 color: $dark-grey;
1319 }
1320
1321 .count {
1322 display: inline-block;
1323 width: 35px;
1324 text-align: right;
1325 color: $light-grey;
1326 }
1327
1328 .rename-tag-form {
1329 display: none;
1330 }
1331
1332 .delete-tag {
1333 display: none;
1334 color: $red;
1335 }
1336
1337 .rename-tag {
1338 color: $blue;
1339 }
1340
1341 .validate-rename-tag {
1342 color: $main-green;
1343 }
1344 }
1345
1346 // Picture wall CSS
1347 .picwall-container {
1348 clear: both;
1349 margin: 0 10px 10px;
1350 background-color: $almost-white;
1351 color: $dark-grey;
1352 }
1353
1354 .picwall-pictureframe {
1355 display: table-cell;
1356 position: relative;
1357 float: left;
1358 z-index: 5;
1359 margin: 2px;
1360 background-color: $almost-white;
1361 width: 90px;
1362 height: 90px;
1363 overflow: hidden;
1364 vertical-align: middle;
1365 text-align: center;
1366
1367 // Adapt the width of the image
1368 img {
1369 max-width: 100%;
1370 height: auto;
1371 color: transparent;
1372 }
1373
1374 a {
1375 text-decoration: none;
1376 }
1377
1378 span {
1379 &.info {
1380 display: none;
1381 font-family: Arial, sans-serif;
1382 }
1383 }
1384
1385 // CSS to show title when hovering an image - no javascript required.
1386 &:hover {
1387 span {
1388 &.info {
1389 display: block;
1390 position: absolute;
1391 top: 0;
1392 left: 0;
1393 background-color: $dark-shadow;
1394 width: 90px;
1395 height: 90px;
1396 text-align: left;
1397 color: $almost-white;
1398 font-size: 9pt;
1399 font-weight: bold;
1400 }
1401 }
1402 }
1403 }
1404
1405 .b-lazy {
1406 transition: opacity 500ms ease-in-out;
1407 opacity: 0;
1408 -webkit-transition: opacity 500ms ease-in-out;
1409 -moz-transition: opacity 500ms ease-in-out;
1410 -o-transition: opacity 500ms ease-in-out;
1411
1412 &.b-loaded {
1413 opacity: 1;
1414 }
1415 }
1416
1417 // DAILY
1418 .daily-desc {
1419 color: $light-grey;
1420 font-size: .8em;
1421
1422 a {
1423 text-decoration: none;
1424 color: $dark-grey;
1425
1426 &:hover {
1427 color: $light-grey;
1428 }
1429 }
1430 }
1431
1432 .daily-about {
1433 h3 {
1434 &::before,
1435 &::after {
1436 display: block;
1437 margin: 10px auto;
1438 background: linear-gradient(to right, $background-color, $dark-grey, $background-color);
1439 width: 90%;
1440 height: 1px;
1441 content: '';
1442 }
1443 }
1444 }
1445
1446 .daily-entry {
1447 padding: 0 10px;
1448
1449 .daily-entry-title {
1450 margin: 10px 0 0;
1451
1452 a {
1453 text-decoration: none;
1454 color: $black;
1455 }
1456
1457 &::after {
1458 display: block;
1459 margin: 5px auto;
1460 background: linear-gradient(to right, $white, $light-grey, $white);
1461 width: 70%;
1462 height: 1px;
1463 content: '';
1464 }
1465 }
1466
1467 .daily-entry-description {
1468 padding: 5px 5px 0;
1469 text-align: justify;
1470 font-size: .9em;
1471 word-wrap: break-word;
1472 }
1473
1474 .daily-entry-tags {
1475 padding: 0 5px 5px;
1476 font-size: .8em;
1477 }
1478 }
1479
1480 .daily-entry-thumbnail {
1481 float: left;
1482 margin: 15px 5px 5px 15px;
1483 }
1484
1485 .daily-entry-description {
1486 a {
1487 text-decoration: none;
1488 color: $main-green;
1489
1490 &:hover {
1491 text-shadow: 1px 1px $background-linklist-info;
1492 }
1493
1494 &:visited {
1495 color: $dark-green;
1496 }
1497 }
1498 }
1499
1500 // Fix empty bookmarklet name in Firefox
1501 .pure-button {
1502 -moz-user-select: auto;
1503 }
1504
1505 .tag-sort {
1506 margin-top: 30px;
1507 text-align: center;
1508
1509 a {
1510 display: inline-block;
1511 margin: 0 15px;
1512 text-decoration: none;
1513 color: $white;
1514 font-weight: bold;
1515 }
1516 }
1517
1518 // Markdown
1519 .markdown {
1520 p {
1521 margin: 0 !important;
1522 }
1523
1524 p + p {
1525 margin: .5em 0 0 !important;
1526 }
1527
1528 * {
1529 &:first-child {
1530 margin-top: 0 !important;
1531 }
1532
1533 &:last-child {
1534 margin-bottom: 5px !important;
1535 }
1536 }
1537 }
1538
1539 // Pure Button
1540 .pure-button-success,
1541 .pure-button-error,
1542 .pure-button-warning,
1543 .pure-button-primary,
1544 .pure-button-shaarli,
1545 .pure-button-secondary {
1546 border-radius: 4px;
1547 text-shadow: 0 1px 1px $dark-shadow;
1548 color: $white !important;
1549 }
1550
1551 .pure-button-shaarli {
1552 background-color: $main-green;
1553 }
1554
1555 .progressbar {
1556 border-radius: 6px;
1557 background-color: $main-green;
1558 padding: 1px;
1559
1560 > div {
1561 border-radius: 10px;
1562 background: repeating-linear-gradient(
1563 -45deg,
1564 $almost-white,
1565 $almost-white 6px,
1566 $background-color 6px,
1567 $background-color 12px
1568 );
1569 width: 0%;
1570 height: 10px;
1571 }
1572 }
1573
1574 .thumbnails-page-container {
1575 .progress-counter {
1576 padding: 10px 0 20px;
1577 }
1578
1579 .thumbnail-placeholder {
1580 margin: 10px auto;
1581 background-color: $light-grey;
1582 }
1583
1584 .thumbnail-link-title {
1585 padding-bottom: 20px;
1586 overflow: hidden;
1587 text-overflow: ellipsis;
1588 white-space: nowrap;
1589 }
1590 }