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