]> git.immae.eu Git - github/wallabag/wallabag.git/blob - app/Resources/static/themes/material/css/main.css
Merge pull request #2328 from wallabag/avoid-duplicate-url
[github/wallabag/wallabag.git] / app / Resources / static / themes / material / css / main.css
1 /* ==========================================================================
2 Sommaire
3
4 0 = Common
5 1 = Nav
6 2 = Side-nav
7 3 = Filters slider
8 4 = Cards
9 5 = Article
10 6 = Media queries
11 7 = Font
12 8 = Others
13
14 ========================================================================== */
15
16 /* ==========================================================================
17 0 = Common
18 ========================================================================== */
19
20 @font-face {
21 font-family: icomoon;
22 src: url("../fonts/icomoon.eot");
23 src:
24 url("../fonts/icomoon.eot#iefix") format("embedded-opentype"),
25 url("../fonts/icomoon.ttf") format("truetype"),
26 url("../fonts/icomoon.woff") format("woff"),
27 url("../fonts/icomoon.svg#icomoon") format("svg");
28 font-weight: normal;
29 font-style: normal;
30 }
31
32 @font-face {
33 font-family: 'Material Icons';
34 font-style: normal;
35 font-weight: 400;
36 src: url(../fonts/MaterialIcons-Regular.eot);
37
38 /* For IE6-8 */
39 src: local("Material Icons"), local("MaterialIcons-Regular"), url(../fonts/MaterialIcons-Regular.woff2) format("woff2"), url(../fonts/MaterialIcons-Regular.woff) format("woff"), url(../fonts/MaterialIcons-Regular.ttf) format("truetype");
40 }
41
42 .material-icons {
43 font-family: 'Material Icons';
44 font-weight: normal;
45 font-style: normal;
46 font-size: 24px; /* Preferred icon size */
47 width: 1em;
48 height: 1em;
49 display: inline-block;
50 line-height: 1;
51 text-transform: none;
52 letter-spacing: normal;
53 word-wrap: normal;
54 white-space: nowrap;
55 direction: ltr;
56
57 /* Support for all WebKit browsers. */
58 -webkit-font-smoothing: antialiased;
59
60 /* Support for Safari and Chrome. */
61 text-rendering: optimizeLegibility;
62
63 /* Support for Firefox. */
64 -moz-osx-font-smoothing: grayscale;
65
66 /* Support for IE. */
67 font-feature-settings: 'liga';
68 }
69
70 [class^="icon-"],
71 [class*=" icon-"] {
72 font-family: icomoon;
73 speak: none;
74 font-style: normal;
75 font-weight: normal;
76 font-variant: normal;
77 text-transform: none;
78 line-height: 1;
79
80 /* Better Font Rendering =========== */
81 -webkit-font-smoothing: antialiased;
82 -moz-osx-font-smoothing: grayscale;
83 }
84
85 body {
86 display: flex;
87 min-height: 100vh;
88 flex-direction: column;
89 background: #f0f0f0;
90 }
91
92 body.login main {
93 padding: 0;
94 min-height: 100vh;
95 }
96
97 .border-bottom {
98 border-bottom: 1px solid #ddd;
99 }
100
101 nav,
102 main,
103 footer {
104 padding-left: 240px;
105 }
106
107 main,
108 #content,
109 .valign-wrapper {
110 height: 100%;
111 }
112
113 #main {
114 flex: 1 0 auto;
115 }
116
117 .results {
118 height: 1em;
119 line-height: 30px;
120 }
121
122 .results .nb-results,
123 .results .pagination {
124 margin: 15px;
125 margin-bottom: 0;
126 }
127
128 .pagination {
129 float: right;
130 }
131
132 .pagination ul {
133 margin: 0 !important;
134 }
135
136 .pagination li {
137 padding: 0;
138 }
139
140 .pagination a {
141 padding: 0 10px;
142 height: 30px;
143 display: block;
144 }
145
146 .pagination .disabled {
147 margin-right: 10px;
148 margin-left: 10px;
149 }
150
151 div.pagination ul .prev.disabled,
152 div.pagination ul .next.disabled {
153 display: none;
154 }
155
156 .pagination li.active span {
157 padding: 0 10px;
158 height: 30px;
159 display: block;
160 color: #fff;
161 }
162
163 .page-footer .footer-copyright p {
164 display: inline;
165 }
166
167 .hidden {
168 display: none;
169 }
170
171 .picker__date-display {
172 display: none;
173 }
174
175 footer.page-footer {
176 margin-top: 10px;
177 padding-top: 0px;
178 }
179
180 footer .row {
181 margin-bottom: 10px;
182 }
183
184 /* ==========================================================================
185 1 = Nav
186 ========================================================================== */
187
188 nav input {
189 color: #aaa;
190 }
191
192 .nav-wrapper .button-collapse {
193 padding: 0 15px;
194 }
195
196 .nav-input {
197 display: none;
198 }
199
200 .nav-panels {
201 overflow: hidden;
202 }
203
204 .nav-panel-buttom li {
205 max-height: 64px;
206 }
207
208 .nav-panels {
209 transition: background 0.2s ease;
210 }
211
212 .nav-panel-add .add,
213 .nav-panel-search .search,
214 .nav-panels .close {
215 color: #444 !important;
216 }
217
218 .nav-panels .action {
219 padding-left: 0.75rem;
220 font-size: 2.1rem;
221 white-space: nowrap;
222 }
223
224 .nav-panels .input-field input {
225 display: block;
226 line-height: inherit;
227 padding-left: 4rem !important;
228 width: calc(100% - 8rem);
229 }
230
231 .nav-panels .input-field input:focus {
232 background-color: #fff;
233 border: 0;
234 box-shadow: none;
235 color: #444;
236 }
237
238 .input-field.nav-panel-add label {
239 left: 1rem;
240 }
241
242 .input-field.nav-panel-add .close {
243 position: absolute;
244 top: 0;
245 right: 1rem;
246 color: transparent;
247 cursor: pointer;
248 font-size: 2rem;
249 transition: 0.3s color;
250 }
251
252 #button_filters {
253 display: none;
254 }
255
256 #button_export {
257 display: none;
258 }
259
260 .input-field.nav-panel-add, .input-field.nav-panel-add form {
261 height: 100%;
262 }
263
264 /* ==========================================================================
265 2 = Side-nav
266 ========================================================================== */
267
268 .side-nav.fixed a {
269 font-size: 13px;
270 line-height: 44px;
271 height: 44px;
272 }
273
274 .side-nav .collapsible-header,
275 .side-nav.fixed .collapsible-header {
276 height: 45px;
277 line-height: 44px;
278 padding: 0 20px;
279 }
280
281 .bold > a {
282 font-weight: bold;
283 }
284
285 .side-nav > li.logo {
286 line-height: 0;
287 text-align: center;
288 }
289
290 #main .logo a {
291 height: 100pt;
292 }
293
294 #main .logo img {
295 height: 100pt;
296 width: 100pt;
297 }
298
299 #main .logo:hover {
300 background: transparent;
301 }
302
303 .side-nav li {
304 padding: 0;
305 }
306
307 .side-nav a {
308 margin: 0 1rem;
309 }
310
311 span.numberItems {
312 float: right;
313 }
314
315 /* ==========================================================================
316 * 3 = Filters slider
317 * ========================================================================== */
318
319 #filters button {
320 padding: 0;
321 width: 100%;
322 }
323
324 .side-nav.fixed.right-aligned {
325 right: -250px;
326 left: auto !important;
327 overflow-y: visible;
328 }
329
330 #filters div.with-checkbox {
331 height: 3rem;
332 margin-top: 0;
333 }
334
335 /* ==========================================================================
336 4 = Cards
337 ========================================================================== */
338
339 main #content {
340 padding: 0 0.5rem;
341 }
342
343 main ul.row {
344 padding: 0 0.75rem;
345 }
346
347 .data .card .card-body {
348 height: 22em;
349 overflow: hidden;
350 }
351
352 .card .card-content .card-title {
353 line-height: 32px;
354 max-height: 64px;
355 }
356
357 .card .card-content i.right, .card .card-reveal i.right {
358 margin-left: 0;
359 }
360
361 .card .card-entry-labels {
362 position: absolute;
363 top: 10px;
364 z-index: 90;
365 max-width: 50%;
366 }
367
368 .card .card-entry-labels li {
369 margin: 10px 10px 10px auto;
370 padding: 5px 12px 5px 16px;
371 background-color: rgba(0, 151, 167, 0.85);
372 border-radius: 0 3px 3px 0;
373 color: #fff;
374 cursor: default;
375 max-height: 2em;
376 overflow: hidden;
377 text-overflow: ellipsis;
378 white-space: nowrap;
379 }
380
381 .card .card-entry-labels-hidden {
382 margin-top: 5px;
383 }
384
385 .card .card-entry-labels-hidden li {
386 display: inline-block;
387 background-color: rgba(0, 151, 167, 0.85);
388 margin: 0 5px;
389 padding: 5px 12px;
390 border-radius: 3px;
391 color: #fff;
392 max-height: 2em;
393 max-width: calc(100% - 15px);
394 overflow: hidden;
395 text-overflow: ellipsis;
396 white-space: nowrap;
397 }
398
399 .card .card-content .estimatedTime {
400 margin-bottom: 10px;
401 }
402
403 .card .card-action .original {
404 line-height: 24px;
405 }
406
407 .card .card-action ul.links {
408 margin: 0;
409 font-size: 24px;
410 line-height: 24px;
411 }
412
413 .card .card-action a {
414 color: #fff !important;
415 margin: 0;
416 }
417
418 .card .card-action a:hover {
419 color: #fff !important;
420 }
421
422 .settings .div_tabs {
423 padding-bottom: 15px;
424 }
425
426 .card.sw {
427 max-width: 370px;
428 margin-left: auto;
429 margin-right: auto;
430 }
431
432 .card .card-image {
433 height: 14em;
434 }
435
436 .card .card-image .preview {
437 height: 14em;
438 background-size: cover;
439 background-repeat: no-repeat;
440 background-position: 50%;
441 }
442
443 /* ==========================================================================
444 5 = Article
445 ========================================================================== */
446
447 #article {
448 font-size: 20px;
449 margin: 0 auto;
450 max-width: 40em;
451 }
452
453 #article img,
454 #article figure {
455 max-width: 100%;
456 height: auto;
457 }
458
459 #article > header > h1 {
460 font-size: 2em;
461 }
462
463 .reader-mode {
464 width: 95px !important;
465 transition: width 0.2s ease;
466 }
467
468 .reader-mode:hover {
469 width: 240px !important;
470 }
471
472 .reader-mode .collapsible-body {
473 height: 0;
474 overflow: hidden;
475 }
476
477 .reader-mode:hover .collapsible-body {
478 height: auto;
479 }
480
481 .reader-mode span {
482 opacity: 0;
483 transition: opacity 0.2s ease;
484 }
485
486 .reader-mode:hover span {
487 opacity: 1;
488 }
489
490 .progress {
491 position: fixed;
492 top: 0;
493 width: 100%;
494 height: 3px;
495 margin: 0;
496 z-index: 9999;
497 }
498
499 #article aside .link {
500 color: #000;
501 font-size: 0.8em;
502 text-decoration: none;
503 }
504
505 #article aside #list {
506 float: right;
507 margin: 0 15px 10px;
508 }
509
510 #article aside .chip {
511 background-color: rgba(0, 151, 167, 0.85);
512 color: #fff;
513 padding: 0 15px 0 10px;
514 }
515
516 #article aside .chip i {
517 color: #fff;
518 }
519
520 /* ==========================================================================
521 6 = Media queries
522 ========================================================================== */
523
524 @media only screen and (max-width: 992px) {
525 header,
526 main,
527 footer {
528 padding-left: 0;
529 }
530 nav,
531 main,
532 footer {
533 padding-left: 0;
534 }
535 .pagination {
536 width: auto;
537 }
538 .reader-mode {
539 width: 240px !important;
540 }
541 .reader-mode span {
542 opacity: 1;
543 }
544 .tabs {
545 display: inline-block;
546 height: auto;
547 }
548 .tab {
549 min-width: 100%;
550 }
551 .indicator {
552 display: none;
553 }
554 .pagination li.prev,
555 .pagination li.next {
556 width: auto;
557 }
558 }
559
560 @media only screen and (min-width: 400px) {
561 .nav-panel-buttom {
562 float: right;
563 }
564 }
565
566 @media only screen and (min-width: 993px) and (max-width: 1180px) {
567 .row .col.l1 {
568 width: 25%;
569 margin-left: 0;
570 }
571 .row .col.l2 {
572 width: 33.33333%;
573 margin-left: 0;
574 }
575 .row .col.l3 {
576 width: 41.66667%;
577 margin-left: 0;
578 }
579 .row .col.l4 {
580 width: 50%;
581 margin-left: 0;
582 }
583 .row .col.l5 {
584 width: 58.33333%;
585 margin-left: 0;
586 }
587 .row .col.l6 {
588 width: 66.66667%;
589 margin-left: 0;
590 }
591 .row .col.l7 {
592 width: 75%;
593 margin-left: 0;
594 }
595 .row .col.l8 {
596 width: 83.33333%;
597 margin-left: 0;
598 }
599 .row .col.l9 {
600 width: 91.66667%;
601 margin-left: 0;
602 }
603 .row .col.l10 {
604 width: 100%;
605 margin-left: 0;
606 }
607 }
608
609 @media only screen and (max-width: 350px) {
610 .nb-results {
611 display: none;
612 }
613 }
614
615 /* ==========================================================================
616 7 = Font
617 ========================================================================== */
618
619 .icon-google-plus2::before {
620 content: "\ea89";
621 }
622
623 .icon-facebook2::before {
624 content: "\ea8d";
625 }
626
627 .icon-twitter::before {
628 content: "\ea91";
629 }
630
631 .icon-apple::before {
632 content: "\eabf";
633 }
634
635 .icon-android::before {
636 content: "\eac1";
637 }
638
639 .icon-chrome::before {
640 content: "\eae5";
641 }
642
643 .icon-firefox::before {
644 content: "\eae6";
645 }
646
647 .icon-link::before {
648 content: "\e9cb";
649 }
650
651 footer [class^="icon-"],
652 footer [class*=" icon-"] {
653 font-size: 2em;
654 transition: text-shadow 0.2s ease;
655 padding-right: 10px;
656 }
657
658 footer [class^="icon-"]:hover,
659 footer [class*=" icon-"]:hover {
660 text-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
661 }
662
663 /* ==========================================================================
664 8 = Others
665 ========================================================================== */
666
667 /* force height on non-input field in the settings page */
668 div.settings div.input-field div,
669 div.settings div.input-field ul {
670 margin-top: 40px;
671 }
672
673 /* but avoid to kill all file input */
674 div.settings div.file-field div {
675 margin-top: inherit;
676 }
677
678 .input-field label.active {
679 font-size: 1rem;
680 }