1 /* See FiraSans-LICENSE.txt for the Fira Sans license. */
3 font-family: 'Fira Sans';
6 src: local('Fira Sans'),
7 url("FiraSans-Regular.woff2") format("woff2"),
8 url("FiraSans-Regular.woff") format('woff');
12 font-family: 'Fira Sans';
15 src: local('Fira Sans Medium'),
16 url("FiraSans-Medium.woff2") format("woff2"),
17 url("FiraSans-Medium.woff") format('woff');
21 /* See SourceSerif4-LICENSE.md for the Source Serif 4 license. */
23 font-family: 'Source Serif 4';
26 src: local('Source Serif 4'),
27 url("SourceSerif4-Regular.ttf.woff2") format("woff2"),
28 url("SourceSerif4-Regular.ttf.woff") format("woff");
32 font-family: 'Source Serif 4';
35 src: local('Source Serif 4 Italic'),
36 url("SourceSerif4-It.ttf.woff2") format("woff2"),
37 url("SourceSerif4-It.ttf.woff") format("woff");
41 font-family: 'Source Serif 4';
44 src: local('Source Serif 4 Bold'),
45 url("SourceSerif4-Bold.ttf.woff2") format("woff2"),
46 url("SourceSerif4-Bold.ttf.woff") format("woff");
50 /* See SourceCodePro-LICENSE.txt for the Source Code Pro license. */
52 font-family: 'Source Code Pro';
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");
62 font-family: 'Source Code Pro';
65 src: url("SourceCodePro-It.ttf.woff2") format("woff2"),
66 url("SourceCodePro-It.ttf.woff") format("woff");
70 font-family: 'Source Code Pro';
73 src: url("SourceCodePro-Semibold.ttf.woff2") format("woff2"),
74 url("SourceCodePro-Semibold.ttf.woff") format("woff");
78 /* Avoid using legacy CJK serif fonts in Windows like Batang. */
80 font-family: 'NanumBarunGothic';
81 src: url("NanumBarunGothic.ttf.woff2") format("woff2"),
82 url("NanumBarunGothic.ttf.woff") format("woff");
84 unicode-range: U+AC00-D7AF, U+1100-11FF, U+3130-318F, U+A960-A97F, U+D7B0-D7FF;
88 -webkit-box-sizing: border-box;
89 -moz-box-sizing: border-box;
90 box-sizing: border-box;
93 /* This part handles the "default" theme being used depending on the system one. */
97 @media (prefers-color-scheme: light) {
102 @media (prefers-color-scheme: dark) {
108 /* General structure and fonts */
111 font: 1rem/1.4 "Source Serif 4", NanumBarunGothic, serif;
115 -webkit-font-feature-settings: "kern", "liga";
116 -moz-font-feature-settings: "kern", "liga";
117 font-feature-settings: "kern", "liga";
129 h1, h2, h3, h4, h5, h6 {
133 margin: 20px 0 15px 0;
136 .docblock h3, .docblock h4, h5, h6 {
137 margin: 15px 0 5px 0;
141 border-bottom: 1px dashed;
144 /* workaround to keep flex from breaking below 700 px width due to the float: right on the nav
148 h1.fqn > .in-band > a:hover {
149 text-decoration: underline;
151 /* The only headings that get underlines are:
152 Markdown-generated headings within the top-doc
153 Rustdoc-generated h2 section headings (e.g. "Implementations", "Required Methods", etc)
154 Underlines elsewhere in the documentation break up visual flow and tend to invert
155 section hierarchies. */
159 .sidebar .others h3 {
160 border-bottom: 1px solid;
168 h3.code-header, h4.code-header {
170 border-bottom-style: none;
179 .impl-items .associatedconstant,
180 .methods .associatedconstant,
181 .impl-items .associatedtype,
182 .methods .associatedtype {
190 div.impl-items > div {
194 h1, h2, h3, h4, h5, h6,
195 .sidebar, a.source, .search-input, .search-results .result-name,
196 .content table td:first-child > a,
198 div.item-list .out-of-band, span.since,
199 #source-sidebar, #sidebar-toggle,
200 details.rustdoc-toggle > summary::before,
201 div.impl-items > div:not(.docblock):not(.item-info),
202 .content ul.crate a.crate, a.srclink,
203 /* This selector is for the items listed in the "all items" page. */
204 #main-content > ul.docblock > li > a {
205 font-family: "Fira Sans", Arial, NanumBarunGothic, sans-serif;
208 .content ul.crate a.crate {
215 ul ul, ol ul, ul ol, ol ol {
227 /* Fix some style changes due to normalize.css 8 */
235 border-collapse: collapse;
248 /* end tweaks for normalize.css 8 */
259 padding: 10px 15px 40px 45px;
272 .source .width-limiter {
276 details:not(.rustdoc-toggle) summary {
280 code, pre, a.test-arrow, .code-header {
281 font-family: "Source Code Pro", monospace;
283 .docblock code, .docblock-short code {
287 .docblock pre code, .docblock-short pre code {
293 .docblock.item-decl {
300 .source .content pre {
321 text-transform: uppercase;
330 .sub-logo-container {
335 .source .sub-logo-container {
339 .source .sub-logo-container > img {
355 .rustdoc.source .sidebar {
362 border-right: 1px solid;
364 /* The sidebar is by default hidden */
368 .source .sidebar > *:not(:first-child) {
369 transition: opacity 0.5s, visibility 0.2s;
374 .source .sidebar.expanded {
378 .source .sidebar.expanded > * {
383 /* Improve the scrollbar display on firefox */
385 scrollbar-width: initial;
388 scrollbar-width: thin;
391 /* Improve the scrollbar display on webkit-based browsers */
392 ::-webkit-scrollbar {
395 .sidebar::-webkit-scrollbar {
398 ::-webkit-scrollbar-track {
399 -webkit-box-shadow: inset 0;
402 .sidebar .block > ul > li {
406 /* Everything else */
409 display: none !important;
416 justify-content: center;
419 .logo-container > img {
426 font-size: 1.0625rem;
427 margin: 30px 10px 20px 10px;
429 word-wrap: break-word;
430 font-weight: inherit;
435 font-size: 0.9375rem;
437 border-bottom: 1px solid;
438 overflow-wrap: break-word;
439 word-wrap: break-word; /* deprecated */
440 word-break: break-word; /* Chrome, non-standard */
447 .location a:first-of-type {
451 text-decoration: underline;
458 .block h2, .block h3 {
461 .block ul, .block li {
469 text-overflow: ellipsis;
475 transition: border 500ms ease-out;
479 border-top: 1px solid;
480 border-bottom: 1px solid;
482 font-size: 1.0625rem;
484 font-weight: inherit;
501 .source .content pre.rust {
507 .rustdoc .example-wrap {
508 display: inline-flex;
517 .example-wrap > pre.line-number {
522 border-top-left-radius: 5px;
523 border-bottom-left-radius: 5px;
526 .example-wrap > pre.rust a:hover {
527 text-decoration: underline;
530 .rustdoc:not(.source) .example-wrap > pre:not(.line-number) {
535 .rustdoc:not(.source) .example-wrap > pre.line-numbers {
540 .rustdoc .example-wrap > pre {
553 .content > .example-wrap pre.line-numbers {
555 -webkit-user-select: none;
556 -moz-user-select: none;
557 -ms-user-select: none;
565 overflow-wrap: anywhere;
573 text-overflow: ellipsis;
576 /* Wrap non-pre code blocks (`text`) but not (```text```). */
577 .docblock > :not(pre) > code,
578 .docblock-short > :not(pre) > code {
579 white-space: pre-wrap;
582 .top-doc .docblock h2 { font-size: 1.3rem; }
583 .top-doc .docblock h3 { font-size: 1.15rem; }
584 .top-doc .docblock h4,
585 .top-doc .docblock h5 {
588 .top-doc .docblock h6 {
592 .docblock h5 { font-size: 1rem; }
593 .docblock h6 { font-size: 0.95rem; }
600 .docblock > :not(.information) {
605 .content .out-of-band {
608 font-size: 1.4375rem;
614 .method > .code-header, .trait-impl > .code-header, .invisible > .code-header {
615 max-width: calc(100% - 41px);
621 display: inline-block;
628 overflow-wrap: anywhere;
631 .in-band > code, .in-band > .code-header {
632 display: inline-block;
638 #main-content > .since {
640 font-family: "Fira Sans", Arial, sans-serif;
643 .content table:not(.table-display) {
644 border-spacing: 0 5px;
646 .content td { vertical-align: top; }
647 .content td:first-child { padding-right: 20px; }
648 .content td p:first-child { margin-top: 0; }
649 .content td h1, .content td h2 { margin-left: 0; font-size: 1.1rem; }
650 .content tr:first-child td { border-top: 0; }
654 width: calc(100% - 2px);
674 .content .item-list {
675 list-style-type: none;
679 .content .multi-column {
680 -moz-column-count: 5;
681 -moz-column-gap: 2.5em;
682 -webkit-column-count: 5;
683 -webkit-column-gap: 2.5em;
687 .content .multi-column li { width: 100%; display: inline-block; }
689 .content > .methods > .method {
693 /* Shift "where ..." part of method or fn definition down a line */
694 .content .method .where,
696 .content .where.fmt-newline {
701 .content .methods > div:not(.notable-traits):not(.method) {
706 .content .docblock > .impl-items {
710 .content .docblock >.impl-items .table-display {
713 .content .docblock >.impl-items table td {
716 .content .docblock > .impl-items .table-display, .impl-items table td {
720 .content .item-info code {
724 .content .item-info {
729 .sub-variant > div > .item-info {
733 .content .item-info::before {
735 font-size: 1.5625rem;
741 .content .impl-items .docblock, .content .impl-items .item-info {
745 .content .impl-items > .item-info {
749 .methods > .item-info, .content .impl-items > .item-info {
757 #main-content > .item-info {
763 border-bottom: 1px solid;
764 padding-bottom: 10px;
767 .source nav:not(.sidebar).sub {
775 border-top: 1px solid;
776 border-bottom: 1px solid;
778 nav.main .separator {
780 display: inline-block;
784 nav.sum { text-align: right; }
785 nav.sub form { display: inline; }
788 text-decoration: none;
789 background: transparent;
792 .small-section-header {
794 justify-content: space-between;
798 .small-section-header:hover > .anchor {
802 .in-band:hover > .anchor, .impl:hover > .anchor, .method.trait-impl:hover > .anchor,
803 .type.trait-impl:hover > .anchor, .associatedconstant.trait-impl:hover > .anchor,
804 .associatedtype.trait-impl:hover > .anchor {
805 display: inline-block;
812 background: none !important;
817 .small-section-header > .anchor {
821 h2.small-section-header > .anchor {
828 .docblock a:not(.srclink):not(.test-arrow):hover,
829 .docblock-short a:not(.srclink):not(.test-arrow):hover, .item-info a {
830 text-decoration: underline;
833 .invisible > .srclink,
834 .method > .code-header + .srclink {
838 font-size: 1.0625rem;
842 .block a.current.crate { font-weight: 500; }
850 .item-left, .item-right {
854 padding-right: 1.2rem;
861 .search-container > div {
862 display: inline-flex;
863 width: calc(100% - 63px);
873 border-radius: 4px 0 0 4px;
876 border-right: 1px solid;
877 -moz-appearance: none;
878 -webkit-appearance: none;
879 /* Removes default arrow from firefox */
882 background-repeat: no-repeat;
883 background-color: transparent;
884 background-size: 20px;
885 background-position: calc(100% - 1px) 56%;
886 background-image: /* AUTOREPLACE: */url("down-arrow.svg");
888 .search-container > .top-button {
894 /* Override Normalize.css: it has a rule that sets
895 -webkit-appearance: textfield for search inputs. That
896 causes rounded corners and no border on iOS Safari. */
897 -webkit-appearance: none;
898 /* Override Normalize.css: we have margins and do
899 not want to overflow - the `moz` attribute is necessary
900 until Firefox 29, too early to drop at this point */
901 -moz-box-sizing: border-box !important;
902 box-sizing: border-box !important;
908 font-size: 1.0625rem;
909 transition: border-color 300ms ease;
910 transition: border-radius 300ms ease-in-out;
911 transition: box-shadow 300ms ease-in-out;
915 #crate-search + .search-input {
916 border-radius: 0 1px 1px 0;
917 width: calc(100% - 32px);
920 .search-input:focus {
931 .search-results.active {
933 /* prevent overhanging tabs from moving the first result */
937 .search-results .desc > span {
939 text-overflow: ellipsis;
944 .search-results > a {
947 /* A little margin ensures the browser's outlining of focused links has room to display. */
950 border-bottom: 1px solid #aaa3;
953 .search-results > a > div {
958 .search-results .result-name, .search-results div.desc, .search-results .result-description {
961 .search-results .result-name {
965 .search-results .result-name > span {
966 display: inline-block;
971 body.blur > :not(#help) {
973 -webkit-filter: blur(8px);
984 justify-content: center;
989 box-shadow: 0 0 6px rgba(0,0,0,.2);
998 margin-right: 0.5rem;
1000 #help span.top, #help span.bottom {
1003 font-size: 1.125rem;
1010 border-bottom: 1px solid;
1011 padding-bottom: 4px;
1016 border-top: 1px solid;
1018 #help dd { margin: 5px 35px; }
1019 #help .infos { padding-left: 0; }
1020 #help h1, #help h2 { margin-top: 0; }
1024 padding: 0 20px 20px 17px;;
1034 font-weight: normal;
1044 /* Black one-pixel outline around emoji shapes */
1054 .import-item .stab {
1056 display: inline-block;
1062 vertical-align: text-bottom;
1065 .module-item.unstable,
1066 .import-item.unstable {
1071 font-weight: normal;
1075 .impl-items .since, .impl .since, .methods .since {
1081 .impl-items .srclink, .impl .srclink, .methods .srclink {
1082 /* Override header settings otherwise it's too bold */
1083 font-weight: normal;
1087 font-size: 1.0625rem;
1096 margin-bottom: 12px;
1097 /* Push the src link out to the right edge consistently */
1098 justify-content: space-between;
1105 .variants_table tbody tr td:first-child {
1106 width: 1%; /* make the variant name as small as possible */
1117 pre.rust .question-mark {
1122 display: inline-block;
1125 padding: 5px 10px 5px 10px;
1132 .example-wrap:hover .test-arrow {
1133 visibility: visible;
1136 text-decoration: none;
1138 .section-header:hover a:before {
1141 padding-right: 10px; /* avoid gap that causes hover to disappear */
1142 content: '\2002\00a7\2002';
1145 .section-header:hover a {
1146 text-decoration: none;
1162 .out-of-band > span.since {
1171 margin-bottom: 10px;
1172 border-bottom: none;
1178 border-bottom: none;
1185 margin-bottom: 40px;
1188 .sub-variant > .sub-variant-field {
1193 display: inline-block;
1198 .top-doc .docblock > .section-header:first-child {
1201 .top-doc .docblock > .section-header:first-child:hover > a:before {
1205 .docblock > .section-header:first-child {
1209 :target > code, :target > .code-header {
1226 display: inline-block;
1233 padding: 5px 3px 3px 3px;
1239 .tooltip.ignore::after {
1240 content: "This example is not tested";
1242 .tooltip.compile_fail::after {
1243 content: "This example deliberately fails to compile";
1245 .tooltip.should_panic::after {
1246 content: "This example panics";
1248 .tooltip.edition::after {
1249 content: "This code runs with edition " attr(data-edition);
1259 border-style: solid;
1263 .tooltip:hover::before, .tooltip:hover::after {
1267 .tooltip.compile_fail, .tooltip.should_panic, .tooltip.ignore {
1272 .notable-traits-tooltip {
1273 display: inline-block;
1277 .notable-traits:hover .notable-traits-tooltiptext,
1278 .notable-traits .notable-traits-tooltiptext.force-tooltip {
1279 display: inline-block;
1282 .notable-traits .notable-traits-tooltiptext {
1284 padding: 5px 3px 3px 3px;
1294 .notable-traits-tooltip::after {
1295 /* The margin on the tooltip does not capture hover events,
1296 this extends the area of hover enough so that mouse hover is not
1297 lost when moving the mouse to the tooltip */
1298 content: "\00a0\00a0\00a0";
1301 .notable-traits .notable, .notable-traits .docblock {
1305 .notable-traits .notable {
1307 margin-bottom: 13px;
1308 font-size: 1.1875rem;
1312 .notable-traits .docblock code.content{
1318 /* Example code has the "Run" button that needs to be positioned relative to the pre */
1319 pre.rust.rust-example-rendered {
1334 .search-failed.active {
1338 .search-failed > ul {
1353 font-size: 1.125rem;
1356 border-top: 2px solid;
1359 #titles > button:not(:last-child) {
1361 width: calc(33.3% - 1px);
1364 #titles > button > div.count {
1365 display: inline-block;
1379 margin-bottom: 10px;
1394 border-bottom: 1px solid;
1397 justify-content: center;
1398 align-items: center;
1406 #source-sidebar > .title {
1409 border-bottom: 1px solid;
1419 .theme-picker button {
1423 #settings-menu, #help-button {
1433 #theme-picker, #settings-menu, #help-button, #copy-path {
1435 /* Rare exception to specifying font sizes in rem. Since these are acting
1436 as icons, it's okay to specify their sizes in pixels. */
1447 font-family: "Fira Sans", Arial, sans-serif;
1449 /* Rare exception to specifying font sizes in rem. Since this is acting
1450 as an icon, it's okay to specify their sizes in pixels. */
1456 background: initial;
1474 #theme-choices > button {
1479 background: rgba(0,0,0,0);
1482 #theme-choices > button:not(:first-child) {
1483 border-top: 1px solid;
1487 display: inline-block;
1489 font: 15px monospace;
1491 vertical-align: middle;
1494 box-shadow: inset 0 -1px 0;
1498 .hidden-by-impl-hider,
1499 .hidden-by-usual-hider {
1500 /* important because of conflicting rule for small screens */
1501 display: none !important;
1504 #implementations-list > h3 > span.in-band {
1511 border-collapse: collapse;
1516 .table-display tr td:first-child {
1520 .table-display tr td:last-child {
1523 .table-display .out-of-band {
1525 font-size: 1.1875rem;
1528 #implementors-list > .impl-items .table-display .out-of-band {
1529 font-size: 1.0625rem;
1532 .table-display td:hover .anchor {
1538 #main-content > ul {
1541 #main-content > ul > li {
1562 div.files > a:hover, div.name:hover {
1563 background-color: #a14b4b;
1565 div.name.expand + .children {
1576 div.name.expand::before {
1577 transform: rotate(90deg);
1582 /* The hideme class is used on summary tags that contain a span with
1583 placeholder text shown only when the toggle is closed. For instance,
1584 "Expand description" or "Show methods". */
1585 details.rustdoc-toggle > summary.hideme {
1589 details.rustdoc-toggle > summary {
1592 details.rustdoc-toggle > summary::-webkit-details-marker,
1593 details.rustdoc-toggle > summary::marker {
1597 details.rustdoc-toggle > summary.hideme > span {
1601 details.rustdoc-toggle > summary::before {
1605 height: max(17px, 1.1em);
1606 background-repeat: no-repeat;
1607 background-position: top left;
1608 display: inline-block;
1609 vertical-align: middle;
1613 /* Screen readers see the text version at the end the line.
1614 Visual readers see the icon at the start of the line, but small and transparent. */
1615 details.rustdoc-toggle > summary::after {
1623 details.rustdoc-toggle > summary.hideme::after {
1624 /* "hideme" toggles already have a description when they're contracted */
1628 details.rustdoc-toggle > summary:focus::before,
1629 details.rustdoc-toggle > summary:hover::before {
1633 details.rustdoc-toggle.top-doc > summary,
1634 details.rustdoc-toggle.top-doc > summary::before,
1635 details.rustdoc-toggle.non-exhaustive > summary,
1636 details.rustdoc-toggle.non-exhaustive > summary::before {
1637 font-family: 'Fira Sans';
1641 details.non-exhaustive {
1645 details.rustdoc-toggle > summary.hideme::before {
1649 details.rustdoc-toggle > summary:not(.hideme)::before {
1655 .impl-items > details.rustdoc-toggle > summary:not(.hideme)::before {
1660 /* When a "hideme" summary is open and the "Expand description" or "Show
1661 methods" text is hidden, we want the [-] toggle that remains to not
1662 affect the layout of the items to its right. To do that, we use
1663 absolute positioning. Note that we also set position: relative
1664 on the parent <details> to make this work properly. */
1665 details.rustdoc-toggle[open] > summary.hideme {
1669 details.rustdoc-toggle {
1673 details.rustdoc-toggle[open] > summary.hideme > span {
1677 details.undocumented[open] > summary::before,
1678 details.rustdoc-toggle[open] > summary::before,
1679 details.rustdoc-toggle[open] > summary.hideme::before {
1680 background-image: /* AUTOREPLACE: */url("toggle-minus.svg");
1683 details.undocumented > summary::before, details.rustdoc-toggle > summary::before {
1684 background-image: /* AUTOREPLACE: */url("toggle-plus.svg");
1687 details.rustdoc-toggle[open] > summary::before,
1688 details.rustdoc-toggle[open] > summary.hideme::before {
1690 height: max(17px, 1.1em);
1691 background-repeat: no-repeat;
1692 background-position: top left;
1693 display: inline-block;
1697 details.rustdoc-toggle[open] > summary::after,
1698 details.rustdoc-toggle[open] > summary.hideme::after {
1699 content: "Collapse";
1704 @media (min-width: 701px) {
1705 /* In case there is no documentation before a code block, we need to add some margin at the top
1706 to prevent an overlay between the "collapse toggle" and the information tooltip.
1707 However, it's not needed with smaller screen width because the doc/code block is always put
1708 "one line" below. */
1709 .docblock > .information:first-child > .tooltip {
1713 /* When we expand the sidebar on the source code page, we hide the logo on the left of the
1714 search bar to have more space. */
1715 .sidebar.expanded + main .width-limiter .sub-logo-container.rust-logo {
1719 /* It doesn't render well on mobile because of the layout, so better only have the transition
1721 .rustdoc.source .sidebar {
1722 transition: width .5s;
1725 .source .sidebar.expanded {
1730 @media (max-width: 700px) {
1741 flex-direction: column;
1744 .rustdoc:not(.source) > .sidebar {
1756 .rustdoc.source > .sidebar {
1766 position: sticky !important;
1771 background-color: rgba(0,0,0,0);
1774 .sidebar > .location {
1778 padding: 3px 10px 1px 10px;
1780 background: inherit;
1785 .sidebar .location:empty {
1789 .rustdoc:not(.source) .sidebar .logo-container {
1798 .sidebar .logo-container > img {
1813 border-bottom: 1px solid;
1814 border-right: 1px solid;
1818 .rustdoc.source > .sidebar > .sidebar-menu {
1822 /* We do NOT hide this element so that alternative device readers still have this information
1830 /* We move the sidebar to the left by its own width so it doesn't appear. */
1833 border-right: 1px solid;
1836 .sidebar > .block.version {
1838 border-bottom: none;
1843 .sidebar > .block.version > div.narrow-helper {
1848 .sidebar > .block.version > p {
1849 /* hide Version text if too narrow */
1852 /* vertically center */
1854 align-items: center;
1859 width: calc(100% - 32px);
1861 margin-bottom: 10px;
1864 .source nav:not(.sidebar).sub {
1882 display: none !important;
1895 #titles > button > div.count {
1904 .show-it, .sidebar-elems:focus-within {
1909 .show-it > .block.items {
1913 .show-it > .block.items > ul {
1917 .show-it > .block.items > ul > li {
1922 .show-it > .block.items > ul > li > a {
1923 font-size: 1.3125rem;
1926 /* Because of ios, we need to actually have a full height sidebar title so the
1927 * actual sidebar can show up. But then we need to make it transparent so we don't
1928 * hide content. The filler just allows to create the background for the sidebar
1929 * title. But because of the absolute position, I had to lower the z-index.
1934 width: calc(100% - 45px);
1938 border-bottom: 1px solid;
1941 #main-content > details.rustdoc-toggle > summary::before,
1942 #main-content > div > details.rustdoc-toggle > summary::before {
1950 .sidebar.expanded #sidebar-toggle {
1954 .sidebar:not(.expanded) #sidebar-toggle {
1963 border-top-right-radius: 3px;
1964 border-bottom-right-radius: 3px;
1975 #main-content > .line-numbers {
1979 .notable-traits .notable-traits-tooltiptext {
1984 /* We don't display the help button on mobile devices. */
1989 /* Display an alternating layout on tablets and phones */
1995 flex-flow: column wrap;
1997 .item-left, .item-right {
2001 .search-container > div {
2002 width: calc(100% - 32px);
2005 /* Display an alternating layout on tablets and phones */
2006 .search-results > a {
2007 border-bottom: 1px solid #aaa9;
2010 .search-results .result-name, .search-results div.desc, .search-results .result-description {
2013 .search-results div.desc, .search-results .result-description, .item-right {
2017 .source .sidebar.expanded {
2022 /* Position of the "[-]" element. */
2023 details.rustdoc-toggle:not(.top-doc) > summary {
2026 .impl-items > details.rustdoc-toggle > summary:not(.hideme)::before,
2027 #main-content > details.rustdoc-toggle:not(.top-doc) > summary::before,
2028 #main-content > div > details.rustdoc-toggle > summary::before {
2034 nav.sub, .content .out-of-band {
2039 @media (max-width: 464px) {
2040 #titles, #titles > button {
2044 #main-content > table:not(.table-display) td {
2045 word-break: break-word;
2049 .search-container > div {
2051 width: calc(100% - 37px);
2060 #crate-search + .search-input {
2061 width: calc(100% + 71px);
2065 #theme-picker, #settings-menu {
2084 overflow-wrap: anywhere;
2088 flex-direction: column;
2091 .sub-logo-container {
2095 .source .sub-logo-container > img {
2100 .sidebar:not(.expanded) #sidebar-toggle {
2106 /* Begin: styles for --scrape-examples feature */
2108 .scraped-example-title {
2109 font-family: 'Fira Sans';
2112 .scraped-example:not(.expanded) .code-wrapper pre.line-numbers {
2117 .scraped-example:not(.expanded) .code-wrapper .example-wrap pre.rust {
2123 .scraped-example .code-wrapper .prev {
2131 .scraped-example .code-wrapper .next {
2139 .scraped-example .code-wrapper .expand {
2147 .scraped-example .code-wrapper {
2150 flex-direction: row;
2155 .scraped-example:not(.expanded) .code-wrapper:before {
2162 background: linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
2165 .scraped-example:not(.expanded) .code-wrapper:after {
2172 background: linear-gradient(to top, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
2175 .scraped-example:not(.expanded) .code-wrapper {
2180 .scraped-example .code-wrapper .line-numbers {
2185 .scraped-example .code-wrapper .line-numbers span {
2189 .scraped-example .code-wrapper .example-wrap {
2196 .scraped-example .code-wrapper .example-wrap pre.rust {
2197 overflow-x: inherit;
2202 .scraped-example .example-wrap .rust span.highlight {
2203 background: #fcffd6;
2206 .scraped-example .example-wrap .rust span.highlight.focus {
2207 background: #f6fdb0;
2210 .more-examples-toggle {
2214 .more-examples-toggle summary {
2216 font-family: 'Fira Sans';
2219 .more-scraped-examples {
2222 flex-direction: row;
2223 width: calc(100% - 25px);
2226 .more-scraped-examples-inner {
2227 /* 20px is width of toggle-line + toggle-line-inner */
2228 width: calc(100% - 20px);
2232 align-self: stretch;
2239 .toggle-line:hover .toggle-line-inner {
2243 .toggle-line-inner {
2249 .more-scraped-examples .scraped-example {
2250 margin-bottom: 20px;
2253 .more-scraped-examples .scraped-example:last-child {
2259 font-family: 'Fira Sans';
2266 /* End: styles for --scrape-examples feature */