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");
11 font-family: 'Fira Sans';
14 src: local('Fira Sans Medium'),
15 url("FiraSans-Medium.woff2") format("woff2");
19 /* See SourceSerif4-LICENSE.md for the Source Serif 4 license. */
21 font-family: 'Source Serif 4';
24 src: local('Source Serif 4'),
25 url("SourceSerif4-Regular.ttf.woff2") format("woff2");
29 font-family: 'Source Serif 4';
32 src: local('Source Serif 4 Italic'),
33 url("SourceSerif4-It.ttf.woff2") format("woff2");
37 font-family: 'Source Serif 4';
40 src: local('Source Serif 4 Bold'),
41 url("SourceSerif4-Bold.ttf.woff2") format("woff2");
45 /* See SourceCodePro-LICENSE.txt for the Source Code Pro license. */
47 font-family: 'Source Code Pro';
50 /* Avoid using locally installed font because bad versions are in circulation:
51 * see https://github.com/rust-lang/rust/issues/24355 */
52 src: url("SourceCodePro-Regular.ttf.woff2") format("woff2");
56 font-family: 'Source Code Pro';
59 src: url("SourceCodePro-It.ttf.woff2") format("woff2");
63 font-family: 'Source Code Pro';
66 src: url("SourceCodePro-Semibold.ttf.woff2") format("woff2");
70 /* Avoid using legacy CJK serif fonts in Windows like Batang. */
72 font-family: 'NanumBarunGothic';
73 src: url("NanumBarunGothic.ttf.woff2") format("woff2");
75 unicode-range: U+AC00-D7AF, U+1100-11FF, U+3130-318F, U+A960-A97F, U+D7B0-D7FF;
79 -webkit-box-sizing: border-box;
80 -moz-box-sizing: border-box;
81 box-sizing: border-box;
84 /* This part handles the "default" theme being used depending on the system one. */
88 @media (prefers-color-scheme: light) {
93 @media (prefers-color-scheme: dark) {
99 /* General structure and fonts */
102 /* Line spacing at least 1.5 per Web Content Accessibility Guidelines
103 https://www.w3.org/WAI/WCAG21/Understanding/visual-presentation.html */
104 font: 1rem/1.5 "Source Serif 4", NanumBarunGothic, serif;
107 /* We use overflow-wrap: break-word for Safari, which doesn't recognize
108 `anywhere`: https://developer.mozilla.org/en-US/docs/Web/CSS/overflow-wrap */
109 overflow-wrap: break-word;
110 /* Then override it with `anywhere`, which is required to make non-Safari browsers break
111 more aggressively when we want them to. */
112 overflow-wrap: anywhere;
114 -webkit-font-feature-settings: "kern", "liga";
115 -moz-font-feature-settings: "kern", "liga";
116 font-feature-settings: "kern", "liga";
120 font-size: 1.5rem; /* 24px */
123 font-size: 1.375rem; /* 22px */
126 font-size: 1.25rem; /* 20px */
128 h1, h2, h3, h4, h5, h6 {
132 margin: 20px 0 15px 0;
135 .docblock h3, .docblock h4, h5, h6 {
136 margin: 15px 0 5px 0;
145 justify-content: space-between;
149 .main-heading a:hover {
150 text-decoration: underline;
153 text-decoration: none;
155 /* The only headings that get underlines are:
156 Markdown-generated headings within the top-doc
157 Rustdoc-generated h2 section headings (e.g. "Implementations", "Required Methods", etc)
158 Underlines elsewhere in the documentation break up visual flow and tend to invert
159 section hierarchies. */
163 border-bottom: 1px solid;
166 font-size: 1.125rem; /* 18px */
173 border-bottom-style: none;
177 margin-bottom: 0.4em;
184 .impl-items .associatedconstant,
185 .methods .associatedconstant,
186 .impl-items .associatedtype,
187 .methods .associatedtype {
193 div.impl-items > div {
197 h1, h2, h3, h4, h5, h6,
202 .search-results .result-name,
203 .content table td:first-child > a,
207 #source-sidebar, #sidebar-toggle,
208 details.rustdoc-toggle > summary::before,
209 div.impl-items > div:not(.docblock):not(.item-info),
210 .content ul.crate a.crate,
212 /* This selector is for the items listed in the "all items" page. */
213 #main-content > ul.docblock > li > a {
214 font-family: "Fira Sans", Arial, NanumBarunGothic, sans-serif;
220 ul ul, ol ul, ul ol, ol ol {
221 margin-bottom: .625em;
225 /* Paragraph spacing at least 1.5 times line spacing per Web Content Accessibility Guidelines.
226 Line-height is 1.5rem, so line spacing is .5rem; .75em is 1.5 times that.
227 https://www.w3.org/WAI/WCAG21/Understanding/visual-presentation.html */
235 /* Fix some style changes due to normalize.css 8 */
243 border-collapse: collapse;
257 /* Buttons on Safari have different default padding than other platforms. Make them the same. */
261 /* end tweaks for normalize.css 8 */
272 padding: 10px 15px 40px 45px;
285 .source .width-limiter {
289 details:not(.rustdoc-toggle) summary {
293 code, pre, a.test-arrow, .code-header {
294 font-family: "Source Code Pro", monospace;
296 .docblock code, .docblock-short code {
300 .docblock pre code, .docblock-short pre code {
306 .docblock.item-decl {
313 .source .content pre {
342 .sub-logo-container {
347 .source .sub-logo-container {
351 .source .sub-logo-container > img {
369 .sidebar > .location {
374 overflow-wrap: anywhere;
377 .rustdoc.source .sidebar {
384 border-right: 1px solid;
386 /* The sidebar is by default hidden */
390 .source .sidebar > *:not(#sidebar-toggle) {
395 .source .sidebar.expanded {
399 .source .sidebar.expanded > *:not(#sidebar-toggle) {
408 /* Improve the scrollbar display on firefox */
410 scrollbar-width: initial;
413 scrollbar-width: thin;
416 /* Improve the scrollbar display on webkit-based browsers */
417 ::-webkit-scrollbar {
420 .sidebar::-webkit-scrollbar {
423 ::-webkit-scrollbar-track {
424 -webkit-box-shadow: inset 0;
427 /* Everything else */
430 display: none !important;
433 .sidebar .logo-container {
437 justify-content: center;
441 overflow-wrap: break-word;
444 .logo-container > img {
453 .location a:first-of-type {
460 .block ul, .block li {
470 margin-left: -0.25rem;
472 text-overflow: ellipsis;
482 margin-bottom: 0.7rem;
486 font-size: 1.125rem; /* 18px */
492 .sidebar-elems .block {
496 .sidebar-elems .block li a {
504 .source .content pre.rust {
510 .rustdoc .example-wrap {
511 display: inline-flex;
520 .example-wrap > pre.line-number {
525 border-top-left-radius: 5px;
526 border-bottom-left-radius: 5px;
529 .example-wrap > pre.rust a:hover {
530 text-decoration: underline;
536 .rustdoc:not(.source) .example-wrap > pre:not(.line-number) {
541 .rustdoc:not(.source) .example-wrap > pre.line-numbers {
546 .rustdoc .example-wrap > pre {
563 .content > .example-wrap pre.line-numbers {
565 -webkit-user-select: none;
566 -moz-user-select: none;
567 -ms-user-select: none;
575 overflow-wrap: break-word;
576 overflow-wrap: anywhere;
584 text-overflow: ellipsis;
587 /* Wrap non-pre code blocks (`text`) but not (```text```). */
588 .docblock > :not(pre) > code,
589 .docblock-short > :not(pre) > code {
590 white-space: pre-wrap;
593 .top-doc .docblock h2 { font-size: 1.375rem; }
594 .top-doc .docblock h3 { font-size: 1.25; }
595 .top-doc .docblock h4,
596 .top-doc .docblock h5 {
599 .top-doc .docblock h6 {
603 .docblock h5 { font-size: 1rem; }
604 .docblock h6 { font-size: 0.875rem; }
611 .docblock > :not(.information):not(.more-examples-toggle) {
616 .content .out-of-band {
623 .method > .code-header, .trait-impl > .code-header {
624 max-width: calc(100% - 41px);
630 display: inline-block;
637 overflow-wrap: break-word;
638 overflow-wrap: anywhere;
641 .in-band > code, .in-band > .code-header {
642 display: inline-block;
648 #main-content > .since {
650 font-family: "Fira Sans", Arial, sans-serif;
653 .content table:not(.table-display) {
654 border-spacing: 0 5px;
656 .content td { vertical-align: top; }
657 .content td:first-child { padding-right: 20px; }
658 .content td p:first-child { margin-top: 0; }
659 .content td h1, .content td h2 { margin-left: 0; font-size: 1.125rem; }
660 .content tr:first-child td { border-top: 0; }
664 width: calc(100% - 2px);
684 .content .item-list {
685 list-style-type: none;
689 .content .multi-column {
690 -moz-column-count: 5;
691 -moz-column-gap: 2.5em;
692 -webkit-column-count: 5;
693 -webkit-column-gap: 2.5em;
697 .content .multi-column li { width: 100%; display: inline-block; }
699 .content > .methods > .method {
703 /* Shift "where ..." part of method or fn definition down a line */
704 .content .method .where,
706 .content .where.fmt-newline {
711 .content .methods > div:not(.notable-traits):not(.method) {
716 .content .docblock > .impl-items {
720 .content .docblock >.impl-items .table-display {
723 .content .docblock >.impl-items table td {
726 .content .docblock > .impl-items .table-display, .impl-items table td {
734 .content .item-info code {
738 .content .item-info {
743 .sub-variant > div > .item-info {
747 .content .impl-items .docblock, .content .impl-items .item-info {
751 .content .impl-items > .item-info {
755 .methods > .item-info, .content .impl-items > .item-info {
763 #main-content > .item-info {
780 border-top: 1px solid;
781 border-bottom: 1px solid;
783 nav.main .separator {
785 display: inline-block;
789 nav.sum { text-align: right; }
790 nav.sub form { display: inline; }
793 text-decoration: none;
794 background: transparent;
797 .small-section-header {
799 justify-content: space-between;
803 .small-section-header:hover > .anchor {
807 .in-band:hover > .anchor, .impl:hover > .anchor, .method.trait-impl:hover > .anchor,
808 .type.trait-impl:hover > .anchor, .associatedconstant.trait-impl:hover > .anchor,
809 .associatedtype.trait-impl:hover > .anchor {
810 display: inline-block;
817 background: none !important;
822 .small-section-header > .anchor {
826 h2.small-section-header > .anchor {
833 .docblock a:not(.srclink):not(.test-arrow):not(.scrape-help):hover,
834 .docblock-short a:not(.srclink):not(.test-arrow):not(.scrape-help):hover, .item-info a {
835 text-decoration: underline;
838 .block a.current.crate { font-weight: 500; }
840 /* In most contexts we use `overflow-wrap: anywhere` to ensure that we can wrap
841 as much as needed on mobile (see
842 src/test/rustdoc-gui/type-declaration-overflow.goml for an example of why
843 this matters). The `anywhere` value means:
845 "Soft wrap opportunities introduced by the word break are considered when
846 calculating min-content intrinsic sizes."
848 https://developer.mozilla.org/en-US/docs/Web/CSS/overflow-wrap#values
850 For table layouts, that becomes a problem: the browser tries to make each
851 column as narrow as possible, and `overflow-wrap: anywhere` means it can do
852 so by breaking words - even if some other column could be shrunk without
853 breaking words! This shows up, for instance, in the `Structs` / `Modules` /
854 `Functions` (etcetera) sections of a module page, and when a docblock
857 So, for table layouts, override the default with break-word, which does
858 _not_ affect min-content intrinsic sizes.
862 overflow-wrap: break-word;
871 .item-left, .item-right {
875 padding-right: 1.25rem;
883 .search-container > * {
886 .search-results-title {
898 padding-left: 0.3125em;
904 -moz-appearance: none;
905 -webkit-appearance: none;
906 /* Removes default arrow from firefox */
909 background-repeat: no-repeat;
910 background-color: transparent;
911 background-size: 20px;
912 background-position: calc(100% - 1px) 56%;
913 background-image: /* AUTOREPLACE: */url("down-arrow.svg");
919 /* Override Normalize.css: it has a rule that sets
920 -webkit-appearance: textfield for search inputs. That
921 causes rounded corners and no border on iOS Safari. */
922 -webkit-appearance: none;
923 /* Override Normalize.css: we have margins and do
924 not want to overflow - the `moz` attribute is necessary
925 until Firefox 29, too early to drop at this point */
926 -moz-box-sizing: border-box !important;
927 box-sizing: border-box !important;
933 transition: border-color 300ms ease;
942 .search-results.active {
944 /* prevent overhanging tabs from moving the first result */
948 .search-results .desc > span {
950 text-overflow: ellipsis;
955 .search-results > a {
958 /* A little margin ensures the browser's outlining of focused links has room to display. */
961 border-bottom: 1px solid #aaa3;
964 .search-results > a > div {
969 .search-results .result-name, .search-results div.desc, .search-results .result-description {
972 .search-results .result-name {
976 .search-results .result-name > span {
977 display: inline-block;
982 body.blur > :not(#help) {
984 -webkit-filter: blur(8px);
995 justify-content: center;
1000 box-shadow: 0 0 6px rgba(0,0,0,.2);
1009 margin-right: 0.5rem;
1011 #help span.top, #help span.bottom {
1014 font-size: 1.125rem;
1021 border-bottom: 1px solid;
1022 padding-bottom: 4px;
1027 border-top: 1px solid;
1029 #help dd { margin: 5px 35px; }
1030 #help .infos { padding-left: 0; }
1031 #help h1, #help h2 { margin-top: 0; }
1035 padding: 0 20px 20px 17px;;
1039 display: inline-block;
1044 font-size: 0.875rem;
1045 font-weight: normal;
1055 /* Black one-pixel outline around emoji shapes */
1065 .import-item .stab {
1067 display: inline-block;
1068 font-size: 0.875rem;
1071 margin-left: 0.3125em;
1073 vertical-align: text-bottom;
1076 .module-item.unstable,
1077 .import-item.unstable {
1082 font-weight: normal;
1092 .impl-items .srclink, .impl .srclink, .methods .srclink {
1093 /* Override header settings otherwise it's too bold */
1094 font-weight: normal;
1106 .variants_table tbody tr td:first-child {
1107 width: 1%; /* make the variant name as small as possible */
1118 pre.rust .question-mark {
1123 display: inline-block;
1126 padding: 5px 10px 5px 10px;
1128 font-size: 1.375rem;
1133 .example-wrap:hover .test-arrow {
1134 visibility: visible;
1137 text-decoration: none;
1149 .out-of-band > span.since {
1156 font-size: 1.125rem;
1157 margin-bottom: 10px;
1158 border-bottom: none;
1164 border-bottom: none;
1171 margin-bottom: 40px;
1174 .sub-variant > .sub-variant-field {
1179 display: inline-block;
1184 :target > code, :target > .code-header {
1201 display: inline-block;
1208 padding: 5px 3px 3px 3px;
1214 .tooltip.ignore::after {
1215 content: "This example is not tested";
1217 .tooltip.compile_fail::after {
1218 content: "This example deliberately fails to compile";
1220 .tooltip.should_panic::after {
1221 content: "This example panics";
1223 .tooltip.edition::after {
1224 content: "This code runs with edition " attr(data-edition);
1234 border-style: solid;
1238 .tooltip:hover::before, .tooltip:hover::after {
1242 .tooltip.compile_fail, .tooltip.should_panic, .tooltip.ignore {
1247 .notable-traits-tooltip {
1248 display: inline-block;
1252 .notable-traits:hover .notable-traits-tooltiptext,
1253 .notable-traits .notable-traits-tooltiptext.force-tooltip {
1254 display: inline-block;
1257 .notable-traits .notable-traits-tooltiptext {
1259 padding: 5px 3px 3px 3px;
1269 .notable-traits-tooltip::after {
1270 /* The margin on the tooltip does not capture hover events,
1271 this extends the area of hover enough so that mouse hover is not
1272 lost when moving the mouse to the tooltip */
1273 content: "\00a0\00a0\00a0";
1276 .notable-traits .notable, .notable-traits .docblock {
1280 .notable-traits .notable {
1282 margin-bottom: 13px;
1283 font-size: 1.1875rem;
1288 .notable-traits .docblock code.content{
1294 /* Example code has the "Run" button that needs to be positioned relative to the pre */
1295 pre.rust.rust-example-rendered {
1310 .search-failed.active {
1314 .search-failed > ul {
1329 font-size: 1.125rem;
1332 border-top: 2px solid;
1335 #titles > button:first-child:last-child {
1337 width: calc(100% - 1px);
1340 #titles > button:not(:last-child) {
1342 width: calc(33.3% - 1px);
1345 #titles > button > div.count {
1346 display: inline-block;
1363 border-bottom: 1px solid;
1366 justify-content: center;
1367 align-items: center;
1375 #source-sidebar > .title {
1378 border-bottom: 1px solid;
1382 #settings-menu, #help-button {
1390 #settings-menu > a, #help-button, #copy-path {
1400 #settings-menu > a {
1407 @keyframes rotating {
1409 transform: rotate(0deg);
1412 transform: rotate(360deg);
1415 #settings-menu.rotate > a img {
1416 animation: rotating 2s linear infinite;
1418 #settings-menu #settings {
1427 #settings-menu #settings .setting-line {
1430 /* This rule is to draw the little arrow connecting the settings menu to the gear icon. */
1431 #settings-menu #settings::before {
1436 border-width: 1px 1px 0 0;
1437 display: inline-block;
1439 transform: rotate(-45deg);
1444 font-family: "Fira Sans", Arial, sans-serif;
1446 /* Rare exception to specifying font sizes in rem. Since this is acting
1447 as an icon, it's okay to specify their sizes in pixels. */
1453 background: initial;
1471 #theme-choices > button {
1476 background: rgba(0,0,0,0);
1477 overflow-wrap: normal;
1480 #theme-choices > button:not(:first-child) {
1481 border-top: 1px solid;
1485 display: inline-block;
1487 font: 15px monospace;
1489 vertical-align: middle;
1495 .hidden-by-impl-hider,
1496 .hidden-by-usual-hider {
1497 /* important because of conflicting rule for small screens */
1498 display: none !important;
1501 #implementations-list > h3 > span.in-band {
1508 border-collapse: collapse;
1513 .table-display tr td:first-child {
1517 .table-display tr td:last-child {
1520 .table-display .out-of-band {
1522 font-size: 1.125rem;
1526 .table-display td:hover .anchor {
1532 #main-content > ul {
1535 #main-content > ul > li {
1556 div.files > a:hover, div.name:hover {
1557 background-color: #a14b4b;
1559 div.name.expand + .children {
1565 font-size: 0.625rem;
1570 div.name.expand::before {
1571 transform: rotate(90deg);
1576 /* The hideme class is used on summary tags that contain a span with
1577 placeholder text shown only when the toggle is closed. For instance,
1578 "Expand description" or "Show methods". */
1579 details.rustdoc-toggle > summary.hideme {
1583 details.rustdoc-toggle > summary {
1586 details.rustdoc-toggle > summary::-webkit-details-marker,
1587 details.rustdoc-toggle > summary::marker {
1591 details.rustdoc-toggle > summary.hideme > span {
1595 details.rustdoc-toggle > summary::before {
1600 background-repeat: no-repeat;
1601 background-position: top left;
1602 display: inline-block;
1603 vertical-align: middle;
1607 /* Screen readers see the text version at the end the line.
1608 Visual readers see the icon at the start of the line, but small and transparent. */
1609 details.rustdoc-toggle > summary::after {
1617 details.rustdoc-toggle > summary.hideme::after {
1618 /* "hideme" toggles already have a description when they're contracted */
1622 details.rustdoc-toggle > summary:focus::before,
1623 details.rustdoc-toggle > summary:hover::before {
1627 details.rustdoc-toggle.top-doc > summary,
1628 details.rustdoc-toggle.top-doc > summary::before,
1629 details.rustdoc-toggle.non-exhaustive > summary,
1630 details.rustdoc-toggle.non-exhaustive > summary::before {
1631 font-family: 'Fira Sans';
1635 details.non-exhaustive {
1639 details.rustdoc-toggle > summary.hideme::before {
1643 details.rustdoc-toggle > summary:not(.hideme)::before {
1649 .impl-items > details.rustdoc-toggle > summary:not(.hideme)::before {
1654 /* When a "hideme" summary is open and the "Expand description" or "Show
1655 methods" text is hidden, we want the [-] toggle that remains to not
1656 affect the layout of the items to its right. To do that, we use
1657 absolute positioning. Note that we also set position: relative
1658 on the parent <details> to make this work properly. */
1659 details.rustdoc-toggle[open] > summary.hideme {
1663 details.rustdoc-toggle {
1667 details.rustdoc-toggle[open] > summary.hideme > span {
1671 details.undocumented[open] > summary::before,
1672 details.rustdoc-toggle[open] > summary::before,
1673 details.rustdoc-toggle[open] > summary.hideme::before {
1674 background-image: /* AUTOREPLACE: */url("toggle-minus.svg");
1677 details.undocumented > summary::before, details.rustdoc-toggle > summary::before {
1678 background-image: /* AUTOREPLACE: */url("toggle-plus.svg");
1681 details.rustdoc-toggle[open] > summary::before,
1682 details.rustdoc-toggle[open] > summary.hideme::before {
1685 background-repeat: no-repeat;
1686 background-position: top left;
1687 display: inline-block;
1691 details.rustdoc-toggle[open] > summary::after,
1692 details.rustdoc-toggle[open] > summary.hideme::after {
1693 content: "Collapse";
1698 @media (min-width: 701px) {
1699 /* In case there is no documentation before a code block, we need to add some margin at the top
1700 to prevent an overlay between the "collapse toggle" and the information tooltip.
1701 However, it's not needed with smaller screen width because the doc/code block is always put
1702 "one line" below. */
1703 .docblock > .information:first-child > .tooltip {
1707 /* When we expand the sidebar on the source code page, we hide the logo on the left of the
1708 search bar to have more space. */
1709 .sidebar.expanded + main .width-limiter .sub-logo-container.rust-logo {
1713 .source .sidebar.expanded {
1718 @media (max-width: 700px) {
1719 /* When linking to an item with an `id` (for instance, by clicking a link in the sidebar,
1720 or visiting a URL with a fragment like `#method.new`, we don't want the item to be obscured
1721 by the topbar. Anything with an `id` gets scroll-margin-top equal to .mobile-topbar's size.
1724 scroll-margin-top: 45px;
1729 /* Sidebar should overlay main content, rather than pushing main content to the right.
1730 Turn off `display: flex` on the body element. */
1741 flex-direction: column;
1744 .content .out-of-band {
1746 margin-left: initial;
1750 .content .out-of-band .since::before {
1758 /* Hide the logo and item name from the sidebar. Those are displayed
1759 in the mobile-topbar instead. */
1760 .sidebar .sidebar-logo,
1761 .sidebar .location {
1772 /* Hide the sidebar offscreen while not in use. Doing this instead of display: none means
1773 the sidebar stays visible for screen readers, which is useful for navigation. */
1776 background-color: rgba(0,0,0,0);
1780 /* Reduce height slightly to account for mobile topbar. */
1781 height: calc(100vh - 45px);
1784 /* The source view uses a different design for the sidebar toggle, and doesn't have a topbar,
1785 so don't bump down the main content or the sidebar. */
1794 .sidebar:focus-within {
1798 .rustdoc.source > .sidebar {
1805 .mobile-topbar .location a {
1810 .mobile-topbar .location {
1813 margin: auto 0.5em auto auto;
1814 text-overflow: ellipsis;
1816 white-space: nowrap;
1817 /* Rare exception to specifying font sizes in rem. Since the topbar
1818 height is specified in pixels, this also has to be specified in
1819 pixels to avoid overflowing the topbar when the user sets a bigger
1824 .mobile-topbar .logo-container {
1828 .mobile-topbar .logo-container > img {
1838 flex-direction: row;
1848 .source .mobile-topbar {
1852 .sidebar-menu-toggle {
1854 /* Rare exception to specifying font sizes in rem. Since this is acting
1855 as an icon, it's okay to specify its sizes in pixels. */
1860 .source nav:not(.sidebar).sub {
1878 display: none !important;
1887 #titles > button > div.count {
1896 /* Because of ios, we need to actually have a full height sidebar title so the
1897 * actual sidebar can show up. But then we need to make it transparent so we don't
1898 * hide content. The filler just allows to create the background for the sidebar
1899 * title. But because of the absolute position, I had to lower the z-index.
1904 width: calc(100% - 45px);
1908 border-bottom: 1px solid;
1911 #main-content > details.rustdoc-toggle > summary::before,
1912 #main-content > div > details.rustdoc-toggle > summary::before {
1916 .sidebar.expanded #sidebar-toggle {
1920 .sidebar:not(.expanded) #sidebar-toggle {
1929 border-top-right-radius: 3px;
1930 border-bottom-right-radius: 3px;
1941 #main-content > .line-numbers {
1945 .notable-traits .notable-traits-tooltiptext {
1950 /* We don't display the help button on mobile devices. */
1955 /* Display an alternating layout on tablets and phones */
1961 flex-flow: column wrap;
1963 .item-left, .item-right {
1967 /* Display an alternating layout on tablets and phones */
1968 .search-results > a {
1969 border-bottom: 1px solid #aaa9;
1972 .search-results .result-name, .search-results div.desc, .search-results .result-description {
1975 .search-results div.desc, .search-results .result-description, .item-right {
1979 .source .sidebar.expanded {
1984 /* Position of the "[-]" element. */
1985 details.rustdoc-toggle:not(.top-doc) > summary {
1988 .impl-items > details.rustdoc-toggle > summary:not(.hideme)::before,
1989 #main-content > details.rustdoc-toggle:not(.top-doc) > summary::before,
1990 #main-content > div > details.rustdoc-toggle > summary::before {
1996 nav.sub, .content .out-of-band {
2001 @media (max-width: 464px) {
2002 #titles, #titles > button {
2006 #main-content > table:not(.table-display) td {
2007 word-break: break-word;
2021 overflow-wrap: break-word;
2022 overflow-wrap: anywhere;
2026 flex-direction: column;
2029 .sub-logo-container {
2033 .source .sub-logo-container > img {
2038 .sidebar:not(.expanded) #sidebar-toggle {
2043 .method-toggle summary,
2044 .implementors-toggle summary,
2046 margin-bottom: 0.75em;
2049 .method-toggle[open] {
2053 .implementors-toggle[open] {
2057 #trait-implementations-list .method-toggle,
2058 #synthetic-implementations-list .method-toggle,
2059 #blanket-implementations-list .method-toggle {
2063 /* Begin: styles for --scrape-examples feature */
2065 .scraped-example-list .scrape-help {
2068 font-weight: normal;
2072 background: transparent;
2074 border-style: solid;
2075 border-radius: 50px;
2078 .scraped-example-title {
2079 font-family: 'Fira Sans';
2082 .scraped-example .code-wrapper {
2085 flex-direction: row;
2090 .scraped-example:not(.expanded) .code-wrapper {
2094 .scraped-example:not(.expanded) .code-wrapper pre {
2100 .scraped-example:not(.expanded) .code-wrapper pre.line-numbers {
2104 .scraped-example .code-wrapper .prev {
2112 .scraped-example .code-wrapper .next {
2120 .scraped-example .code-wrapper .expand {
2128 .scraped-example:not(.expanded) .code-wrapper:before {
2137 .scraped-example:not(.expanded) .code-wrapper:after {
2146 .scraped-example .code-wrapper .line-numbers {
2151 .scraped-example .code-wrapper .line-numbers span {
2155 .scraped-example .code-wrapper .example-wrap {
2162 .scraped-example:not(.expanded) .code-wrapper .example-wrap {
2166 .scraped-example .code-wrapper .example-wrap pre.rust {
2167 overflow-x: inherit;
2173 .more-examples-toggle {
2174 max-width: calc(100% + 25px);
2179 .more-examples-toggle .hide-more {
2185 .more-examples-toggle summary, .more-examples-toggle .hide-more {
2186 font-family: 'Fira Sans';
2189 .more-scraped-examples {
2192 flex-direction: row;
2195 .more-scraped-examples-inner {
2196 /* 20px is width of toggle-line + toggle-line-inner */
2197 width: calc(100% - 20px);
2201 align-self: stretch;
2208 .toggle-line-inner {
2213 .more-scraped-examples .scraped-example {
2214 margin-bottom: 20px;
2217 .more-scraped-examples .scraped-example:last-child {
2223 font-family: 'Fira Sans';
2230 /* End: styles for --scrape-examples feature */