]> git.lizzy.rs Git - rust.git/blob - src/librustdoc/html/static/css/rustdoc.css
Rollup merge of #86011 - tlyu:correct-sized-bound-spans, r=estebank
[rust.git] / src / librustdoc / html / static / css / rustdoc.css
1 /* See FiraSans-LICENSE.txt for the Fira Sans license. */
2 @font-face {
3         font-family: 'Fira Sans';
4         font-style: normal;
5         font-weight: 400;
6         src: local('Fira Sans'),
7                 url("FiraSans-Regular.woff2") format("woff2"),
8                 url("FiraSans-Regular.woff") format('woff');
9         font-display: swap;
10 }
11 @font-face {
12         font-family: 'Fira Sans';
13         font-style: normal;
14         font-weight: 500;
15         src: local('Fira Sans Medium'),
16                 url("FiraSans-Medium.woff2") format("woff2"),
17                 url("FiraSans-Medium.woff") format('woff');
18         font-display: swap;
19 }
20
21 /* See SourceSerif4-LICENSE.md for the Source Serif 4 license. */
22 @font-face {
23         font-family: 'Source Serif 4';
24         font-style: normal;
25         font-weight: 400;
26         src: local('Source Serif 4'),
27                 url("SourceSerif4-Regular.ttf.woff2") format("woff2"),
28                 url("SourceSerif4-Regular.ttf.woff") format("woff");
29         font-display: swap;
30 }
31 @font-face {
32         font-family: 'Source Serif 4';
33         font-style: italic;
34         font-weight: 400;
35         src: local('Source Serif 4 Italic'),
36                 url("SourceSerif4-It.ttf.woff2") format("woff2"),
37                 url("SourceSerif4-It.ttf.woff") format("woff");
38         font-display: swap;
39 }
40 @font-face {
41         font-family: 'Source Serif 4';
42         font-style: normal;
43         font-weight: 700;
44         src: local('Source Serif 4 Bold'),
45                 url("SourceSerif4-Bold.ttf.woff2") format("woff2"),
46                 url("SourceSerif4-Bold.ttf.woff") format("woff");
47         font-display: swap;
48 }
49
50 /* See SourceCodePro-LICENSE.txt for the Source Code Pro license. */
51 @font-face {
52         font-family: 'Source Code Pro';
53         font-style: normal;
54         font-weight: 400;
55         /* Avoid using locally installed font because bad versions are in circulation:
56          * see https://github.com/rust-lang/rust/issues/24355 */
57         src: url("SourceCodePro-Regular.ttf.woff2") format("woff2"),
58                 url("SourceCodePro-Regular.ttf.woff") format("woff");
59         font-display: swap;
60 }
61 @font-face {
62         font-family: 'Source Code Pro';
63         font-style: italic;
64         font-weight: 400;
65         src: url("SourceCodePro-It.ttf.woff2") format("woff2"),
66                 url("SourceCodePro-It.ttf.woff") format("woff");
67         font-display: swap;
68 }
69 @font-face {
70         font-family: 'Source Code Pro';
71         font-style: normal;
72         font-weight: 600;
73         src: url("SourceCodePro-Semibold.ttf.woff2") format("woff2"),
74                 url("SourceCodePro-Semibold.ttf.woff") format("woff");
75         font-display: swap;
76 }
77
78 /* Avoid using legacy CJK serif fonts in Windows like Batang. */
79 @font-face {
80         font-family: 'Noto Sans KR';
81         src: url("noto-sans-kr-regular.woff2") format("woff2"),
82                 url("noto-sans-kr-regular.woff") format("woff");
83         font-display: swap;
84         unicode-range: U+AC00-D7AF, U+3130-318F, U+1100-11FF, U+A960-A97F, U+D7B0-D7FF;
85 }
86
87 * {
88         -webkit-box-sizing: border-box;
89         -moz-box-sizing: border-box;
90         box-sizing: border-box;
91 }
92
93 /* This part handles the "default" theme being used depending on the system one. */
94 html {
95         content: "";
96 }
97 @media (prefers-color-scheme: light) {
98         html {
99                 content: "light";
100         }
101 }
102 @media (prefers-color-scheme: dark) {
103         html {
104                 content: "dark";
105         }
106 }
107
108 /* General structure and fonts */
109
110 body {
111         font: 16px/1.4 "Source Serif 4", "Noto Sans KR", serif;
112         margin: 0;
113         position: relative;
114         padding: 10px 15px 20px 15px;
115
116         -webkit-font-feature-settings: "kern", "liga";
117         -moz-font-feature-settings: "kern", "liga";
118         font-feature-settings: "kern", "liga";
119 }
120
121 h1 {
122         font-size: 1.5em;
123 }
124 h2 {
125         font-size: 1.4em;
126 }
127 h3 {
128         font-size: 1.3em;
129 }
130 h1, h2, h3, h4, h5, h6 {
131         font-weight: 500;
132         margin: 20px 0 15px 0;
133         padding-bottom: 6px;
134 }
135 h1.fqn {
136         display: flex;
137         border-bottom: 1px dashed;
138         margin-top: 0;
139
140         /* workaround to keep flex from breaking below 700 px width due to the float: right on the nav
141            above the h1 */
142         padding-left: 1px;
143 }
144 h1.fqn > .in-band > a:hover {
145         text-decoration: underline;
146 }
147 h2, h3, h4 {
148         border-bottom: 1px solid;
149 }
150 h3.code-header, h4.code-header {
151         font-size: 1em;
152         font-weight: 600;
153         border: none;
154         padding: 0;
155         margin: 0;
156 }
157 .impl,
158 .impl-items .method,
159 .methods .method,
160 .impl-items .type,
161 .methods .type,
162 .impl-items .associatedconstant,
163 .methods .associatedconstant,
164 .impl-items .associatedtype,
165 .methods .associatedtype {
166         flex-basis: 100%;
167         font-weight: 600;
168         margin-top: 16px;
169         margin-bottom: 10px;
170         position: relative;
171 }
172 .impl, .method.trait-impl,
173 .type.trait-impl,
174 .associatedconstant.trait-impl,
175 .associatedtype.trait-impl {
176         padding-left: 15px;
177 }
178
179 div.impl-items > div {
180         padding-left: 0;
181 }
182
183 h1, h2, h3, h4, h5, h6,
184 .sidebar, a.source, .search-input, .search-results .result-name,
185 .content table td:first-child > a,
186 .item-left > a,
187 div.item-list .out-of-band, span.since,
188 #source-sidebar, #sidebar-toggle,
189 details.rustdoc-toggle > summary::before,
190 details.undocumented > summary::before,
191 div.impl-items > div:not(.docblock):not(.item-info),
192 .content ul.crate a.crate, a.srclink,
193 /* This selector is for the items listed in the "all items" page. */
194 #main > ul.docblock > li > a {
195         font-family: "Fira Sans", Arial, sans-serif;
196 }
197
198 .content ul.crate a.crate {
199         font-size: 16px/1.6;
200 }
201
202 ol, ul {
203         padding-left: 25px;
204 }
205 ul ul, ol ul, ul ol, ol ol {
206         margin-bottom: .6em;
207 }
208
209 p {
210         margin: 0 0 .6em 0;
211 }
212
213 summary {
214         outline: none;
215 }
216
217 /* Fix some style changes due to normalize.css 8 */
218
219 td,
220 th {
221         padding: 0;
222 }
223
224 table {
225         border-collapse: collapse;
226 }
227
228 button,
229 input,
230 optgroup,
231 select,
232 textarea {
233         color: inherit;
234         font: inherit;
235         margin: 0;
236 }
237
238 /* end tweaks for normalize.css 8 */
239
240 details:not(.rustdoc-toggle) summary {
241         margin-bottom: .6em;
242 }
243
244 code, pre, a.test-arrow, .code-header {
245         font-family: "Source Code Pro", monospace;
246 }
247 .docblock code, .docblock-short code {
248         border-radius: 3px;
249         padding: 0 0.1em;
250 }
251 .docblock pre code, .docblock-short pre code {
252         padding: 0;
253 }
254 pre {
255         padding: 14px;
256 }
257 .type-decl pre {
258         overflow-x: auto;
259 }
260
261 .source .content pre {
262         padding: 20px;
263 }
264
265 img {
266         max-width: 100%;
267 }
268
269 li {
270         position: relative;
271 }
272
273 .source .content {
274         margin-top: 50px;
275         max-width: none;
276         overflow: visible;
277         margin-left: 0px;
278 }
279
280 nav.sub {
281         font-size: 16px;
282         text-transform: uppercase;
283 }
284
285 .sidebar {
286         width: 200px;
287         position: fixed;
288         left: 0;
289         top: 0;
290         bottom: 0;
291         overflow: auto;
292 }
293
294 /* Improve the scrollbar display on firefox */
295 * {
296         scrollbar-width: initial;
297 }
298 .sidebar {
299         scrollbar-width: thin;
300 }
301
302 /* Improve the scrollbar display on webkit-based browsers */
303 ::-webkit-scrollbar {
304         width: 12px;
305 }
306 .sidebar::-webkit-scrollbar {
307         width: 8px;
308 }
309 ::-webkit-scrollbar-track {
310         -webkit-box-shadow: inset 0;
311 }
312
313 .sidebar .block > ul > li {
314         margin-right: -10px;
315 }
316
317 .content, nav {
318         max-width: 960px;
319 }
320
321 /* Everything else */
322
323 .hidden {
324         display: none !important;
325 }
326
327 .logo-container {
328         height: 100px;
329         width: 100px;
330         position: relative;
331         margin: 20px auto;
332         display: block;
333         margin-top: 10px;
334 }
335
336 .logo-container > img {
337         max-width: 100px;
338         max-height: 100px;
339         height: 100%;
340         position: absolute;
341         left: 50%;
342         top: 50%;
343         transform: translate(-50%, -50%);
344         display: block;
345 }
346
347 .sidebar .location {
348         border: 1px solid;
349         font-size: 17px;
350         margin: 30px 10px 20px 10px;
351         text-align: center;
352         word-wrap: break-word;
353         font-weight: inherit;
354         padding: 0;
355 }
356
357 .sidebar .version {
358         font-size: 15px;
359         text-align: center;
360         border-bottom: 1px solid;
361         overflow-wrap: break-word;
362         word-wrap: break-word; /* deprecated */
363         word-break: break-word; /* Chrome, non-standard */
364 }
365
366 .location:empty {
367         border: none;
368 }
369
370 .location a:first-of-type {
371         font-weight: 500;
372 }
373 .location a:hover {
374         text-decoration: underline;
375 }
376
377 .block {
378         padding: 0;
379         margin-bottom: 14px;
380 }
381 .block h2, .block h3 {
382         text-align: center;
383 }
384 .block ul, .block li {
385         margin: 0 10px;
386         padding: 0;
387         list-style: none;
388 }
389
390 .block a {
391         display: block;
392         text-overflow: ellipsis;
393         overflow: hidden;
394         line-height: 15px;
395         padding: 7px 5px;
396         font-size: 14px;
397         font-weight: 300;
398         transition: border 500ms ease-out;
399 }
400
401 .sidebar-title {
402         border-top: 1px solid;
403         border-bottom: 1px solid;
404         text-align: center;
405         font-size: 17px;
406         margin-bottom: 5px;
407         font-weight: inherit;
408         padding: 0;
409 }
410
411 .sidebar-links {
412         margin-bottom: 15px;
413 }
414
415 .sidebar-links > a {
416         padding-left: 10px;
417         width: 100%;
418 }
419
420 .sidebar-menu {
421         display: none;
422 }
423
424 .content {
425         padding: 15px 0;
426 }
427
428 .source .content pre.rust {
429         white-space: pre;
430         overflow: auto;
431         padding-left: 0;
432 }
433
434 .rustdoc .example-wrap {
435         display: inline-flex;
436         margin-bottom: 10px;
437 }
438
439 .example-wrap {
440         position: relative;
441         width: 100%;
442 }
443
444 .example-wrap > pre.line-number {
445         overflow: initial;
446         border: 1px solid;
447         padding: 13px 8px;
448         text-align: right;
449         border-top-left-radius: 5px;
450         border-bottom-left-radius: 5px;
451 }
452
453 .example-wrap > pre.rust a:hover {
454         text-decoration: underline;
455 }
456
457 .rustdoc:not(.source) .example-wrap > pre:not(.line-number) {
458         width: 100%;
459         overflow-x: auto;
460 }
461
462 .rustdoc .example-wrap > pre {
463         margin: 0;
464 }
465
466 #search {
467         margin-left: 230px;
468         position: relative;
469 }
470
471 #results > table {
472         width: 100%;
473         table-layout: fixed;
474 }
475
476 .content > .example-wrap pre.line-numbers {
477         position: relative;
478         -webkit-user-select: none;
479         -moz-user-select: none;
480         -ms-user-select: none;
481         user-select: none;
482 }
483 .line-numbers span {
484         cursor: pointer;
485 }
486
487 .docblock-short {
488         overflow-wrap: anywhere;
489 }
490 .docblock-short p {
491         display: inline;
492 }
493
494 .docblock-short p {
495         overflow: hidden;
496         text-overflow: ellipsis;
497         margin: 0;
498 }
499 /* Wrap non-pre code blocks (`text`) but not (```text```). */
500 .docblock > :not(pre) > code,
501 .docblock-short > :not(pre) > code {
502         white-space: pre-wrap;
503 }
504
505 .docblock h1, .docblock h2, .docblock h3, .docblock h4, .docblock h5, .docblock h6 {
506         border-bottom: 1px solid;
507 }
508
509 .top-doc .docblock h2 { font-size: 1.3em; }
510 .top-doc .docblock h3 { font-size: 1.15em; }
511 .top-doc .docblock h4,
512 .top-doc .docblock h5,
513 .top-doc .docblock h6 {
514         font-size: 1em;
515 }
516
517 .docblock h5 { font-size: 1em; }
518 .docblock h6 { font-size: 0.95em; }
519
520 .docblock {
521         margin-left: 24px;
522         position: relative;
523 }
524
525 .docblock > * {
526         max-width: 100%;
527         overflow-x: auto;
528 }
529
530 .content .out-of-band {
531         flex-grow: 0;
532         text-align: right;
533         font-size: 23px;
534         margin: 0px;
535         padding: 0 0 0 12px;
536         font-weight: normal;
537 }
538
539 .method > .code-header, .trait-impl > .code-header, .invisible > .code-header {
540         max-width: calc(100% - 41px);
541         display: block;
542 }
543
544 .invisible {
545         width: 100%;
546         display: inline-block;
547 }
548
549 .content .in-band {
550         flex-grow: 1;
551         margin: 0px;
552         padding: 0px;
553 }
554
555 .in-band > code, .in-band > .code-header {
556         display: inline-block;
557 }
558
559 #main {
560         position: relative;
561 }
562 #main > .since {
563         top: inherit;
564         font-family: "Fira Sans", Arial, sans-serif;
565 }
566
567 .content table:not(.table-display) {
568         border-spacing: 0 5px;
569 }
570 .content td { vertical-align: top; }
571 .content td:first-child { padding-right: 20px; }
572 .content td p:first-child { margin-top: 0; }
573 .content td h1, .content td h2 { margin-left: 0; font-size: 1.1em; }
574 .content tr:first-child td { border-top: 0; }
575
576 .docblock table {
577         margin: .5em 0;
578         width: calc(100% - 2px);
579         overflow-x: auto;
580         display: block;
581 }
582
583 .docblock table td {
584         padding: .5em;
585         border: 1px dashed;
586 }
587
588 .docblock table th {
589         padding: .5em;
590         text-align: left;
591         border: 1px solid;
592 }
593
594 .fields + table {
595         margin-bottom: 1em;
596 }
597
598 .content .item-list {
599         list-style-type: none;
600         padding: 0;
601 }
602
603 .content .multi-column {
604         -moz-column-count: 5;
605         -moz-column-gap: 2.5em;
606         -webkit-column-count: 5;
607         -webkit-column-gap: 2.5em;
608         column-count: 5;
609         column-gap: 2.5em;
610 }
611 .content .multi-column li { width: 100%; display: inline-block; }
612
613 .content > .methods > .method {
614         font-size: 1em;
615         position: relative;
616 }
617 /* Shift "where ..." part of method or fn definition down a line */
618 .content .method .where,
619 .content .fn .where,
620 .content .where.fmt-newline {
621         display: block;
622         font-size: 0.8em;
623 }
624
625 .content .methods > div:not(.notable-traits):not(.method) {
626         margin-left: 40px;
627         margin-bottom: 15px;
628 }
629
630 .content .docblock > .impl-items {
631         margin-left: 20px;
632         margin-top: -34px;
633 }
634 .content .docblock >.impl-items .table-display {
635         margin: 0;
636 }
637 .content .docblock >.impl-items table td {
638         padding: 0;
639 }
640 .content .docblock > .impl-items .table-display, .impl-items table td {
641         border: none;
642 }
643
644 .content .item-info code {
645         font-size: 90%;
646 }
647
648 .content .item-info {
649         position: relative;
650         margin-left: 33px;
651 }
652
653 .sub-variant > div > .item-info {
654         margin-top: initial;
655 }
656
657 .content .item-info::before {
658         content: '⬑';
659         font-size: 25px;
660         position: absolute;
661         top: -6px;
662         left: -19px;
663 }
664
665 .content .impl-items .method, .content .impl-items > .type, .impl-items > .associatedconstant,
666 .impl-items > .associatedtype, .content .impl-items details > summary > .type,
667 .impl-items details > summary > .associatedconstant,
668 .impl-items details > summary > .associatedtype {
669         margin-left: 20px;
670 }
671
672 .content .impl-items .docblock, .content .impl-items .item-info {
673         margin-bottom: .6em;
674 }
675
676 .content .impl-items > .item-info {
677         margin-left: 40px;
678 }
679
680 .methods > .item-info, .content .impl-items > .item-info {
681         margin-top: -8px;
682 }
683
684 .impl-items {
685         flex-basis: 100%;
686 }
687
688 #main > .item-info {
689         margin-top: 0;
690 }
691
692 nav:not(.sidebar) {
693         border-bottom: 1px solid;
694         padding-bottom: 10px;
695         margin-bottom: 10px;
696 }
697 nav.main {
698         padding: 20px 0;
699         text-align: center;
700 }
701 nav.main .current {
702         border-top: 1px solid;
703         border-bottom: 1px solid;
704 }
705 nav.main .separator {
706         border: 1px solid;
707         display: inline-block;
708         height: 23px;
709         margin: 0 20px;
710 }
711 nav.sum { text-align: right; }
712 nav.sub form { display: inline; }
713
714 nav.sub, .content {
715         margin-left: 230px;
716 }
717
718 a {
719         text-decoration: none;
720         background: transparent;
721 }
722
723 .small-section-header {
724         display: flex;
725         justify-content: space-between;
726         position: relative;
727 }
728
729 .small-section-header:hover > .anchor {
730         display: initial;
731 }
732
733 .in-band:hover > .anchor, .impl:hover > .anchor, .method.trait-impl:hover > .anchor,
734 .type.trait-impl:hover > .anchor, .associatedconstant.trait-impl:hover > .anchor,
735 .associatedtype.trait-impl:hover > .anchor {
736         display: inline-block;
737         position: absolute;
738 }
739 .anchor {
740         display: none;
741         position: absolute;
742         left: 0;
743         background: none !important;
744 }
745 .anchor.field {
746         left: -5px;
747 }
748 .small-section-header > .anchor {
749         left: -15px;
750         padding-right: 8px;
751 }
752 h2.small-section-header > .anchor {
753         padding-right: 6px;
754 }
755 .anchor::before {
756         content: '§';
757 }
758
759 .docblock a:not(.srclink):not(.test-arrow):hover,
760 .docblock-short a:not(.srclink):not(.test-arrow):hover, .item-info a {
761         text-decoration: underline;
762 }
763
764 .invisible > .srclink,
765 .method > .code-header + .srclink {
766         position: absolute;
767         top: 0;
768         right: 0;
769         font-size: 17px;
770         font-weight: normal;
771 }
772
773 .block a.current.crate { font-weight: 500; }
774
775 .item-table {
776         display: table;
777 }
778 .item-row {
779         display: table-row;
780 }
781 .item-left, .item-right {
782         display: table-cell;
783 }
784 .item-left {
785         padding-right: 1.2rem;
786 }
787
788 .search-container {
789         position: relative;
790 }
791 .search-container > div {
792         display: inline-flex;
793         width: calc(100% - 63px);
794 }
795 #crate-search {
796         min-width: 115px;
797         margin-top: 5px;
798         padding: 6px;
799         padding-right: 19px;
800         flex: none;
801         border: 0;
802         border-right: 0;
803         border-radius: 4px 0 0 4px;
804         outline: none;
805         cursor: pointer;
806         border-right: 1px solid;
807         -moz-appearance: none;
808         -webkit-appearance: none;
809         /* Removes default arrow from firefox */
810         text-indent: 0.01px;
811         text-overflow: "";
812         background-repeat: no-repeat;
813         background-color: transparent;
814         background-size: 20px;
815         background-position: calc(100% - 1px) 56%;
816 }
817 .search-container > .top-button {
818         position: absolute;
819         right: 0;
820         top: 10px;
821 }
822 .search-input {
823         /* Override Normalize.css: we have margins and do
824          not want to overflow - the `moz` attribute is necessary
825          until Firefox 29, too early to drop at this point */
826         -moz-box-sizing: border-box !important;
827         box-sizing: border-box !important;
828         outline: none;
829         border: none;
830         border-radius: 1px;
831         margin-top: 5px;
832         padding: 10px 16px;
833         font-size: 17px;
834         transition: border-color 300ms ease;
835         transition: border-radius 300ms ease-in-out;
836         transition: box-shadow 300ms ease-in-out;
837         width: 100%;
838 }
839
840 #crate-search + .search-input {
841         border-radius: 0 1px 1px 0;
842         width: calc(100% - 32px);
843 }
844
845 .search-input:focus {
846         border-radius: 2px;
847         border: 0;
848         outline: 0;
849 }
850
851 .search-results {
852         display: none;
853         padding-bottom: 2em;
854 }
855
856 .search-results.active {
857         display: block;
858         /* prevent overhanging tabs from moving the first result */
859         clear: both;
860 }
861
862 .search-results .desc > span {
863         white-space: nowrap;
864         text-overflow: ellipsis;
865         overflow: hidden;
866         display: block;
867 }
868
869 .search-results > a {
870         display: block;
871         width: 100%;
872         /* A little margin ensures the browser's outlining of focused links has room to display. */
873         margin-left: 2px;
874         margin-right: 2px;
875         border-bottom: 1px solid #aaa3;
876 }
877
878 .search-results > a > div {
879         display: flex;
880         flex-flow: row wrap;
881 }
882
883 .search-results .result-name, .search-results div.desc, .search-results .result-description {
884         width: 50%;
885 }
886 .search-results .result-name {
887         padding-right: 1em;
888 }
889
890 .search-results .result-name > span {
891         display: inline-block;
892         margin: 0;
893         font-weight: normal;
894 }
895
896 body.blur > :not(#help) {
897         filter: blur(8px);
898         -webkit-filter: blur(8px);
899         opacity: .7;
900 }
901
902 #help {
903         width: 100%;
904         height: 100vh;
905         position: fixed;
906         top: 0;
907         left: 0;
908         display: flex;
909         justify-content: center;
910         align-items: center;
911 }
912 #help > div {
913         flex: 0 0 auto;
914         box-shadow: 0 0 6px rgba(0,0,0,.2);
915         width: 550px;
916         height: auto;
917         border: 1px solid;
918 }
919 #help dt {
920         float: left;
921         clear: left;
922         display: block;
923         margin-right: 0.5rem;
924 }
925 #help span.top, #help span.bottom {
926         text-align: center;
927         display: block;
928         font-size: 18px;
929
930 }
931 #help span.top {
932         text-align: center;
933         display: block;
934         margin: 10px 0;
935         border-bottom: 1px solid;
936         padding-bottom: 4px;
937         margin-bottom: 6px;
938 }
939 #help span.bottom {
940         clear: both;
941         border-top: 1px solid;
942 }
943 #help dd { margin: 5px 35px; }
944 #help .infos { padding-left: 0; }
945 #help h1, #help h2 { margin-top: 0; }
946 #help > div div {
947         width: 50%;
948         float: left;
949         padding: 0 20px 20px 17px;;
950 }
951
952 .item-info .stab {
953         display: table;
954 }
955 .stab {
956         border-width: 1px;
957         border-style: solid;
958         padding: 3px;
959         margin-bottom: 5px;
960         font-size: 90%;
961         font-weight: normal;
962 }
963 .stab p {
964         display: inline;
965 }
966
967 .stab .emoji {
968         font-size: 1.5em;
969 }
970
971 /* Black one-pixel outline around emoji shapes */
972 .emoji {
973         text-shadow:
974                 1px 0 0 black,
975                 -1px 0 0 black,
976                 0  1px 0 black,
977                 0 -1px 0 black;
978 }
979
980 .module-item .stab,
981 .import-item .stab {
982         border-radius: 3px;
983         display: inline-block;
984         font-size: 80%;
985         line-height: 1.2;
986         margin-bottom: 0;
987         margin-left: .3em;
988         padding: 2px;
989         vertical-align: text-bottom;
990 }
991
992 .module-item.unstable,
993 .import-item.unstable {
994         opacity: 0.65;
995 }
996
997 .since {
998         font-weight: normal;
999         font-size: initial;
1000 }
1001
1002 .impl-items .since, .impl .since, .methods .since {
1003         padding-left: 12px;
1004         padding-right: 2px;
1005         position: initial;
1006 }
1007
1008 .impl-items .srclink, .impl .srclink, .methods .srclink {
1009         /* Override header settings otherwise it's too bold */
1010         font-size: 17px;
1011         font-weight: normal;
1012 }
1013
1014 .rightside {
1015         float: right;
1016 }
1017
1018 .has-srclink {
1019         font-size: 16px;
1020         margin-bottom: 12px;
1021         /* Push the src link out to the right edge consistently */
1022         justify-content: space-between;
1023 }
1024
1025 .variants_table {
1026         width: 100%;
1027 }
1028
1029 .variants_table tbody tr td:first-child {
1030         width: 1%; /* make the variant name as small as possible */
1031 }
1032
1033 td.summary-column {
1034         width: 100%;
1035 }
1036
1037 .summary {
1038         padding-right: 0px;
1039 }
1040
1041 pre.rust .question-mark {
1042         font-weight: bold;
1043 }
1044
1045 a.test-arrow {
1046         display: inline-block;
1047         position: absolute;
1048         padding: 5px 10px 5px 10px;
1049         border-radius: 5px;
1050         font-size: 130%;
1051         top: 5px;
1052         right: 5px;
1053         z-index: 1;
1054 }
1055 a.test-arrow:hover{
1056         text-decoration: none;
1057 }
1058
1059 .section-header:hover a:before {
1060         position: absolute;
1061         left: -25px;
1062         padding-right: 10px; /* avoid gap that causes hover to disappear */
1063         content: '\2002\00a7\2002';
1064 }
1065
1066 .section-header:hover a {
1067         text-decoration: none;
1068 }
1069
1070 .section-header a {
1071         color: inherit;
1072 }
1073
1074 .code-attribute {
1075         font-weight: 300;
1076 }
1077
1078 .since + .srclink {
1079         padding-left: 10px;
1080 }
1081
1082 .item-spacer {
1083         width: 100%;
1084         height: 12px;
1085 }
1086
1087 .out-of-band > span.since {
1088         position: initial;
1089         font-size: 20px;
1090         margin-right: 5px;
1091 }
1092
1093 .sub-variant, .sub-variant > h3 {
1094         margin-top: 0px !important;
1095         padding-top: 1px;
1096 }
1097
1098 #main .sub-variant > h3 {
1099         font-size: 15px;
1100         margin-left: 25px;
1101         margin-bottom: 5px;
1102 }
1103
1104 .sub-variant > div {
1105         margin-left: 20px;
1106         margin-bottom: 10px;
1107 }
1108
1109 .sub-variant > div > span {
1110         display: block;
1111         position: relative;
1112 }
1113
1114 .toggle-label {
1115         display: inline-block;
1116         margin-left: 4px;
1117         margin-top: 3px;
1118 }
1119
1120 .docblock > .section-header:first-child {
1121         margin-left: 15px;
1122         margin-top: 0;
1123 }
1124
1125 .docblock > .section-header:first-child:hover > a:before {
1126         left: -10px;
1127 }
1128
1129 :target > code, :target > .code-header {
1130         opacity: 1;
1131 }
1132
1133 :target {
1134         padding-right: 3px;
1135 }
1136
1137 .information {
1138         position: absolute;
1139         left: -25px;
1140         margin-top: 7px;
1141         z-index: 1;
1142 }
1143
1144 .tooltip {
1145         position: relative;
1146         display: inline-block;
1147         cursor: pointer;
1148 }
1149
1150 .tooltip::after {
1151         display: none;
1152         text-align: center;
1153         padding: 5px 3px 3px 3px;
1154         border-radius: 6px;
1155         margin-left: 5px;
1156         font-size: 16px;
1157 }
1158
1159 .tooltip.ignore::after {
1160         content: "This example is not tested";
1161 }
1162 .tooltip.compile_fail::after {
1163         content: "This example deliberately fails to compile";
1164 }
1165 .tooltip.should_panic::after {
1166         content: "This example panics";
1167 }
1168 .tooltip.edition::after {
1169         content: "This code runs with edition " attr(data-edition);
1170 }
1171
1172 .tooltip::before {
1173         content: " ";
1174         position: absolute;
1175         top: 50%;
1176         left: 16px;
1177         margin-top: -5px;
1178         border-width: 5px;
1179         border-style: solid;
1180         display: none;
1181 }
1182
1183 .tooltip:hover::before, .tooltip:hover::after {
1184         display: inline;
1185 }
1186
1187 .tooltip.compile_fail, .tooltip.should_panic, .tooltip.ignore {
1188         font-weight: bold;
1189         font-size: 20px;
1190 }
1191
1192 .notable-traits-tooltip {
1193         display: inline-block;
1194         cursor: pointer;
1195 }
1196
1197 .notable-traits:hover .notable-traits-tooltiptext,
1198 .notable-traits .notable-traits-tooltiptext.force-tooltip {
1199         display: inline-block;
1200 }
1201
1202 .notable-traits .notable-traits-tooltiptext {
1203         display: none;
1204         padding: 5px 3px 3px 3px;
1205         border-radius: 6px;
1206         margin-left: 5px;
1207         z-index: 10;
1208         font-size: 16px;
1209         cursor: default;
1210         position: absolute;
1211         border: 1px solid;
1212 }
1213
1214 .notable-traits-tooltip::after {
1215         /* The margin on the tooltip does not capture hover events,
1216            this extends the area of hover enough so that mouse hover is not
1217            lost when moving the mouse to the tooltip */
1218         content: "\00a0\00a0\00a0";
1219 }
1220
1221 .notable-traits .notable, .notable-traits .docblock {
1222         margin: 0;
1223 }
1224
1225 .notable-traits .notable {
1226         margin: 0;
1227         margin-bottom: 13px;
1228         font-size: 19px;
1229         font-weight: 600;
1230 }
1231
1232 .notable-traits .docblock code.content{
1233         margin: 0;
1234         padding: 0;
1235         font-size: 20px;
1236 }
1237
1238 /* Example code has the "Run" button that needs to be positioned relative to the pre */
1239 pre.rust.rust-example-rendered {
1240         position: relative;
1241 }
1242
1243 pre.rust {
1244         tab-size: 4;
1245         -moz-tab-size: 4;
1246 }
1247
1248 .search-failed {
1249         text-align: center;
1250         margin-top: 20px;
1251         display: none;
1252 }
1253
1254 .search-failed.active {
1255         display: block;
1256 }
1257
1258 .search-failed > ul {
1259         text-align: left;
1260         max-width: 570px;
1261         margin-left: auto;
1262         margin-right: auto;
1263 }
1264
1265 #titles {
1266         height: 35px;
1267 }
1268
1269 #titles > button {
1270         float: left;
1271         width: 33.3%;
1272         text-align: center;
1273         font-size: 18px;
1274         cursor: pointer;
1275         border: 0;
1276         border-top: 2px solid;
1277 }
1278
1279 #titles > button:not(:last-child) {
1280         margin-right: 1px;
1281         width: calc(33.3% - 1px);
1282 }
1283
1284 #titles > button > div.count {
1285         display: inline-block;
1286         font-size: 16px;
1287 }
1288
1289 .notable-traits {
1290         cursor: pointer;
1291         z-index: 2;
1292         margin-left: 5px;
1293 }
1294
1295 #all-types {
1296         text-align: center;
1297         border: 1px solid;
1298         margin: 0 10px;
1299         margin-bottom: 10px;
1300         display: block;
1301         border-radius: 7px;
1302 }
1303 #all-types > p {
1304         margin: 5px 0;
1305 }
1306
1307 #sidebar-toggle {
1308         position: fixed;
1309         top: 30px;
1310         left: 300px;
1311         z-index: 10;
1312         padding: 3px;
1313         border-top-right-radius: 3px;
1314         border-bottom-right-radius: 3px;
1315         cursor: pointer;
1316         font-weight: bold;
1317         transition: left .5s;
1318         font-size: 1.2em;
1319         border: 1px solid;
1320         border-left: 0;
1321 }
1322 #source-sidebar {
1323         position: fixed;
1324         top: 0;
1325         bottom: 0;
1326         left: 0;
1327         width: 300px;
1328         z-index: 1;
1329         overflow: auto;
1330         transition: left .5s;
1331         border-right: 1px solid;
1332 }
1333 #source-sidebar > .title {
1334         font-size: 1.5em;
1335         text-align: center;
1336         border-bottom: 1px solid;
1337         margin-bottom: 6px;
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, #help-button {
1351         position: absolute;
1352         top: 10px;
1353 }
1354
1355 #settings-menu {
1356         right: 0;
1357         outline: none;
1358 }
1359
1360 #theme-picker, #settings-menu, #help-button, #copy-path {
1361         padding: 4px;
1362         width: 27px;
1363         height: 29px;
1364         border: 1px solid;
1365         border-radius: 3px;
1366         cursor: pointer;
1367 }
1368
1369 #help-button {
1370         right: 30px;
1371         font-family: "Fira Sans", Arial, sans-serif;
1372         text-align: center;
1373         font-size: 17px;
1374         padding-top: 2px;
1375 }
1376
1377 #copy-path {
1378         background: initial;
1379         margin-left: 10px;
1380         padding: 0;
1381         padding-left: 2px;
1382         border: 0;
1383 }
1384
1385 #theme-choices {
1386         display: none;
1387         position: absolute;
1388         left: 0;
1389         top: 28px;
1390         border: 1px solid;
1391         border-radius: 3px;
1392         z-index: 1;
1393         cursor: pointer;
1394 }
1395
1396 #theme-choices > button {
1397         border: none;
1398         width: 100%;
1399         padding: 4px 8px;
1400         text-align: center;
1401         background: rgba(0,0,0,0);
1402 }
1403
1404 #theme-choices > button:not(:first-child) {
1405         border-top: 1px solid;
1406 }
1407
1408 kbd {
1409         display: inline-block;
1410         padding: 3px 5px;
1411         font: 15px monospace;
1412         line-height: 10px;
1413         vertical-align: middle;
1414         border: solid 1px;
1415         border-radius: 3px;
1416         box-shadow: inset 0 -1px 0;
1417         cursor: default;
1418 }
1419
1420 .hidden-by-impl-hider,
1421 .hidden-by-usual-hider {
1422         /* important because of conflicting rule for small screens */
1423         display: none !important;
1424 }
1425
1426 #implementations-list > h3 > span.in-band {
1427         width: 100%;
1428 }
1429
1430 .table-display {
1431         width: 100%;
1432         border: 0;
1433         border-collapse: collapse;
1434         border-spacing: 0;
1435         font-size: 16px;
1436 }
1437
1438 .table-display tr td:first-child {
1439         padding-right: 0;
1440 }
1441
1442 .table-display tr td:last-child {
1443         float: right;
1444 }
1445 .table-display .out-of-band {
1446         position: relative;
1447         font-size: 19px;
1448         display: block;
1449 }
1450 #implementors-list > .impl-items .table-display .out-of-band {
1451         font-size: 17px;
1452 }
1453
1454 .table-display td:hover .anchor {
1455         display: block;
1456         top: 2px;
1457         left: -5px;
1458 }
1459
1460 #main > ul {
1461         padding-left: 10px;
1462 }
1463 #main > ul > li {
1464         list-style: none;
1465 }
1466
1467 .non-exhaustive {
1468         margin-bottom: 1em;
1469 }
1470
1471 div.children {
1472         padding-left: 27px;
1473         display: none;
1474 }
1475 div.name {
1476         cursor: pointer;
1477         position: relative;
1478         margin-left: 16px;
1479 }
1480 div.files > a {
1481         display: block;
1482         padding: 0 3px;
1483 }
1484 div.files > a:hover, div.name:hover {
1485         background-color: #a14b4b;
1486 }
1487 div.name.expand + .children {
1488         display: block;
1489 }
1490 div.name::before {
1491         content: "\25B6";
1492         padding-left: 4px;
1493         font-size: 0.7em;
1494         position: absolute;
1495         left: -16px;
1496         top: 4px;
1497 }
1498 div.name.expand::before {
1499         transform: rotate(90deg);
1500         left: -15px;
1501         top: 2px;
1502 }
1503
1504 /* The hideme class is used on summary tags that contain a span with
1505         placeholder text shown only when the toggle is closed. For instance,
1506         "Expand description" or "Show methods". */
1507 details.rustdoc-toggle > summary.hideme {
1508         cursor: pointer;
1509 }
1510
1511 details.rustdoc-toggle > summary, details.undocumented > summary {
1512         list-style: none;
1513 }
1514 details.rustdoc-toggle > summary::-webkit-details-marker,
1515 details.rustdoc-toggle > summary::marker,
1516 details.undocumented > summary::-webkit-details-marker,
1517 details.undocumented > summary::marker {
1518         display: none;
1519 }
1520
1521 details.rustdoc-toggle > summary.hideme > span {
1522         margin-left: 9px;
1523 }
1524
1525 details.rustdoc-toggle > summary::before {
1526         content: "";
1527         cursor: pointer;
1528         width: 17px;
1529         height: max(17px, 1.1em);
1530         background-repeat: no-repeat;
1531         background-position: top left;
1532         display: inline-block;
1533         vertical-align: middle;
1534         opacity: .5;
1535 }
1536
1537 /* Screen readers see the text version at the end the line.
1538         Visual readers see the icon at the start of the line, but small and transparent. */
1539 details.rustdoc-toggle > summary::after {
1540         content: "Expand";
1541         overflow: hidden;
1542         width: 0;
1543         height: 0;
1544         position: absolute;
1545 }
1546
1547 details.rustdoc-toggle > summary.hideme::after {
1548         /* "hideme" toggles already have a description when they're contracted */
1549         content: "";
1550 }
1551
1552 details.rustdoc-toggle > summary:focus::before,
1553 details.rustdoc-toggle > summary:hover::before {
1554         opacity: 1;
1555 }
1556
1557 details.rustdoc-toggle.top-doc > summary,
1558 details.rustdoc-toggle.top-doc > summary::before,
1559 details.rustdoc-toggle.non-exhaustive > summary,
1560 details.rustdoc-toggle.non-exhaustive > summary::before {
1561         font-family: 'Fira Sans';
1562         font-size: 16px;
1563 }
1564
1565 details.non-exhaustive {
1566         margin-bottom: 8px;
1567 }
1568
1569 details.rustdoc-toggle > summary.hideme::before {
1570         position: relative;
1571 }
1572
1573 details.rustdoc-toggle > summary:not(.hideme)::before {
1574         position: absolute;
1575         left: -23px;
1576         top: 3px;
1577 }
1578
1579 .impl-items > details.rustdoc-toggle > summary:not(.hideme)::before,
1580 .undocumented > details.rustdoc-toggle > summary:not(.hideme)::before {
1581         position: absolute;
1582         left: -2px;
1583 }
1584
1585 /* When a "hideme" summary is open and the "Expand description" or "Show
1586         methods" text is hidden, we want the [-] toggle that remains to not
1587         affect the layout of the items to its right. To do that, we use
1588         absolute positioning. Note that we also set position: relative
1589         on the parent <details> to make this work properly. */
1590 details.rustdoc-toggle[open] > summary.hideme {
1591         position: absolute;
1592 }
1593
1594 details.rustdoc-toggle, details.undocumented {
1595         position: relative;
1596 }
1597
1598 details.rustdoc-toggle[open] > summary.hideme > span {
1599         display: none;
1600 }
1601
1602 details.rustdoc-toggle[open] > summary::before,
1603 details.rustdoc-toggle[open] > summary.hideme::before {
1604         width: 17px;
1605         height: max(17px, 1.1em);
1606         background-repeat: no-repeat;
1607         background-position: top left;
1608         display: inline-block;
1609         content: "";
1610 }
1611
1612 details.rustdoc-toggle[open] > summary::after,
1613 details.rustdoc-toggle[open] > summary.hideme::after {
1614         content: "Collapse";
1615 }
1616
1617 details.undocumented > summary::before {
1618         padding-left: 17px;
1619         height: max(17px, 1.1em);
1620         background-repeat: no-repeat;
1621         background-position: top left;
1622         content: "Show hidden undocumented items";
1623         cursor: pointer;
1624         font-size: 16px;
1625         font-weight: 300;
1626         opacity: .5;
1627 }
1628
1629 details.undocumented > summary:focus::before,
1630 details.undocumented > summary:hover::before {
1631         opacity: 1;
1632 }
1633
1634 details.undocumented[open] > summary::before {
1635         padding-left: 17px;
1636         height: max(17px, 1.1em);
1637         background-repeat: no-repeat
1638         background-position: top left;
1639         content: "Hide undocumented items";
1640 }
1641
1642 /* Media Queries */
1643
1644 @media (min-width: 701px) {
1645         /* In case there is no documentation before a code block, we need to add some margin at the top
1646         to prevent an overlay between the "collapse toggle" and the information tooltip.
1647         However, it's not needed with smaller screen width because the doc/code block is always put
1648         "one line" below. */
1649         .docblock > .information:first-child > .tooltip {
1650                 margin-top: 16px;
1651         }
1652 }
1653
1654 @media (max-width: 700px) {
1655         body {
1656                 padding-top: 0px;
1657         }
1658
1659         .rustdoc > .sidebar {
1660                 height: 45px;
1661                 min-height: 40px;
1662                 margin: 0;
1663                 margin-left: -15px;
1664                 padding: 0 15px;
1665                 position: static;
1666                 z-index: 11;
1667         }
1668
1669         .sidebar > .location {
1670                 float: right;
1671                 margin: 0px;
1672                 margin-top: 2px;
1673                 padding: 3px 10px 1px 10px;
1674                 min-height: 39px;
1675                 background: inherit;
1676                 text-align: left;
1677                 font-size: 24px;
1678         }
1679
1680         .sidebar .location:empty {
1681                 padding: 0;
1682         }
1683
1684         .sidebar .logo-container {
1685                 width: 35px;
1686                 height: 35px;
1687                 margin-top: 5px;
1688                 margin-bottom: 5px;
1689                 float: left;
1690                 margin-left: 50px;
1691         }
1692
1693         .sidebar .logo-container > img {
1694                 max-width: 35px;
1695                 max-height: 35px;
1696         }
1697
1698         .sidebar-menu {
1699                 position: fixed;
1700                 z-index: 10;
1701                 font-size: 2rem;
1702                 cursor: pointer;
1703                 width: 45px;
1704                 left: 0;
1705                 text-align: center;
1706                 display: block;
1707                 border-bottom: 1px solid;
1708                 border-right: 1px solid;
1709                 height: 45px;
1710         }
1711
1712         .rustdoc.source > .sidebar > .sidebar-menu {
1713                 display: none;
1714         }
1715
1716         /* We do NOT hide this element so that alternative device readers still have this information
1717            available. */
1718         .sidebar-elems {
1719                 position: fixed;
1720                 z-index: 1;
1721                 top: 45px;
1722                 bottom: 0;
1723                 width: 246px;
1724                 /* We move the sidebar to the left by its own width so it doesn't appear. */
1725                 left: -246px;
1726                 overflow-y: auto;
1727                 border-right: 1px solid;
1728         }
1729
1730         .sidebar > .block.version {
1731                 overflow: hidden;
1732                 border-bottom: none;
1733                 margin-bottom: 0;
1734                 height: 100%;
1735                 padding-left: 12px;
1736         }
1737         .sidebar > .block.version > div.narrow-helper {
1738                 float: left;
1739                 width: 1px;
1740                 height: 100%;
1741         }
1742         .sidebar > .block.version > p {
1743                 /* hide Version text if too narrow */
1744                 margin: 0;
1745                 min-width: 55px;
1746                 /* vertically center */
1747                 display: flex;
1748                 align-items: center;
1749                 height: 100%;
1750         }
1751
1752         nav.sub {
1753                 width: calc(100% - 32px);
1754                 float: right;
1755         }
1756
1757         .content {
1758                 margin-left: 0px;
1759         }
1760
1761         #main, #search {
1762                 margin-top: 45px;
1763                 padding: 0;
1764         }
1765
1766         #search {
1767                 margin-left: 0;
1768         }
1769
1770         .anchor {
1771                 display: none !important;
1772         }
1773
1774         .theme-picker {
1775                 left: 10px;
1776                 top: 54px;
1777                 z-index: 1;
1778         }
1779
1780         .notable-traits {
1781                 position: absolute;
1782                 left: -22px;
1783                 top: 24px;
1784         }
1785
1786         #titles > button > div.count {
1787                 float: left;
1788                 width: 100%;
1789         }
1790
1791         #titles {
1792                 height: 50px;
1793         }
1794
1795         .sidebar.mobile {
1796                 position: fixed;
1797                 width: 100%;
1798                 margin-left: 0;
1799                 background-color: rgba(0,0,0,0);
1800                 height: 100%;
1801         }
1802         /*
1803         This allows to prevent the version text to overflow the sidebar title on mobile mode when the
1804         sidebar is displayed (after clicking on the "hamburger" button).
1805         */
1806         .sidebar.mobile > div.version {
1807                 overflow: hidden;
1808                 max-height: 33px;
1809         }
1810         .sidebar {
1811                 width: calc(100% + 30px);
1812         }
1813
1814         .show-it, .sidebar-elems:focus-within {
1815                 z-index:  2;
1816                 left: 0;
1817         }
1818
1819         .show-it > .block.items {
1820                 margin: 8px 0;
1821         }
1822
1823         .show-it > .block.items > ul {
1824                 margin: 0;
1825         }
1826
1827         .show-it > .block.items > ul > li {
1828                 text-align: center;
1829                 margin: 2px 0;
1830         }
1831
1832         .show-it > .block.items > ul > li > a {
1833                 font-size: 21px;
1834         }
1835
1836         /* Because of ios, we need to actually have a full height sidebar title so the
1837          * actual sidebar can show up. But then we need to make it transparent so we don't
1838          * hide content. The filler just allows to create the background for the sidebar
1839          * title. But because of the absolute position, I had to lower the z-index.
1840          */
1841         #sidebar-filler {
1842                 position: fixed;
1843                 left: 45px;
1844                 width: calc(100% - 45px);
1845                 top: 0;
1846                 height: 45px;
1847                 z-index: -1;
1848                 border-bottom: 1px solid;
1849         }
1850
1851         #main > details.rustdoc-toggle > summary::before,
1852         #main > div > details.rustdoc-toggle > summary::before {
1853                 left: -11px;
1854         }
1855
1856         #all-types {
1857                 margin: 10px;
1858         }
1859
1860         #sidebar-toggle {
1861                 top: 100px;
1862                 width: 30px;
1863                 font-size: 1.5rem;
1864                 text-align: center;
1865                 padding: 0;
1866         }
1867
1868         #source-sidebar {
1869                 z-index: 11;
1870         }
1871
1872         #main > .line-numbers {
1873                 margin-top: 0;
1874         }
1875
1876         .notable-traits .notable-traits-tooltiptext {
1877                 left: 0;
1878                 top: 100%;
1879         }
1880
1881         /* We don't display the help button on mobile devices. */
1882         #help-button {
1883                 display: none;
1884         }
1885
1886         /* Display an alternating layout on tablets and phones */
1887         .item-table {
1888                 display: block;
1889         }
1890         .item-row {
1891                 display: flex;
1892                 flex-flow: column wrap;
1893         }
1894         .item-left, .item-right {
1895                 width: 100%;
1896         }
1897
1898         .search-container > div {
1899                 width: calc(100% - 32px);
1900         }
1901
1902         /* Display an alternating layout on tablets and phones */
1903         .search-results > a {
1904                 border-bottom: 1px solid #aaa9;
1905                 padding: 5px 0px;
1906         }
1907         .search-results .result-name, .search-results div.desc, .search-results .result-description {
1908                 width: 100%;
1909         }
1910         .search-results div.desc, .search-results .result-description, .item-right {
1911                 padding-left: 2em;
1912         }
1913 }
1914
1915 @media print {
1916         nav.sub, .content .out-of-band {
1917                 display: none;
1918         }
1919 }
1920
1921 @media (max-width: 464px) {
1922         #titles, #titles > button {
1923                 height: 73px;
1924         }
1925
1926         /* This is to prevent the search bar from being underneath the <section>
1927          * element following it.
1928          */
1929         #main, #search {
1930                 margin-top: 100px;
1931         }
1932
1933         #main > table:not(.table-display) td {
1934                 word-break: break-word;
1935                 width: 50%;
1936         }
1937
1938         .search-container > div {
1939                 display: block;
1940                 width: calc(100% - 37px);
1941         }
1942
1943         #crate-search {
1944                 width: 100%;
1945                 border-radius: 4px;
1946                 border: 0;
1947         }
1948
1949         #crate-search + .search-input {
1950                 width: calc(100% + 71px);
1951                 margin-left: -36px;
1952         }
1953
1954         #theme-picker, #settings-menu {
1955                 padding: 5px;
1956                 width: 31px;
1957                 height: 31px;
1958         }
1959
1960         #theme-picker {
1961                 margin-top: -2px;
1962         }
1963
1964         #settings-menu {
1965                 top: 7px;
1966         }
1967
1968         .docblock {
1969                 margin-left: 12px;
1970         }
1971
1972         .docblock code {
1973                 overflow-wrap: anywhere;
1974         }
1975 }