]> git.lizzy.rs Git - rust.git/blob - src/librustdoc/html/static/css/rustdoc.css
Remove border-bottom from most docblocks.
[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 .top-doc .docblock h2 { font-size: 1.3em; }
506 .top-doc .docblock h3 { font-size: 1.15em; }
507 .top-doc .docblock h4,
508 .top-doc .docblock h5,
509 .top-doc .docblock h6 {
510         font-size: 1em;
511 }
512
513 .docblock h5 { font-size: 1em; }
514 .docblock h6 { font-size: 0.95em; }
515
516 .docblock {
517         margin-left: 24px;
518         position: relative;
519 }
520
521 .docblock > * {
522         max-width: 100%;
523         overflow-x: auto;
524 }
525
526 .content .out-of-band {
527         flex-grow: 0;
528         text-align: right;
529         font-size: 23px;
530         margin: 0px;
531         padding: 0 0 0 12px;
532         font-weight: normal;
533 }
534
535 .method > .code-header, .trait-impl > .code-header, .invisible > .code-header {
536         max-width: calc(100% - 41px);
537         display: block;
538 }
539
540 .invisible {
541         width: 100%;
542         display: inline-block;
543 }
544
545 .content .in-band {
546         flex-grow: 1;
547         margin: 0px;
548         padding: 0px;
549 }
550
551 .in-band > code, .in-band > .code-header {
552         display: inline-block;
553 }
554
555 #main {
556         position: relative;
557 }
558 #main > .since {
559         top: inherit;
560         font-family: "Fira Sans", Arial, sans-serif;
561 }
562
563 .content table:not(.table-display) {
564         border-spacing: 0 5px;
565 }
566 .content td { vertical-align: top; }
567 .content td:first-child { padding-right: 20px; }
568 .content td p:first-child { margin-top: 0; }
569 .content td h1, .content td h2 { margin-left: 0; font-size: 1.1em; }
570 .content tr:first-child td { border-top: 0; }
571
572 .docblock table {
573         margin: .5em 0;
574         width: calc(100% - 2px);
575         overflow-x: auto;
576         display: block;
577 }
578
579 .docblock table td {
580         padding: .5em;
581         border: 1px dashed;
582 }
583
584 .docblock table th {
585         padding: .5em;
586         text-align: left;
587         border: 1px solid;
588 }
589
590 .fields + table {
591         margin-bottom: 1em;
592 }
593
594 .content .item-list {
595         list-style-type: none;
596         padding: 0;
597 }
598
599 .content .multi-column {
600         -moz-column-count: 5;
601         -moz-column-gap: 2.5em;
602         -webkit-column-count: 5;
603         -webkit-column-gap: 2.5em;
604         column-count: 5;
605         column-gap: 2.5em;
606 }
607 .content .multi-column li { width: 100%; display: inline-block; }
608
609 .content > .methods > .method {
610         font-size: 1em;
611         position: relative;
612 }
613 /* Shift "where ..." part of method or fn definition down a line */
614 .content .method .where,
615 .content .fn .where,
616 .content .where.fmt-newline {
617         display: block;
618         font-size: 0.8em;
619 }
620
621 .content .methods > div:not(.notable-traits):not(.method) {
622         margin-left: 40px;
623         margin-bottom: 15px;
624 }
625
626 .content .docblock > .impl-items {
627         margin-left: 20px;
628         margin-top: -34px;
629 }
630 .content .docblock >.impl-items .table-display {
631         margin: 0;
632 }
633 .content .docblock >.impl-items table td {
634         padding: 0;
635 }
636 .content .docblock > .impl-items .table-display, .impl-items table td {
637         border: none;
638 }
639
640 .content .item-info code {
641         font-size: 90%;
642 }
643
644 .content .item-info {
645         position: relative;
646         margin-left: 33px;
647 }
648
649 .sub-variant > div > .item-info {
650         margin-top: initial;
651 }
652
653 .content .item-info::before {
654         content: '⬑';
655         font-size: 25px;
656         position: absolute;
657         top: -6px;
658         left: -19px;
659 }
660
661 .content .impl-items .method, .content .impl-items > .type, .impl-items > .associatedconstant,
662 .impl-items > .associatedtype, .content .impl-items details > summary > .type,
663 .impl-items details > summary > .associatedconstant,
664 .impl-items details > summary > .associatedtype {
665         margin-left: 20px;
666 }
667
668 .content .impl-items .docblock, .content .impl-items .item-info {
669         margin-bottom: .6em;
670 }
671
672 .content .impl-items > .item-info {
673         margin-left: 40px;
674 }
675
676 .methods > .item-info, .content .impl-items > .item-info {
677         margin-top: -8px;
678 }
679
680 .impl-items {
681         flex-basis: 100%;
682 }
683
684 #main > .item-info {
685         margin-top: 0;
686 }
687
688 nav:not(.sidebar) {
689         border-bottom: 1px solid;
690         padding-bottom: 10px;
691         margin-bottom: 10px;
692 }
693 nav.main {
694         padding: 20px 0;
695         text-align: center;
696 }
697 nav.main .current {
698         border-top: 1px solid;
699         border-bottom: 1px solid;
700 }
701 nav.main .separator {
702         border: 1px solid;
703         display: inline-block;
704         height: 23px;
705         margin: 0 20px;
706 }
707 nav.sum { text-align: right; }
708 nav.sub form { display: inline; }
709
710 nav.sub, .content {
711         margin-left: 230px;
712 }
713
714 a {
715         text-decoration: none;
716         background: transparent;
717 }
718
719 .small-section-header {
720         display: flex;
721         justify-content: space-between;
722         position: relative;
723 }
724
725 .small-section-header:hover > .anchor {
726         display: initial;
727 }
728
729 .in-band:hover > .anchor, .impl:hover > .anchor, .method.trait-impl:hover > .anchor,
730 .type.trait-impl:hover > .anchor, .associatedconstant.trait-impl:hover > .anchor,
731 .associatedtype.trait-impl:hover > .anchor {
732         display: inline-block;
733         position: absolute;
734 }
735 .anchor {
736         display: none;
737         position: absolute;
738         left: 0;
739         background: none !important;
740 }
741 .anchor.field {
742         left: -5px;
743 }
744 .small-section-header > .anchor {
745         left: -15px;
746         padding-right: 8px;
747 }
748 h2.small-section-header > .anchor {
749         padding-right: 6px;
750 }
751 .anchor::before {
752         content: '§';
753 }
754
755 .docblock a:not(.srclink):not(.test-arrow):hover,
756 .docblock-short a:not(.srclink):not(.test-arrow):hover, .item-info a {
757         text-decoration: underline;
758 }
759
760 .invisible > .srclink,
761 .method > .code-header + .srclink {
762         position: absolute;
763         top: 0;
764         right: 0;
765         font-size: 17px;
766         font-weight: normal;
767 }
768
769 .block a.current.crate { font-weight: 500; }
770
771 .item-table {
772         display: table;
773 }
774 .item-row {
775         display: table-row;
776 }
777 .item-left, .item-right {
778         display: table-cell;
779 }
780 .item-left {
781         padding-right: 1.2rem;
782 }
783
784 .search-container {
785         position: relative;
786 }
787 .search-container > div {
788         display: inline-flex;
789         width: calc(100% - 63px);
790 }
791 #crate-search {
792         min-width: 115px;
793         margin-top: 5px;
794         padding: 6px;
795         padding-right: 19px;
796         flex: none;
797         border: 0;
798         border-right: 0;
799         border-radius: 4px 0 0 4px;
800         outline: none;
801         cursor: pointer;
802         border-right: 1px solid;
803         -moz-appearance: none;
804         -webkit-appearance: none;
805         /* Removes default arrow from firefox */
806         text-indent: 0.01px;
807         text-overflow: "";
808         background-repeat: no-repeat;
809         background-color: transparent;
810         background-size: 20px;
811         background-position: calc(100% - 1px) 56%;
812 }
813 .search-container > .top-button {
814         position: absolute;
815         right: 0;
816         top: 10px;
817 }
818 .search-input {
819         /* Override Normalize.css: we have margins and do
820          not want to overflow - the `moz` attribute is necessary
821          until Firefox 29, too early to drop at this point */
822         -moz-box-sizing: border-box !important;
823         box-sizing: border-box !important;
824         outline: none;
825         border: none;
826         border-radius: 1px;
827         margin-top: 5px;
828         padding: 10px 16px;
829         font-size: 17px;
830         transition: border-color 300ms ease;
831         transition: border-radius 300ms ease-in-out;
832         transition: box-shadow 300ms ease-in-out;
833         width: 100%;
834 }
835
836 #crate-search + .search-input {
837         border-radius: 0 1px 1px 0;
838         width: calc(100% - 32px);
839 }
840
841 .search-input:focus {
842         border-radius: 2px;
843         border: 0;
844         outline: 0;
845 }
846
847 .search-results {
848         display: none;
849         padding-bottom: 2em;
850 }
851
852 .search-results.active {
853         display: block;
854         /* prevent overhanging tabs from moving the first result */
855         clear: both;
856 }
857
858 .search-results .desc > span {
859         white-space: nowrap;
860         text-overflow: ellipsis;
861         overflow: hidden;
862         display: block;
863 }
864
865 .search-results > a {
866         display: block;
867         width: 100%;
868         /* A little margin ensures the browser's outlining of focused links has room to display. */
869         margin-left: 2px;
870         margin-right: 2px;
871         border-bottom: 1px solid #aaa3;
872 }
873
874 .search-results > a > div {
875         display: flex;
876         flex-flow: row wrap;
877 }
878
879 .search-results .result-name, .search-results div.desc, .search-results .result-description {
880         width: 50%;
881 }
882 .search-results .result-name {
883         padding-right: 1em;
884 }
885
886 .search-results .result-name > span {
887         display: inline-block;
888         margin: 0;
889         font-weight: normal;
890 }
891
892 body.blur > :not(#help) {
893         filter: blur(8px);
894         -webkit-filter: blur(8px);
895         opacity: .7;
896 }
897
898 #help {
899         width: 100%;
900         height: 100vh;
901         position: fixed;
902         top: 0;
903         left: 0;
904         display: flex;
905         justify-content: center;
906         align-items: center;
907 }
908 #help > div {
909         flex: 0 0 auto;
910         box-shadow: 0 0 6px rgba(0,0,0,.2);
911         width: 550px;
912         height: auto;
913         border: 1px solid;
914 }
915 #help dt {
916         float: left;
917         clear: left;
918         display: block;
919         margin-right: 0.5rem;
920 }
921 #help span.top, #help span.bottom {
922         text-align: center;
923         display: block;
924         font-size: 18px;
925
926 }
927 #help span.top {
928         text-align: center;
929         display: block;
930         margin: 10px 0;
931         border-bottom: 1px solid;
932         padding-bottom: 4px;
933         margin-bottom: 6px;
934 }
935 #help span.bottom {
936         clear: both;
937         border-top: 1px solid;
938 }
939 #help dd { margin: 5px 35px; }
940 #help .infos { padding-left: 0; }
941 #help h1, #help h2 { margin-top: 0; }
942 #help > div div {
943         width: 50%;
944         float: left;
945         padding: 0 20px 20px 17px;;
946 }
947
948 .item-info .stab {
949         display: table;
950 }
951 .stab {
952         border-width: 1px;
953         border-style: solid;
954         padding: 3px;
955         margin-bottom: 5px;
956         font-size: 90%;
957         font-weight: normal;
958 }
959 .stab p {
960         display: inline;
961 }
962
963 .stab .emoji {
964         font-size: 1.5em;
965 }
966
967 /* Black one-pixel outline around emoji shapes */
968 .emoji {
969         text-shadow:
970                 1px 0 0 black,
971                 -1px 0 0 black,
972                 0  1px 0 black,
973                 0 -1px 0 black;
974 }
975
976 .module-item .stab,
977 .import-item .stab {
978         border-radius: 3px;
979         display: inline-block;
980         font-size: 80%;
981         line-height: 1.2;
982         margin-bottom: 0;
983         margin-left: .3em;
984         padding: 2px;
985         vertical-align: text-bottom;
986 }
987
988 .module-item.unstable,
989 .import-item.unstable {
990         opacity: 0.65;
991 }
992
993 .since {
994         font-weight: normal;
995         font-size: initial;
996 }
997
998 .impl-items .since, .impl .since, .methods .since {
999         padding-left: 12px;
1000         padding-right: 2px;
1001         position: initial;
1002 }
1003
1004 .impl-items .srclink, .impl .srclink, .methods .srclink {
1005         /* Override header settings otherwise it's too bold */
1006         font-size: 17px;
1007         font-weight: normal;
1008 }
1009
1010 .rightside {
1011         float: right;
1012 }
1013
1014 .has-srclink {
1015         font-size: 16px;
1016         margin-bottom: 12px;
1017         /* Push the src link out to the right edge consistently */
1018         justify-content: space-between;
1019 }
1020
1021 .variants_table {
1022         width: 100%;
1023 }
1024
1025 .variants_table tbody tr td:first-child {
1026         width: 1%; /* make the variant name as small as possible */
1027 }
1028
1029 td.summary-column {
1030         width: 100%;
1031 }
1032
1033 .summary {
1034         padding-right: 0px;
1035 }
1036
1037 pre.rust .question-mark {
1038         font-weight: bold;
1039 }
1040
1041 a.test-arrow {
1042         display: inline-block;
1043         position: absolute;
1044         padding: 5px 10px 5px 10px;
1045         border-radius: 5px;
1046         font-size: 130%;
1047         top: 5px;
1048         right: 5px;
1049         z-index: 1;
1050 }
1051 a.test-arrow:hover{
1052         text-decoration: none;
1053 }
1054
1055 .section-header:hover a:before {
1056         position: absolute;
1057         left: -25px;
1058         padding-right: 10px; /* avoid gap that causes hover to disappear */
1059         content: '\2002\00a7\2002';
1060 }
1061
1062 .section-header:hover a {
1063         text-decoration: none;
1064 }
1065
1066 .section-header a {
1067         color: inherit;
1068 }
1069
1070 .code-attribute {
1071         font-weight: 300;
1072 }
1073
1074 .since + .srclink {
1075         padding-left: 10px;
1076 }
1077
1078 .item-spacer {
1079         width: 100%;
1080         height: 12px;
1081 }
1082
1083 .out-of-band > span.since {
1084         position: initial;
1085         font-size: 20px;
1086         margin-right: 5px;
1087 }
1088
1089 .sub-variant, .sub-variant > h3 {
1090         margin-top: 0px !important;
1091         padding-top: 1px;
1092 }
1093
1094 #main .sub-variant > h3 {
1095         font-size: 15px;
1096         margin-left: 25px;
1097         margin-bottom: 5px;
1098 }
1099
1100 .sub-variant > div {
1101         margin-left: 20px;
1102         margin-bottom: 10px;
1103 }
1104
1105 .sub-variant > div > span {
1106         display: block;
1107         position: relative;
1108 }
1109
1110 .toggle-label {
1111         display: inline-block;
1112         margin-left: 4px;
1113         margin-top: 3px;
1114 }
1115
1116 .docblock > .section-header:first-child {
1117         margin-left: 15px;
1118         margin-top: 0;
1119 }
1120
1121 .docblock > .section-header:first-child:hover > a:before {
1122         left: -10px;
1123 }
1124
1125 :target > code, :target > .code-header {
1126         opacity: 1;
1127 }
1128
1129 :target {
1130         padding-right: 3px;
1131 }
1132
1133 .information {
1134         position: absolute;
1135         left: -25px;
1136         margin-top: 7px;
1137         z-index: 1;
1138 }
1139
1140 .tooltip {
1141         position: relative;
1142         display: inline-block;
1143         cursor: pointer;
1144 }
1145
1146 .tooltip::after {
1147         display: none;
1148         text-align: center;
1149         padding: 5px 3px 3px 3px;
1150         border-radius: 6px;
1151         margin-left: 5px;
1152         font-size: 16px;
1153 }
1154
1155 .tooltip.ignore::after {
1156         content: "This example is not tested";
1157 }
1158 .tooltip.compile_fail::after {
1159         content: "This example deliberately fails to compile";
1160 }
1161 .tooltip.should_panic::after {
1162         content: "This example panics";
1163 }
1164 .tooltip.edition::after {
1165         content: "This code runs with edition " attr(data-edition);
1166 }
1167
1168 .tooltip::before {
1169         content: " ";
1170         position: absolute;
1171         top: 50%;
1172         left: 16px;
1173         margin-top: -5px;
1174         border-width: 5px;
1175         border-style: solid;
1176         display: none;
1177 }
1178
1179 .tooltip:hover::before, .tooltip:hover::after {
1180         display: inline;
1181 }
1182
1183 .tooltip.compile_fail, .tooltip.should_panic, .tooltip.ignore {
1184         font-weight: bold;
1185         font-size: 20px;
1186 }
1187
1188 .notable-traits-tooltip {
1189         display: inline-block;
1190         cursor: pointer;
1191 }
1192
1193 .notable-traits:hover .notable-traits-tooltiptext,
1194 .notable-traits .notable-traits-tooltiptext.force-tooltip {
1195         display: inline-block;
1196 }
1197
1198 .notable-traits .notable-traits-tooltiptext {
1199         display: none;
1200         padding: 5px 3px 3px 3px;
1201         border-radius: 6px;
1202         margin-left: 5px;
1203         z-index: 10;
1204         font-size: 16px;
1205         cursor: default;
1206         position: absolute;
1207         border: 1px solid;
1208 }
1209
1210 .notable-traits-tooltip::after {
1211         /* The margin on the tooltip does not capture hover events,
1212            this extends the area of hover enough so that mouse hover is not
1213            lost when moving the mouse to the tooltip */
1214         content: "\00a0\00a0\00a0";
1215 }
1216
1217 .notable-traits .notable, .notable-traits .docblock {
1218         margin: 0;
1219 }
1220
1221 .notable-traits .notable {
1222         margin: 0;
1223         margin-bottom: 13px;
1224         font-size: 19px;
1225         font-weight: 600;
1226 }
1227
1228 .notable-traits .docblock code.content{
1229         margin: 0;
1230         padding: 0;
1231         font-size: 20px;
1232 }
1233
1234 /* Example code has the "Run" button that needs to be positioned relative to the pre */
1235 pre.rust.rust-example-rendered {
1236         position: relative;
1237 }
1238
1239 pre.rust {
1240         tab-size: 4;
1241         -moz-tab-size: 4;
1242 }
1243
1244 .search-failed {
1245         text-align: center;
1246         margin-top: 20px;
1247         display: none;
1248 }
1249
1250 .search-failed.active {
1251         display: block;
1252 }
1253
1254 .search-failed > ul {
1255         text-align: left;
1256         max-width: 570px;
1257         margin-left: auto;
1258         margin-right: auto;
1259 }
1260
1261 #titles {
1262         height: 35px;
1263 }
1264
1265 #titles > button {
1266         float: left;
1267         width: 33.3%;
1268         text-align: center;
1269         font-size: 18px;
1270         cursor: pointer;
1271         border: 0;
1272         border-top: 2px solid;
1273 }
1274
1275 #titles > button:not(:last-child) {
1276         margin-right: 1px;
1277         width: calc(33.3% - 1px);
1278 }
1279
1280 #titles > button > div.count {
1281         display: inline-block;
1282         font-size: 16px;
1283 }
1284
1285 .notable-traits {
1286         cursor: pointer;
1287         z-index: 2;
1288         margin-left: 5px;
1289 }
1290
1291 #all-types {
1292         text-align: center;
1293         border: 1px solid;
1294         margin: 0 10px;
1295         margin-bottom: 10px;
1296         display: block;
1297         border-radius: 7px;
1298 }
1299 #all-types > p {
1300         margin: 5px 0;
1301 }
1302
1303 #sidebar-toggle {
1304         position: fixed;
1305         top: 30px;
1306         left: 300px;
1307         z-index: 10;
1308         padding: 3px;
1309         border-top-right-radius: 3px;
1310         border-bottom-right-radius: 3px;
1311         cursor: pointer;
1312         font-weight: bold;
1313         transition: left .5s;
1314         font-size: 1.2em;
1315         border: 1px solid;
1316         border-left: 0;
1317 }
1318 #source-sidebar {
1319         position: fixed;
1320         top: 0;
1321         bottom: 0;
1322         left: 0;
1323         width: 300px;
1324         z-index: 1;
1325         overflow: auto;
1326         transition: left .5s;
1327         border-right: 1px solid;
1328 }
1329 #source-sidebar > .title {
1330         font-size: 1.5em;
1331         text-align: center;
1332         border-bottom: 1px solid;
1333         margin-bottom: 6px;
1334 }
1335
1336 .theme-picker {
1337         position: absolute;
1338         left: 211px;
1339         top: 19px;
1340 }
1341
1342 .theme-picker button {
1343         outline: none;
1344 }
1345
1346 #settings-menu, #help-button {
1347         position: absolute;
1348         top: 10px;
1349 }
1350
1351 #settings-menu {
1352         right: 0;
1353         outline: none;
1354 }
1355
1356 #theme-picker, #settings-menu, #help-button, #copy-path {
1357         padding: 4px;
1358         width: 27px;
1359         height: 29px;
1360         border: 1px solid;
1361         border-radius: 3px;
1362         cursor: pointer;
1363 }
1364
1365 #help-button {
1366         right: 30px;
1367         font-family: "Fira Sans", Arial, sans-serif;
1368         text-align: center;
1369         font-size: 17px;
1370         padding-top: 2px;
1371 }
1372
1373 #copy-path {
1374         background: initial;
1375         margin-left: 10px;
1376         padding: 0;
1377         padding-left: 2px;
1378         border: 0;
1379 }
1380
1381 #theme-choices {
1382         display: none;
1383         position: absolute;
1384         left: 0;
1385         top: 28px;
1386         border: 1px solid;
1387         border-radius: 3px;
1388         z-index: 1;
1389         cursor: pointer;
1390 }
1391
1392 #theme-choices > button {
1393         border: none;
1394         width: 100%;
1395         padding: 4px 8px;
1396         text-align: center;
1397         background: rgba(0,0,0,0);
1398 }
1399
1400 #theme-choices > button:not(:first-child) {
1401         border-top: 1px solid;
1402 }
1403
1404 kbd {
1405         display: inline-block;
1406         padding: 3px 5px;
1407         font: 15px monospace;
1408         line-height: 10px;
1409         vertical-align: middle;
1410         border: solid 1px;
1411         border-radius: 3px;
1412         box-shadow: inset 0 -1px 0;
1413         cursor: default;
1414 }
1415
1416 .hidden-by-impl-hider,
1417 .hidden-by-usual-hider {
1418         /* important because of conflicting rule for small screens */
1419         display: none !important;
1420 }
1421
1422 #implementations-list > h3 > span.in-band {
1423         width: 100%;
1424 }
1425
1426 .table-display {
1427         width: 100%;
1428         border: 0;
1429         border-collapse: collapse;
1430         border-spacing: 0;
1431         font-size: 16px;
1432 }
1433
1434 .table-display tr td:first-child {
1435         padding-right: 0;
1436 }
1437
1438 .table-display tr td:last-child {
1439         float: right;
1440 }
1441 .table-display .out-of-band {
1442         position: relative;
1443         font-size: 19px;
1444         display: block;
1445 }
1446 #implementors-list > .impl-items .table-display .out-of-band {
1447         font-size: 17px;
1448 }
1449
1450 .table-display td:hover .anchor {
1451         display: block;
1452         top: 2px;
1453         left: -5px;
1454 }
1455
1456 #main > ul {
1457         padding-left: 10px;
1458 }
1459 #main > ul > li {
1460         list-style: none;
1461 }
1462
1463 .non-exhaustive {
1464         margin-bottom: 1em;
1465 }
1466
1467 div.children {
1468         padding-left: 27px;
1469         display: none;
1470 }
1471 div.name {
1472         cursor: pointer;
1473         position: relative;
1474         margin-left: 16px;
1475 }
1476 div.files > a {
1477         display: block;
1478         padding: 0 3px;
1479 }
1480 div.files > a:hover, div.name:hover {
1481         background-color: #a14b4b;
1482 }
1483 div.name.expand + .children {
1484         display: block;
1485 }
1486 div.name::before {
1487         content: "\25B6";
1488         padding-left: 4px;
1489         font-size: 0.7em;
1490         position: absolute;
1491         left: -16px;
1492         top: 4px;
1493 }
1494 div.name.expand::before {
1495         transform: rotate(90deg);
1496         left: -15px;
1497         top: 2px;
1498 }
1499
1500 /* The hideme class is used on summary tags that contain a span with
1501         placeholder text shown only when the toggle is closed. For instance,
1502         "Expand description" or "Show methods". */
1503 details.rustdoc-toggle > summary.hideme {
1504         cursor: pointer;
1505 }
1506
1507 details.rustdoc-toggle > summary, details.undocumented > summary {
1508         list-style: none;
1509 }
1510 details.rustdoc-toggle > summary::-webkit-details-marker,
1511 details.rustdoc-toggle > summary::marker,
1512 details.undocumented > summary::-webkit-details-marker,
1513 details.undocumented > summary::marker {
1514         display: none;
1515 }
1516
1517 details.rustdoc-toggle > summary.hideme > span {
1518         margin-left: 9px;
1519 }
1520
1521 details.rustdoc-toggle > summary::before {
1522         content: "";
1523         cursor: pointer;
1524         width: 17px;
1525         height: max(17px, 1.1em);
1526         background-repeat: no-repeat;
1527         background-position: top left;
1528         display: inline-block;
1529         vertical-align: middle;
1530         opacity: .5;
1531 }
1532
1533 /* Screen readers see the text version at the end the line.
1534         Visual readers see the icon at the start of the line, but small and transparent. */
1535 details.rustdoc-toggle > summary::after {
1536         content: "Expand";
1537         overflow: hidden;
1538         width: 0;
1539         height: 0;
1540         position: absolute;
1541 }
1542
1543 details.rustdoc-toggle > summary.hideme::after {
1544         /* "hideme" toggles already have a description when they're contracted */
1545         content: "";
1546 }
1547
1548 details.rustdoc-toggle > summary:focus::before,
1549 details.rustdoc-toggle > summary:hover::before {
1550         opacity: 1;
1551 }
1552
1553 details.rustdoc-toggle.top-doc > summary,
1554 details.rustdoc-toggle.top-doc > summary::before,
1555 details.rustdoc-toggle.non-exhaustive > summary,
1556 details.rustdoc-toggle.non-exhaustive > summary::before {
1557         font-family: 'Fira Sans';
1558         font-size: 16px;
1559 }
1560
1561 details.non-exhaustive {
1562         margin-bottom: 8px;
1563 }
1564
1565 details.rustdoc-toggle > summary.hideme::before {
1566         position: relative;
1567 }
1568
1569 details.rustdoc-toggle > summary:not(.hideme)::before {
1570         position: absolute;
1571         left: -23px;
1572         top: 3px;
1573 }
1574
1575 .impl-items > details.rustdoc-toggle > summary:not(.hideme)::before,
1576 .undocumented > details.rustdoc-toggle > summary:not(.hideme)::before {
1577         position: absolute;
1578         left: -2px;
1579 }
1580
1581 /* When a "hideme" summary is open and the "Expand description" or "Show
1582         methods" text is hidden, we want the [-] toggle that remains to not
1583         affect the layout of the items to its right. To do that, we use
1584         absolute positioning. Note that we also set position: relative
1585         on the parent <details> to make this work properly. */
1586 details.rustdoc-toggle[open] > summary.hideme {
1587         position: absolute;
1588 }
1589
1590 details.rustdoc-toggle, details.undocumented {
1591         position: relative;
1592 }
1593
1594 details.rustdoc-toggle[open] > summary.hideme > span {
1595         display: none;
1596 }
1597
1598 details.rustdoc-toggle[open] > summary::before,
1599 details.rustdoc-toggle[open] > summary.hideme::before {
1600         width: 17px;
1601         height: max(17px, 1.1em);
1602         background-repeat: no-repeat;
1603         background-position: top left;
1604         display: inline-block;
1605         content: "";
1606 }
1607
1608 details.rustdoc-toggle[open] > summary::after,
1609 details.rustdoc-toggle[open] > summary.hideme::after {
1610         content: "Collapse";
1611 }
1612
1613 details.undocumented > summary::before {
1614         padding-left: 17px;
1615         height: max(17px, 1.1em);
1616         background-repeat: no-repeat;
1617         background-position: top left;
1618         content: "Show hidden undocumented items";
1619         cursor: pointer;
1620         font-size: 16px;
1621         font-weight: 300;
1622         opacity: .5;
1623 }
1624
1625 details.undocumented > summary:focus::before,
1626 details.undocumented > summary:hover::before {
1627         opacity: 1;
1628 }
1629
1630 details.undocumented[open] > summary::before {
1631         padding-left: 17px;
1632         height: max(17px, 1.1em);
1633         background-repeat: no-repeat
1634         background-position: top left;
1635         content: "Hide undocumented items";
1636 }
1637
1638 /* Media Queries */
1639
1640 @media (min-width: 701px) {
1641         /* In case there is no documentation before a code block, we need to add some margin at the top
1642         to prevent an overlay between the "collapse toggle" and the information tooltip.
1643         However, it's not needed with smaller screen width because the doc/code block is always put
1644         "one line" below. */
1645         .docblock > .information:first-child > .tooltip {
1646                 margin-top: 16px;
1647         }
1648 }
1649
1650 @media (max-width: 700px) {
1651         body {
1652                 padding-top: 0px;
1653         }
1654
1655         .rustdoc > .sidebar {
1656                 height: 45px;
1657                 min-height: 40px;
1658                 margin: 0;
1659                 margin-left: -15px;
1660                 padding: 0 15px;
1661                 position: static;
1662                 z-index: 11;
1663         }
1664
1665         .sidebar > .location {
1666                 float: right;
1667                 margin: 0px;
1668                 margin-top: 2px;
1669                 padding: 3px 10px 1px 10px;
1670                 min-height: 39px;
1671                 background: inherit;
1672                 text-align: left;
1673                 font-size: 24px;
1674         }
1675
1676         .sidebar .location:empty {
1677                 padding: 0;
1678         }
1679
1680         .sidebar .logo-container {
1681                 width: 35px;
1682                 height: 35px;
1683                 margin-top: 5px;
1684                 margin-bottom: 5px;
1685                 float: left;
1686                 margin-left: 50px;
1687         }
1688
1689         .sidebar .logo-container > img {
1690                 max-width: 35px;
1691                 max-height: 35px;
1692         }
1693
1694         .sidebar-menu {
1695                 position: fixed;
1696                 z-index: 10;
1697                 font-size: 2rem;
1698                 cursor: pointer;
1699                 width: 45px;
1700                 left: 0;
1701                 text-align: center;
1702                 display: block;
1703                 border-bottom: 1px solid;
1704                 border-right: 1px solid;
1705                 height: 45px;
1706         }
1707
1708         .rustdoc.source > .sidebar > .sidebar-menu {
1709                 display: none;
1710         }
1711
1712         /* We do NOT hide this element so that alternative device readers still have this information
1713            available. */
1714         .sidebar-elems {
1715                 position: fixed;
1716                 z-index: 1;
1717                 top: 45px;
1718                 bottom: 0;
1719                 width: 246px;
1720                 /* We move the sidebar to the left by its own width so it doesn't appear. */
1721                 left: -246px;
1722                 overflow-y: auto;
1723                 border-right: 1px solid;
1724         }
1725
1726         .sidebar > .block.version {
1727                 overflow: hidden;
1728                 border-bottom: none;
1729                 margin-bottom: 0;
1730                 height: 100%;
1731                 padding-left: 12px;
1732         }
1733         .sidebar > .block.version > div.narrow-helper {
1734                 float: left;
1735                 width: 1px;
1736                 height: 100%;
1737         }
1738         .sidebar > .block.version > p {
1739                 /* hide Version text if too narrow */
1740                 margin: 0;
1741                 min-width: 55px;
1742                 /* vertically center */
1743                 display: flex;
1744                 align-items: center;
1745                 height: 100%;
1746         }
1747
1748         nav.sub {
1749                 width: calc(100% - 32px);
1750                 float: right;
1751         }
1752
1753         .content {
1754                 margin-left: 0px;
1755         }
1756
1757         #main, #search {
1758                 margin-top: 45px;
1759                 padding: 0;
1760         }
1761
1762         #search {
1763                 margin-left: 0;
1764         }
1765
1766         .anchor {
1767                 display: none !important;
1768         }
1769
1770         .theme-picker {
1771                 left: 10px;
1772                 top: 54px;
1773                 z-index: 1;
1774         }
1775
1776         .notable-traits {
1777                 position: absolute;
1778                 left: -22px;
1779                 top: 24px;
1780         }
1781
1782         #titles > button > div.count {
1783                 float: left;
1784                 width: 100%;
1785         }
1786
1787         #titles {
1788                 height: 50px;
1789         }
1790
1791         .sidebar.mobile {
1792                 position: fixed;
1793                 width: 100%;
1794                 margin-left: 0;
1795                 background-color: rgba(0,0,0,0);
1796                 height: 100%;
1797         }
1798         /*
1799         This allows to prevent the version text to overflow the sidebar title on mobile mode when the
1800         sidebar is displayed (after clicking on the "hamburger" button).
1801         */
1802         .sidebar.mobile > div.version {
1803                 overflow: hidden;
1804                 max-height: 33px;
1805         }
1806         .sidebar {
1807                 width: calc(100% + 30px);
1808         }
1809
1810         .show-it, .sidebar-elems:focus-within {
1811                 z-index:  2;
1812                 left: 0;
1813         }
1814
1815         .show-it > .block.items {
1816                 margin: 8px 0;
1817         }
1818
1819         .show-it > .block.items > ul {
1820                 margin: 0;
1821         }
1822
1823         .show-it > .block.items > ul > li {
1824                 text-align: center;
1825                 margin: 2px 0;
1826         }
1827
1828         .show-it > .block.items > ul > li > a {
1829                 font-size: 21px;
1830         }
1831
1832         /* Because of ios, we need to actually have a full height sidebar title so the
1833          * actual sidebar can show up. But then we need to make it transparent so we don't
1834          * hide content. The filler just allows to create the background for the sidebar
1835          * title. But because of the absolute position, I had to lower the z-index.
1836          */
1837         #sidebar-filler {
1838                 position: fixed;
1839                 left: 45px;
1840                 width: calc(100% - 45px);
1841                 top: 0;
1842                 height: 45px;
1843                 z-index: -1;
1844                 border-bottom: 1px solid;
1845         }
1846
1847         #main > details.rustdoc-toggle > summary::before,
1848         #main > div > details.rustdoc-toggle > summary::before {
1849                 left: -11px;
1850         }
1851
1852         #all-types {
1853                 margin: 10px;
1854         }
1855
1856         #sidebar-toggle {
1857                 top: 100px;
1858                 width: 30px;
1859                 font-size: 1.5rem;
1860                 text-align: center;
1861                 padding: 0;
1862         }
1863
1864         #source-sidebar {
1865                 z-index: 11;
1866         }
1867
1868         #main > .line-numbers {
1869                 margin-top: 0;
1870         }
1871
1872         .notable-traits .notable-traits-tooltiptext {
1873                 left: 0;
1874                 top: 100%;
1875         }
1876
1877         /* We don't display the help button on mobile devices. */
1878         #help-button {
1879                 display: none;
1880         }
1881
1882         /* Display an alternating layout on tablets and phones */
1883         .item-table {
1884                 display: block;
1885         }
1886         .item-row {
1887                 display: flex;
1888                 flex-flow: column wrap;
1889         }
1890         .item-left, .item-right {
1891                 width: 100%;
1892         }
1893
1894         .search-container > div {
1895                 width: calc(100% - 32px);
1896         }
1897
1898         /* Display an alternating layout on tablets and phones */
1899         .search-results > a {
1900                 border-bottom: 1px solid #aaa9;
1901                 padding: 5px 0px;
1902         }
1903         .search-results .result-name, .search-results div.desc, .search-results .result-description {
1904                 width: 100%;
1905         }
1906         .search-results div.desc, .search-results .result-description, .item-right {
1907                 padding-left: 2em;
1908         }
1909 }
1910
1911 @media print {
1912         nav.sub, .content .out-of-band {
1913                 display: none;
1914         }
1915 }
1916
1917 @media (max-width: 464px) {
1918         #titles, #titles > button {
1919                 height: 73px;
1920         }
1921
1922         /* This is to prevent the search bar from being underneath the <section>
1923          * element following it.
1924          */
1925         #main, #search {
1926                 margin-top: 100px;
1927         }
1928
1929         #main > table:not(.table-display) td {
1930                 word-break: break-word;
1931                 width: 50%;
1932         }
1933
1934         .search-container > div {
1935                 display: block;
1936                 width: calc(100% - 37px);
1937         }
1938
1939         #crate-search {
1940                 width: 100%;
1941                 border-radius: 4px;
1942                 border: 0;
1943         }
1944
1945         #crate-search + .search-input {
1946                 width: calc(100% + 71px);
1947                 margin-left: -36px;
1948         }
1949
1950         #theme-picker, #settings-menu {
1951                 padding: 5px;
1952                 width: 31px;
1953                 height: 31px;
1954         }
1955
1956         #theme-picker {
1957                 margin-top: -2px;
1958         }
1959
1960         #settings-menu {
1961                 top: 7px;
1962         }
1963
1964         .docblock {
1965                 margin-left: 12px;
1966         }
1967
1968         .docblock code {
1969                 overflow-wrap: anywhere;
1970         }
1971 }