]> git.lizzy.rs Git - rust.git/blob - src/librustdoc/html/static/rustdoc.css
Regression test for issue #54477.
[rust.git] / src / librustdoc / html / static / rustdoc.css
1 /**
2  * Copyright 2013 The Rust Project Developers. See the COPYRIGHT
3  * file at the top-level directory of this distribution and at
4  * http://rust-lang.org/COPYRIGHT.
5  *
6  * Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
7  * http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
8  * <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
9  * option. This file may not be copied, modified, or distributed
10  * except according to those terms.
11  */
12
13 /* See FiraSans-LICENSE.txt for the Fira Sans license. */
14 @font-face {
15         font-family: 'Fira Sans';
16         font-style: normal;
17         font-weight: 400;
18         src: local('Fira Sans'), url("FiraSans-Regular.woff") format('woff');
19 }
20 @font-face {
21         font-family: 'Fira Sans';
22         font-style: normal;
23         font-weight: 500;
24         src: local('Fira Sans Medium'), url("FiraSans-Medium.woff") format('woff');
25 }
26
27 /* See SourceSerifPro-LICENSE.txt for the Source Serif Pro license and
28  * Heuristica-LICENSE.txt for the Heuristica license. */
29 @font-face {
30         font-family: 'Source Serif Pro';
31         font-style: normal;
32         font-weight: 400;
33         src: local('Source Serif Pro'), url("SourceSerifPro-Regular.woff") format('woff');
34 }
35 @font-face {
36         font-family: 'Source Serif Pro';
37         font-style: italic;
38         font-weight: 400;
39         src: url("Heuristica-Italic.woff") format('woff');
40 }
41 @font-face {
42         font-family: 'Source Serif Pro';
43         font-style: normal;
44         font-weight: 700;
45         src: local('Source Serif Pro Bold'), url("SourceSerifPro-Bold.woff") format('woff');
46 }
47
48 /* See SourceCodePro-LICENSE.txt for the Source Code Pro license. */
49 @font-face {
50         font-family: 'Source Code Pro';
51         font-style: normal;
52         font-weight: 400;
53         /* Avoid using locally installed font because bad versions are in circulation:
54          * see https://github.com/rust-lang/rust/issues/24355 */
55         src: url("SourceCodePro-Regular.woff") format('woff');
56 }
57 @font-face {
58         font-family: 'Source Code Pro';
59         font-style: normal;
60         font-weight: 600;
61         src: url("SourceCodePro-Semibold.woff") format('woff');
62 }
63
64 * {
65   -webkit-box-sizing: border-box;
66          -moz-box-sizing: border-box;
67                   box-sizing: border-box;
68 }
69
70 /* General structure and fonts */
71
72 body {
73         font: 16px/1.4 "Source Serif Pro", Georgia, Times, "Times New Roman", serif;
74         margin: 0;
75         position: relative;
76         padding: 10px 15px 20px 15px;
77
78         -webkit-font-feature-settings: "kern", "liga";
79         -moz-font-feature-settings: "kern", "liga";
80         font-feature-settings: "kern", "liga";
81 }
82
83 h1 {
84         font-size: 1.5em;
85 }
86 h2 {
87         font-size: 1.4em;
88 }
89 h3 {
90         font-size: 1.3em;
91 }
92 h1, h2, h3:not(.impl):not(.method):not(.type):not(.tymethod):not(.important), h4:not(.method):not(.type):not(.tymethod):not(.associatedconstant) {
93         font-weight: 500;
94         margin: 20px 0 15px 0;
95         padding-bottom: 6px;
96 }
97 h1.fqn {
98         border-bottom: 1px dashed;
99         margin-top: 0;
100 }
101 h2, h3:not(.impl):not(.method):not(.type):not(.tymethod), h4:not(.method):not(.type):not(.tymethod):not(.associatedconstant) {
102         border-bottom: 1px solid;
103 }
104 h3.impl, h3.method, h4.method, h3.type, h4.type, h4.associatedconstant {
105         font-weight: 600;
106         margin-top: 10px;
107         margin-bottom: 10px;
108         position: relative;
109 }
110 h3.impl, h3.method, h3.type {
111         padding-left: 15px;
112 }
113
114 h1, h2, h3, h4,
115 .sidebar, a.source, .search-input, .content table :not(code)>a,
116 .collapse-toggle, div.item-list .out-of-band {
117         font-family: "Fira Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
118 }
119
120 ol, ul {
121         padding-left: 25px;
122 }
123 ul ul, ol ul, ul ol, ol ol {
124         margin-bottom: 0;
125 }
126
127 p {
128         margin: 0 0 .6em 0;
129 }
130
131 summary {
132         outline: none;
133 }
134
135 code, pre {
136         font-family: "Source Code Pro", Menlo, Monaco, Consolas, "DejaVu Sans Mono", Inconsolata, monospace;
137         white-space: pre-wrap;
138 }
139 .docblock code, .docblock-short code {
140         border-radius: 3px;
141         padding: 0 0.1em;
142 }
143 .docblock pre code, .docblock-short pre code, .docblock code.spotlight {
144         padding: 0;
145 }
146 .docblock code.spotlight :last-child {
147         padding-bottom: 0.6em;
148 }
149 pre {
150         padding: 14px;
151 }
152
153 .source .content pre {
154         padding: 20px;
155 }
156
157 img {
158         max-width: 100%;
159 }
160
161 .source .content {
162         margin-top: 50px;
163         max-width: none;
164         overflow: visible;
165         margin-left: 0px;
166         min-width: 70em;
167 }
168
169 nav.sub {
170         font-size: 16px;
171         text-transform: uppercase;
172 }
173
174 .sidebar {
175         width: 200px;
176         position: fixed;
177         left: 0;
178         top: 0;
179         height: 100vh;
180         overflow: auto;
181 }
182
183 .sidebar .block > ul > li {
184         margin-right: -10px;
185 }
186
187 .content, nav {
188         max-width: 960px;
189 }
190
191 /* Everything else */
192
193 .js-only, .hidden {
194         display: none !important;
195 }
196
197 .sidebar img {
198         margin: 20px auto;
199         display: block;
200         margin-top: 10px;
201 }
202
203 .sidebar .location {
204         border: 1px solid;
205         font-size: 17px;
206         margin: 30px 10px 20px 10px;
207         text-align: center;
208         word-wrap: break-word;
209 }
210
211 .sidebar .version {
212         font-size: 15px;
213         text-align: center;
214         border-bottom: 1px solid;
215         overflow-wrap: break-word;
216         word-wrap: break-word; /* deprecated */
217         word-break: break-word; /* Chrome, non-standard */
218 }
219
220 .location:empty {
221         border: none;
222 }
223
224 .location a:first-child {
225         font-weight: 500;
226 }
227
228 .block {
229         padding: 0;
230         margin-bottom: 14px;
231 }
232 .block h2, .block h3 {
233         margin-top: 0;
234         margin-bottom: 8px;
235         text-align: center;
236 }
237 .block ul, .block li {
238         margin: 0 10px;
239         padding: 0;
240         list-style: none;
241 }
242
243 .block a {
244         display: block;
245         text-overflow: ellipsis;
246         overflow: hidden;
247         line-height: 15px;
248         padding: 7px 5px;
249         font-size: 14px;
250         font-weight: 300;
251         transition: border 500ms ease-out;
252 }
253
254 .sidebar-title {
255         border-top: 1px solid;
256         border-bottom: 1px solid;
257         text-align: center;
258         font-size: 17px;
259         margin-bottom: 5px;
260 }
261
262 .sidebar-links {
263         margin-bottom: 15px;
264 }
265
266 .sidebar-links > a {
267         padding-left: 10px;
268         width: 100%;
269 }
270
271 .sidebar-menu {
272         display: none;
273 }
274
275 .content {
276         padding: 15px 0;
277 }
278
279 .source .content pre.rust {
280         white-space: pre;
281         overflow: auto;
282         padding-left: 0;
283 }
284
285 .example-wrap {
286         display: inline-flex;
287         width: 100%;
288 }
289
290 .example-wrap > pre.line-number {
291         overflow: initial;
292         border: 1px solid;
293         border-top-left-radius: 5px;
294         border-bottom-left-radius: 5px;
295         padding: 13px 8px;
296         text-align: right;
297 }
298
299 .example-wrap > pre.rust {
300         width: 100%;
301 }
302
303 #search {
304         margin-left: 230px;
305         position: relative;
306 }
307
308 #results {
309         position: absolute;
310         right: 0;
311         left: 0;
312         overflow: auto;
313 }
314
315 #results > table {
316         width: 100%;
317         table-layout: fixed;
318 }
319
320 .content pre.line-numbers {
321         float: left;
322         border: none;
323         position: relative;
324
325         -webkit-user-select: none;
326         -moz-user-select: none;
327         -ms-user-select: none;
328         user-select: none;
329 }
330 .line-numbers span {
331         cursor: pointer;
332 }
333
334 .docblock-short p {
335         display: inline;
336 }
337
338 .docblock-short.nowrap {
339         display: block;
340         overflow: hidden;
341         white-space: nowrap;
342         text-overflow: ellipsis;
343 }
344
345 .docblock-short p {
346         overflow: hidden;
347         text-overflow: ellipsis;
348         margin: 0;
349 }
350 .docblock-short code {
351         white-space: nowrap;
352 }
353
354 .docblock h1, .docblock h2, .docblock h3, .docblock h4, .docblock h5 {
355         border-bottom: 1px solid;
356 }
357
358 #main > .docblock h1 { font-size: 1.3em; }
359 #main > .docblock h2 { font-size: 1.15em; }
360 #main > .docblock h3, #main > .docblock h4, #main > .docblock h5 { font-size: 1em; }
361
362 .docblock h1 { font-size: 1em; }
363 .docblock h2 { font-size: 0.95em; }
364 .docblock h3, .docblock h4, .docblock h5 { font-size: 0.9em; }
365
366 .docblock {
367         margin-left: 24px;
368         position: relative;
369 }
370
371 .content .out-of-band {
372         float: right;
373         font-size: 23px;
374         margin: 0px;
375         padding: 0px;
376         font-weight: normal;
377 }
378
379 h3.impl > .out-of-band {
380         font-size: 21px;
381 }
382
383 h4.method > .out-of-band {
384         font-size: 19px;
385 }
386
387 h4 > code, h3 > code, .invisible > code {
388         max-width: calc(100% - 41px);
389         display: block;
390 }
391
392 .in-band, code {
393         z-index: 5;
394 }
395
396 .invisible {
397         width: 100%;
398         display: inline-block;
399 }
400
401 .content .in-band {
402         margin: 0px;
403         padding: 0px;
404 }
405
406 .in-band > code {
407         display: inline-block;
408 }
409
410 #main {
411         position: relative;
412 }
413 #main > .since {
414         top: inherit;
415         font-family: "Fira Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
416 }
417
418 .content table:not(.table-display) {
419         border-spacing: 0 5px;
420 }
421 .content td { vertical-align: top; }
422 .content td:first-child { padding-right: 20px; }
423 .content td p:first-child { margin-top: 0; }
424 .content td h1, .content td h2 { margin-left: 0; font-size: 1.1em; }
425 .content tr:first-child td { border-top: 0; }
426
427 .docblock table {
428         margin: .5em 0;
429         width: 100%;
430 }
431
432 .docblock table td {
433         padding: .5em;
434         border: 1px dashed;
435 }
436
437 .docblock table th {
438         padding: .5em;
439         text-align: left;
440         border: 1px solid;
441 }
442
443 .fields + table {
444         margin-bottom: 1em;
445 }
446
447 .content .item-list {
448         list-style-type: none;
449         padding: 0;
450 }
451
452 .content .multi-column {
453         -moz-column-count: 5;
454         -moz-column-gap: 2.5em;
455         -webkit-column-count: 5;
456         -webkit-column-gap: 2.5em;
457         column-count: 5;
458         column-gap: 2.5em;
459 }
460 .content .multi-column li { width: 100%; display: inline-block; }
461
462 .content .method {
463         font-size: 1em;
464         position: relative;
465 }
466 /* Shift "where ..." part of method or fn definition down a line */
467 .content .method .where,
468 .content .fn .where,
469 .content .where.fmt-newline {
470         display: block;
471         font-size: 0.8em;
472 }
473
474 .content .methods > div:not(.important-traits) {
475         margin-left: 40px;
476         margin-bottom: 15px;
477 }
478
479 .content .impl-items .method, .content .impl-items > .type, .impl-items > .associatedconstant {
480         margin-left: 20px;
481 }
482 .content .impl-items .docblock, .content .impl-items .stability {
483         margin-bottom: .6em;
484 }
485
486 .content .impl-items > .stability {
487         margin-left: 40px;
488 }
489
490 .content .docblock > .impl-items {
491         margin-left: 20px;
492         margin-top: -34px;
493 }
494 .content .docblock > .impl-items > h4 {
495         border-bottom: 0;
496 }
497 .content .docblock >.impl-items .table-display {
498         margin: 0;
499 }
500 .content .docblock >.impl-items table td {
501         padding: 0;
502 }
503 .toggle-wrapper.marg-left > .collapse-toggle {
504         left: -24px;
505 }
506 .content .docblock > .impl-items .table-display, .impl-items table td {
507         border: none;
508 }
509
510 .content .stability code {
511         font-size: 90%;
512 }
513
514 .content .stability {
515         position: relative;
516         margin-left: 33px;
517         margin-top: -13px;
518 }
519
520 .sub-variant > div > .stability {
521         margin-top: initial;
522 }
523
524 .content .stability::before {
525         content: '˪';
526         font-size: 30px;
527         position: absolute;
528         top: -9px;
529         left: -13px;
530 }
531 .methods > .stability {
532         margin-top: -8px;
533 }
534
535 #main > .stability {
536         margin-top: 0;
537 }
538
539 nav {
540         border-bottom: 1px solid;
541         padding-bottom: 10px;
542         margin-bottom: 10px;
543 }
544 nav.main {
545         padding: 20px 0;
546         text-align: center;
547 }
548 nav.main .current {
549         border-top: 1px solid;
550         border-bottom: 1px solid;
551 }
552 nav.main .separator {
553         border: 1px solid;
554         display: inline-block;
555         height: 23px;
556         margin: 0 20px;
557 }
558 nav.sum { text-align: right; }
559 nav.sub form { display: inline; }
560
561 nav.sub, .content {
562         margin-left: 230px;
563 }
564
565 a {
566         text-decoration: none;
567         background: transparent;
568 }
569
570 .small-section-header:hover > .anchor {
571         display: initial;
572 }
573
574 .in-band:hover > .anchor {
575         display: inline-block;
576         position: absolute;
577 }
578 .anchor {
579         display: none;
580         position: absolute;
581         left: -7px;
582 }
583 .anchor.field {
584         left: -5px;
585 }
586 .small-section-header > .anchor {
587         left: -28px;
588         padding-right: 10px; /* avoid gap that causes hover to disappear */
589 }
590 .anchor:before {
591         content: '\2002\00a7\2002';
592 }
593
594 .docblock a:not(.srclink):not(.test-arrow):hover,
595 .docblock-short a:not(.srclink):not(.test-arrow):hover, .stability a {
596         text-decoration: underline;
597 }
598
599 .invisible > .srclink {
600         position: absolute;
601         top: 0;
602         right: 0;
603         font-size: 17px;
604         font-weight: normal;
605 }
606
607 .block a.current.crate { font-weight: 500; }
608
609 .search-container {
610         position: relative;
611 }
612 .search-container > .top-button {
613         position: absolute;
614         right: 0;
615         top: 10px;
616 }
617 .search-input {
618         width: calc(100% - 34px);
619         /* Override Normalize.css: we have margins and do
620          not want to overflow - the `moz` attribute is necessary
621          until Firefox 29, too early to drop at this point */
622         -moz-box-sizing: border-box !important;
623         box-sizing: border-box !important;
624         outline: none;
625         border: none;
626         border-radius: 1px;
627         margin-top: 5px;
628         padding: 10px 16px;
629         font-size: 17px;
630         transition: border-color 300ms ease;
631         transition: border-radius 300ms ease-in-out;
632         transition: box-shadow 300ms ease-in-out;
633 }
634
635 .search-input:focus {
636         border-radius: 2px;
637         border: 0;
638         outline: 0;
639         box-shadow: 0 0 8px #078dd8;
640 }
641
642 .search-results .desc {
643         white-space: nowrap;
644         text-overflow: ellipsis;
645         overflow: hidden;
646         display: block;
647 }
648
649 .search-results a {
650         display: block;
651 }
652
653 .content .search-results td:first-child {
654         padding-right: 0;
655         width: 50%;
656 }
657 .content .search-results td:first-child a {
658         padding-right: 10px;
659 }
660 .content .search-results td:first-child a:after {
661     clear: both;
662     content: "";
663     display: block;
664 }
665 .content .search-results td:first-child a span {
666         float: left;
667 }
668
669 tr.result span.primitive::after {
670         content: ' (primitive type)';
671         font-style: italic;
672 }
673
674 tr.result span.keyword::after {
675         content: ' (keyword)';
676         font-style: italic;
677 }
678
679 body.blur > :not(#help) {
680         filter: blur(8px);
681         -webkit-filter: blur(8px);
682         opacity: .7;
683 }
684
685 #help {
686         width: 100%;
687         height: 100vh;
688         position: fixed;
689         top: 0;
690         left: 0;
691         display: flex;
692         justify-content: center;
693         align-items: center;
694 }
695 #help > div {
696         flex: 0 0 auto;
697         box-shadow: 0 0 6px rgba(0,0,0,.2);
698         width: 550px;
699         height: auto;
700         border: 1px solid;
701 }
702 #help dt {
703         float: left;
704         clear: left;
705         display: block;
706 }
707 #help dd { margin: 5px 35px; }
708 #help .infos { padding-left: 0; }
709 #help h1, #help h2 { margin-top: 0; }
710 #help > div div {
711         width: 50%;
712         float: left;
713         padding: 20px;
714         padding-left: 17px;
715 }
716
717 .stab {
718         display: table;
719         border-width: 1px;
720         border-style: solid;
721         padding: 3px;
722         margin-bottom: 5px;
723         font-size: 90%;
724 }
725 .stab p {
726         display: inline;
727 }
728
729 .stab summary {
730         display: list-item;
731 }
732
733 .stab .microscope {
734         font-size: 1.5em;
735 }
736
737 .module-item .stab {
738         display: inline;
739         border-width: 0;
740         padding: 0;
741         margin: 0;
742         background: inherit !important;
743 }
744
745 .module-item.unstable {
746         opacity: 0.65;
747 }
748
749 .since {
750         font-weight: normal;
751         font-size: initial;
752         position: absolute;
753         right: 0;
754         top: 0;
755 }
756
757 .variants_table {
758         width: 100%;
759 }
760
761 .variants_table tbody tr td:first-child {
762         width: 1%; /* make the variant name as small as possible */
763 }
764
765 td.summary-column {
766         width: 100%;
767 }
768
769 .summary {
770         padding-right: 0px;
771 }
772
773 pre.rust .question-mark {
774         font-weight: bold;
775 }
776
777 a.test-arrow {
778         display: inline-block;
779         position: absolute;
780         padding: 5px 10px 5px 10px;
781         border-radius: 5px;
782         font-size: 130%;
783         top: 5px;
784         right: 5px;
785 }
786 a.test-arrow:hover{
787         text-decoration: none;
788 }
789
790 .section-header:hover a:before {
791         position: absolute;
792         left: -25px;
793         padding-right: 10px; /* avoid gap that causes hover to disappear */
794         content: '\2002\00a7\2002';
795 }
796
797 .section-header:hover a {
798         text-decoration: none;
799 }
800
801 .section-header a {
802         color: inherit;
803 }
804
805 .collapse-toggle {
806         font-weight: 300;
807         position: absolute;
808         left: -23px;
809         top: 0;
810 }
811
812 h3 > .collapse-toggle, h4 > .collapse-toggle {
813         font-size: 0.8em;
814         top: 5px;
815 }
816
817 .toggle-wrapper > .collapse-toggle {
818         left: -24px;
819         margin-top: 0px;
820 }
821
822 .toggle-wrapper {
823         position: relative;
824         margin-top: 0;
825 }
826
827 .toggle-wrapper.collapsed {
828         height: 25px;
829         transition: height .2s;
830         margin-bottom: .6em;
831 }
832
833 .collapse-toggle > .inner {
834         display: inline-block;
835         width: 1.2ch;
836         text-align: center;
837 }
838
839 .ghost {
840         display: none;
841 }
842
843 .ghost + .since {
844         position: initial;
845         display: table-cell;
846 }
847
848 .since + .srclink {
849         display: table-cell;
850         padding-left: 10px;
851 }
852
853 .item-spacer {
854         width: 100%;
855         height: 12px;
856 }
857
858 span.since {
859         position: initial;
860         font-size: 20px;
861         margin-right: 5px;
862 }
863
864 .toggle-wrapper > .collapse-toggle {
865         left: 0;
866 }
867
868 .variant + .toggle-wrapper + .docblock > p {
869         margin-top: 5px;
870 }
871
872 .sub-variant, .sub-variant > h3 {
873         margin-top: 1px !important;
874 }
875
876 #main > .sub-variant > h3 {
877         font-size: 15px;
878         margin-left: 25px;
879         margin-bottom: 5px;
880 }
881
882 .sub-variant > div {
883         margin-left: 20px;
884         margin-bottom: 10px;
885 }
886
887 .sub-variant > div > span {
888         display: block;
889         position: relative;
890 }
891
892 .toggle-label {
893         display: inline-block;
894         margin-left: 4px;
895         margin-top: 3px;
896 }
897
898 .enum > .toggle-wrapper + .docblock, .struct > .toggle-wrapper + .docblock {
899         margin-left: 30px;
900         margin-bottom: 20px;
901         margin-top: 5px;
902 }
903
904 .docblock > .section-header:first-child {
905         margin-left: 15px;
906         margin-top: 0;
907 }
908
909 .docblock > .section-header:first-child:hover > a:before {
910         left: -10px;
911 }
912
913 .enum > .collapsed, .struct > .collapsed {
914         margin-bottom: 25px;
915 }
916
917 #main > .variant, #main > .structfield {
918         display: block;
919 }
920
921 .attributes {
922         display: block;
923         margin-top: 0px !important;
924         margin-right: 0px;
925         margin-bottom: 0px !important;
926         margin-left: 30px;
927 }
928 .toggle-attributes.collapsed {
929         margin-bottom: 0;
930 }
931 .impl-items > .toggle-attributes {
932         margin-left: 20px;
933 }
934 .impl-items .attributes {
935         font-weight: 500;
936 }
937
938 :target > code {
939         opacity: 1;
940 }
941
942 /* Media Queries */
943
944 @media (max-width: 700px) {
945         body {
946                 padding-top: 0px;
947         }
948
949         body > .sidebar {
950                 height: 45px;
951                 min-height: 40px;
952                 margin: 0;
953                 margin-left: -15px;
954                 padding: 0 15px;
955                 position: static;
956                 z-index: 1;
957         }
958
959         .sidebar > .location {
960                 float: right;
961                 margin: 0px;
962                 margin-top: 2px;
963                 padding: 3px 10px 1px 10px;
964                 min-height: 39px;
965                 background: inherit;
966                 text-align: left;
967                 font-size: 24px;
968         }
969
970         .sidebar .location:empty {
971                 padding: 0;
972         }
973
974         .sidebar img {
975                 width: 35px;
976                 margin-top: 5px;
977                 margin-bottom: 5px;
978                 float: left;
979                 margin-left: 50px;
980         }
981
982         .sidebar-menu {
983                 position: fixed;
984                 z-index: 10;
985                 font-size: 2rem;
986                 cursor: pointer;
987                 width: 45px;
988                 left: 0;
989                 text-align: center;
990                 display: block;
991                 border-bottom: 1px solid;
992                 border-right: 1px solid;
993                 height: 45px;
994         }
995
996         .sidebar-elems {
997                 position: fixed;
998                 z-index: 1;
999                 left: 0;
1000                 top: 45px;
1001                 bottom: 0;
1002                 overflow-y: auto;
1003                 border-right: 1px solid;
1004                 display: none;
1005         }
1006
1007         .sidebar > .block.version {
1008                 border-bottom: none;
1009                 margin-top: 12px;
1010         }
1011
1012         nav.sub {
1013                 width: calc(100% - 32px);
1014                 float: right;
1015         }
1016
1017         .content {
1018                 margin-left: 0px;
1019         }
1020
1021         #main {
1022                 margin-top: 45px;
1023                 padding: 0;
1024         }
1025
1026         .content .in-band {
1027                 width: 100%;
1028         }
1029
1030         .content h4 > .out-of-band {
1031                 position: inherit;
1032         }
1033
1034         .toggle-wrapper > .collapse-toggle {
1035                 left: 0px;
1036         }
1037
1038         .toggle-wrapper {
1039                 height: 1.5em;
1040         }
1041
1042         #search {
1043                 margin-left: 0;
1044         }
1045
1046         .content .impl-items .method, .content .impl-items > .type, .impl-items > .associatedconstant {
1047                 display: flex;
1048         }
1049
1050         .anchor {
1051                 display: none !important;
1052         }
1053
1054         h1.fqn {
1055                 overflow: initial;
1056         }
1057 }
1058
1059 @media print {
1060         nav.sub, .content .out-of-band, .collapse-toggle {
1061                 display: none;
1062         }
1063 }
1064
1065 .information {
1066         position: absolute;
1067         left: -20px;
1068         margin-top: 7px;
1069         z-index: 1;
1070 }
1071
1072 .tooltip {
1073         position: relative;
1074         display: inline-block;
1075         cursor: pointer;
1076 }
1077
1078 .tooltip .tooltiptext {
1079         width: 120px;
1080         display: none;
1081         text-align: center;
1082         padding: 5px 3px;
1083         border-radius: 6px;
1084         margin-left: 5px;
1085         top: -5px;
1086         left: 105%;
1087         z-index: 1;
1088 }
1089
1090 .tooltip:hover .tooltiptext {
1091         display: inline;
1092 }
1093
1094 .tooltip .tooltiptext::after {
1095         content: " ";
1096         position: absolute;
1097         top: 50%;
1098         left: 11px;
1099         margin-top: -5px;
1100         border-width: 5px;
1101         border-style: solid;
1102 }
1103
1104 .important-traits .tooltip .tooltiptext {
1105         border: 1px solid;
1106 }
1107
1108 pre.rust {
1109         position: relative;
1110         tab-width: 4;
1111         -moz-tab-width: 4;
1112 }
1113
1114 .search-failed {
1115         text-align: center;
1116         margin-top: 20px;
1117 }
1118
1119 #titles {
1120         height: 35px;
1121 }
1122
1123 #titles > div {
1124         float: left;
1125         width: 33.3%;
1126         text-align: center;
1127         font-size: 18px;
1128         cursor: pointer;
1129         border-top: 2px solid;
1130 }
1131
1132 #titles > div:not(:last-child):not(.selected) {
1133         margin-right: 1px;
1134         width: calc(33.3% - 1px);
1135 }
1136
1137 #titles > div > div.count {
1138         display: inline-block;
1139         font-size: 16px;
1140 }
1141
1142 .important-traits {
1143         cursor: pointer;
1144         z-index: 2;
1145 }
1146
1147 h4 > .important-traits {
1148         position: absolute;
1149         left: -44px;
1150         top: 2px;
1151 }
1152
1153 #all-types {
1154         text-align: center;
1155         border: 1px solid;
1156         margin: 0 10px;
1157         margin-bottom: 10px;
1158         display: block;
1159         border-radius: 7px;
1160 }
1161 #all-types > p {
1162         margin: 5px 0;
1163 }
1164
1165 @media (max-width: 700px) {
1166         h4 > .important-traits {
1167                 position: absolute;
1168                 left: -22px;
1169                 top: 24px;
1170         }
1171
1172         #titles > div > div.count {
1173                 float: left;
1174                 width: 100%;
1175         }
1176
1177         #titles {
1178                 height: 50px;
1179         }
1180
1181         .sidebar.mobile {
1182                 position: fixed;
1183                 width: 100%;
1184                 margin-left: 0;
1185                 background-color: rgba(0,0,0,0);
1186                 height: 100%;
1187         }
1188         .sidebar {
1189                 width: calc(100% + 30px);
1190         }
1191
1192         .show-it {
1193                 display: block;
1194                 width: 246px;
1195         }
1196
1197         .show-it > .block.items {
1198                 margin: 8px 0;
1199         }
1200
1201         .show-it > .block.items > ul {
1202                 margin: 0;
1203         }
1204
1205         .show-it > .block.items > ul > li {
1206                 text-align: center;
1207                 margin: 2px 0;
1208         }
1209
1210         .show-it > .block.items > ul > li > a {
1211                 font-size: 21px;
1212         }
1213
1214         /* Because of ios, we need to actually have a full height sidebar title so the
1215          * actual sidebar can show up. But then we need to make it transparent so we don't
1216          * hide content. The filler just allows to create the background for the sidebar
1217          * title. But because of the absolute position, I had to lower the z-index.
1218          */
1219         #sidebar-filler {
1220                 position: fixed;
1221                 left: 45px;
1222                 width: calc(100% - 45px);
1223                 top: 0;
1224                 height: 45px;
1225                 z-index: -1;
1226                 border-bottom: 1px solid;
1227         }
1228
1229         .collapse-toggle {
1230                 left: -20px;
1231         }
1232
1233         .impl > .collapse-toggle {
1234                 left: -10px;
1235         }
1236
1237         #all-types {
1238                 margin: 10px;
1239         }
1240 }
1241
1242
1243 @media (max-width: 416px) {
1244         #titles {
1245                 height: 73px;
1246         }
1247
1248         #titles > div {
1249                 height: 73px;
1250         }
1251 }
1252
1253 .modal {
1254         position: fixed;
1255         width: 100vw;
1256         height: 100vh;
1257         z-index: 10000;
1258         top: 0;
1259         left: 0;
1260 }
1261
1262 .modal-content {
1263         display: block;
1264         max-width: 60%;
1265         min-width: 200px;
1266         padding: 8px;
1267         top: 40%;
1268         position: absolute;
1269         left: 50%;
1270         transform: translate(-50%, -40%);
1271         border: 1px solid;
1272         border-radius: 4px;
1273         border-top-right-radius: 0;
1274 }
1275
1276 .modal-content > .docblock {
1277         margin: 0;
1278 }
1279
1280 h3.important {
1281         margin: 0;
1282         margin-bottom: 13px;
1283         font-size: 19px;
1284 }
1285
1286 .modal-content > .docblock > code.content {
1287         margin: 0;
1288         padding: 0;
1289         font-size: 20px;
1290 }
1291
1292 .modal-content > .close {
1293         position: absolute;
1294         font-weight: 900;
1295         right: -25px;
1296         top: -1px;
1297         font-size: 18px;
1298         width: 25px;
1299         padding-right: 2px;
1300         border-top-right-radius: 5px;
1301         border-bottom-right-radius: 5px;
1302         text-align: center;
1303         border: 1px solid;
1304         border-right: 0;
1305         cursor: pointer;
1306 }
1307
1308 .modal-content > .whiter {
1309         height: 25px;
1310         position: absolute;
1311         width: 3px;
1312         right: -2px;
1313         top: 0px;
1314 }
1315
1316 #main > div.important-traits {
1317         position: absolute;
1318         left: -24px;
1319         margin-top: 16px;
1320 }
1321
1322 .content > .methods > div.important-traits {
1323         position: absolute;
1324         left: -42px;
1325         margin-top: 2px;
1326 }
1327
1328 kbd {
1329         display: inline-block;
1330         padding: 3px 5px;
1331         font: 15px "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace;
1332         line-height: 10px;
1333         vertical-align: middle;
1334         border: solid 1px;
1335         border-radius: 3px;
1336         box-shadow: inset 0 -1px 0;
1337         cursor: default;
1338 }
1339
1340 .theme-picker {
1341         position: absolute;
1342         left: 211px;
1343         top: 19px;
1344 }
1345
1346 .theme-picker button {
1347         outline: none;
1348 }
1349
1350 #settings-menu {
1351         position: absolute;
1352         right: 0;
1353         top: 10px;
1354         outline: none;
1355 }
1356
1357 #theme-picker, #settings-menu {
1358         padding: 4px;
1359         width: 27px;
1360         height: 29px;
1361         border: 1px solid;
1362         border-radius: 3px;
1363         cursor: pointer;
1364 }
1365
1366 #theme-choices {
1367         display: none;
1368         position: absolute;
1369         left: 0;
1370         top: 28px;
1371         border: 1px solid;
1372         border-radius: 3px;
1373         z-index: 1;
1374         cursor: pointer;
1375 }
1376
1377 #theme-choices > button {
1378         border: none;
1379         width: 100%;
1380         padding: 4px;
1381         text-align: center;
1382         background: rgba(0,0,0,0);
1383 }
1384
1385 #theme-choices > button:not(:first-child) {
1386         border-top: 1px solid;
1387 }
1388
1389 @media (max-width: 700px) {
1390         .theme-picker {
1391                 left: 10px;
1392                 top: 54px;
1393                 z-index: 1;
1394         }
1395 }
1396
1397 .hidden-by-impl-hider,
1398 .hidden-by-usual-hider {
1399         /* important because of conflicting rule for small screens */
1400         display: none !important;
1401 }
1402
1403 #implementations-list > h3 > span.in-band {
1404         width: 100%;
1405 }
1406
1407 .table-display {
1408         width: 100%;
1409         border: 0;
1410         border-collapse: collapse;
1411         border-spacing: 0;
1412         font-size: 16px;
1413 }
1414
1415 .table-display tr td:first-child {
1416         padding-right: 0;
1417 }
1418
1419 .table-display tr td:last-child {
1420         float: right;
1421 }
1422 .table-display .out-of-band {
1423         position: relative;
1424         font-size: 19px;
1425         display: block;
1426 }
1427 #implementors-list > .impl-items .table-display .out-of-band {
1428         font-size: 17px;
1429 }
1430
1431 .table-display td:hover .anchor {
1432         display: block;
1433         top: 2px;
1434         left: -5px;
1435 }
1436
1437 #main > ul {
1438         padding-left: 10px;
1439 }
1440 #main > ul > li {
1441         list-style: none;
1442 }
1443
1444 .non-exhaustive {
1445         margin-bottom: 1em;
1446 }