]> git.lizzy.rs Git - rust.git/blob - src/librustdoc/html/static/themes/ayu.css
e0ab7170ea8772d0bc5816d6d557f03d6f3b551f
[rust.git] / src / librustdoc / html / static / themes / ayu.css
1 /*
2 Based off of the Ayu theme
3 Original by Dempfi (https://github.com/dempfi/ayu)
4 */
5
6 /* General structure and fonts */
7
8 body {
9         background-color: #0f1419;
10         color: #c5c5c5;
11 }
12
13 h1, h2, h3:not(.impl):not(.method):not(.type):not(.tymethod),
14 h4:not(.method):not(.type):not(.tymethod) {
15         color: white;
16 }
17 h1.fqn {
18         border-bottom-color: #5c6773;
19 }
20 h1.fqn  a {
21         color: #fff;
22 }
23 h2, h3:not(.impl):not(.method):not(.type):not(.tymethod) {
24         border-bottom-color: #5c6773;
25 }
26 h4:not(.method):not(.type):not(.tymethod):not(.associatedconstant) {
27         border: none;
28 }
29
30 .in-band {
31         background-color: #0f1419;
32 }
33
34 .invisible {
35         background: rgba(0, 0, 0, 0);
36 }
37
38 code {
39         color: #ffb454;
40 }
41 h3 > code, h4 > code, h5 > code {
42         color: #e6e1cf;
43 }
44 pre > code {
45         color: #e6e1cf;
46 }
47 span code {
48         color: #e6e1cf;
49 }
50 .docblock a > code {
51         color: #39AFD7 !important;
52 }
53 .docblock code, .docblock-short code {
54         background-color: #191f26;
55 }
56 pre {
57         color: #e6e1cf;
58         background-color: #191f26;
59 }
60
61 .sidebar {
62         background-color: #14191f;
63 }
64
65 /* Improve the scrollbar display on firefox */
66 * {
67         scrollbar-color: #5c6773 transparent;
68 }
69
70 .sidebar {
71         scrollbar-color: #5c6773 transparent;
72 }
73
74 /* Improve the scrollbar display on webkit-based browsers */
75 ::-webkit-scrollbar-track {
76         background-color: transparent;
77 }
78 ::-webkit-scrollbar-thumb {
79         background-color: #5c6773;
80 }
81 .sidebar::-webkit-scrollbar-track {
82         background-color: transparent;
83 }
84 .sidebar::-webkit-scrollbar-thumb {
85         background-color: #5c6773;
86 }
87
88 .sidebar .current {
89         background-color: transparent;
90         color: #ffb44c;
91 }
92
93 .source .sidebar {
94         background-color: #0f1419;
95 }
96
97 .sidebar .location {
98         border-color: #000;
99         background-color: #0f1419;
100         color: #fff;
101 }
102
103 .sidebar-elems .location {
104         color: #ff7733;
105 }
106
107 .sidebar-elems .location a {
108         color: #fff;
109 }
110
111 .sidebar .version {
112         border-bottom-color: #424c57;
113 }
114
115 .sidebar-title {
116         border-top-color: #5c6773;
117         border-bottom-color: #5c6773;
118 }
119
120 .block a:hover {
121         background: transparent;
122         color: #ffb44c;
123 }
124
125 .line-numbers span { color: #5c6773ab; }
126 .line-numbers .line-highlighted {
127         background-color: rgba(255, 236, 164, 0.06) !important;
128         padding-right: 4px;
129         border-right: 1px solid #ffb44c;
130 }
131
132 .docblock h1, .docblock h2, .docblock h3, .docblock h4, .docblock h5 {
133         border-bottom-color: #5c6773;
134 }
135
136 .docblock table, .docblock table td, .docblock table th {
137         border-color: #5c6773;
138 }
139
140 .content .method .where,
141 .content .fn .where,
142 .content .where.fmt-newline {
143         color: #c5c5c5;
144 }
145
146 .content .highlighted {
147         color: #000 !important;
148         background-color: #c6afb3;
149 }
150 .content .highlighted a, .content .highlighted span { color: #000 !important; }
151 .content .highlighted {
152         background-color: #c6afb3;
153 }
154 .search-results a {
155         color: #0096cf;
156 }
157 .search-results a span.desc {
158         color: #c5c5c5;
159 }
160
161 .content .stability::before { color: #ccc; }
162
163 .content span.foreigntype, .content a.foreigntype { color: #ef57ff; }
164 .content span.union, .content a.union { color: #98a01c; }
165 .content span.constant, .content a.constant,
166 .content span.static, .content a.static { color: #6380a0; }
167 .content span.primitive, .content a.primitive { color: #32889b; }
168 .content span.traitalias, .content a.traitalias { color: #57d399; }
169 .content span.keyword, .content a.keyword { color: #de5249; }
170
171 .content span.externcrate, .content span.mod, .content a.mod {
172         color: #acccf9;
173 }
174 .content span.struct, .content a.struct {
175         color: #ffa0a5;
176 }
177 .content span.enum, .content a.enum {
178         color: #99e0c9;
179 }
180 .content span.trait, .content a.trait {
181         color: #39AFD7;
182 }
183 .content span.type, .content a.type {
184         color: #cfbcf5;
185 }
186 .content span.fn, .content a.fn, .content span.method,
187 .content a.method, .content span.tymethod,
188 .content a.tymethod, .content .fnname {
189         color: #fdd687;
190 }
191 .content span.attr, .content a.attr, .content span.derive,
192 .content a.derive, .content span.macro, .content a.macro {
193         color: #a37acc;
194 }
195
196 pre.rust .comment, pre.rust .doccomment {
197         color: #788797;
198         font-style: italic;
199 }
200
201 nav:not(.sidebar) {
202         border-bottom-color: #424c57;
203 }
204 nav.main .current {
205         border-top-color: #5c6773;
206         border-bottom-color: #5c6773;
207 }
208 nav.main .separator {
209         border: 1px solid #5c6773;
210 }
211 a {
212         color: #c5c5c5;
213 }
214
215 .docblock:not(.type-decl) a:not(.srclink):not(.test-arrow),
216 .docblock-short a:not(.srclink):not(.test-arrow), .stability a {
217         color: #39AFD7;
218 }
219
220 .collapse-toggle {
221         color: #999;
222 }
223
224 #crate-search {
225         color: #c5c5c5;
226         background-color: #141920;
227         box-shadow: 0 0 0 1px #424c57,0 0 0 2px transparent;
228         border-color: #424c57;
229 }
230
231 .search-input {
232         color: #ffffff;
233         background-color: #141920;
234         box-shadow: 0 0 0 1px #424c57,0 0 0 2px transparent;
235         transition: box-shadow 150ms ease-in-out;
236 }
237
238 #crate-search+.search-input:focus {
239         box-shadow: 0 0 0 1px #148099,0 0 0 2px transparent;
240         color: #ffffff;
241         background-color: #141920;
242         box-shadow: none;
243         transition: box-shadow 150ms ease-in-out;
244         border-radius: 4px;
245         margin-left: 8px;
246 }
247
248 #crate-search+.search-input:focus {
249         box-shadow: 0px 6px 20px 0px black;
250 }
251
252 .search-focus:disabled {
253         color: #929292;
254 }
255
256 .module-item .stab {
257         color: #000;
258 }
259
260 .stab.unstable,
261 .stab.deprecated,
262 .stab.portability {
263         color: #c5c5c5;
264         background: #314559 !important;
265         border-style: none !important;
266         border-radius: 4px;
267         padding: 3px 6px 3px 6px;
268 }
269
270 .stab.portability > code {
271         color: #e6e1cf;
272         background-color: transparent;
273 }
274
275 #help > div {
276         background: #14191f;
277         box-shadow: 0px 6px 20px 0px black;
278         border: none;
279         border-radius: 4px;
280 }
281
282 .since {
283         color: grey;
284 }
285
286 tr.result span.primitive::after, tr.result span.keyword::after {
287         color: #788797;
288 }
289
290 .line-numbers :target { background-color: transparent; }
291
292 /* Code highlighting */
293 pre.rust .number, pre.rust .string { color: #b8cc52; }
294 pre.rust .kw, pre.rust .kw-2, pre.rust .prelude-ty,
295 pre.rust .bool-val, pre.rust .prelude-val,
296 pre.rust .op, pre.rust .lifetime { color: #ff7733; }
297 pre.rust .macro, pre.rust .macro-nonterminal { color: #a37acc; }
298 pre.rust .question-mark {
299         color: #ff9011;
300 }
301 pre.rust .self {
302         color: #36a3d9;
303         font-style: italic;
304 }
305 pre.rust .attribute {
306         color: #e6e1cf;
307 }
308 pre.rust .attribute .ident, pre.rust .attribute .op {
309         color: #e6e1cf;
310 }
311
312 .example-wrap > pre.line-number {
313         color: #5c67736e;
314         border: none;
315 }
316
317 a.test-arrow {
318         font-size: 100%;
319         color: #788797;
320         border-radius: 4px;
321         background-color: rgba(255, 255, 255, 0);
322 }
323
324 a.test-arrow:hover {
325         background-color: rgba(242, 151, 24, 0.05);
326         color: #ffb44c;
327 }
328
329 .toggle-label {
330         color: #999;
331 }
332
333 :target > code, :target > .in-band {
334         background: rgba(255, 236, 164, 0.06);
335         border-right: 3px solid #ffb44c;
336 }
337
338 pre.compile_fail {
339         border-left: 2px solid rgba(255,0,0,.4);
340 }
341
342 pre.compile_fail:hover, .information:hover + pre.compile_fail {
343         border-left: 2px solid #f00;
344 }
345
346 pre.should_panic {
347         border-left: 2px solid rgba(255,0,0,.4);
348 }
349
350 pre.should_panic:hover, .information:hover + pre.should_panic {
351         border-left: 2px solid #f00;
352 }
353
354 pre.ignore {
355         border-left: 2px solid rgba(255,142,0,.6);
356 }
357
358 pre.ignore:hover, .information:hover + pre.ignore {
359         border-left: 2px solid #ff9200;
360 }
361
362 .tooltip.compile_fail {
363         color: rgba(255,0,0,.5);
364 }
365
366 .information > .compile_fail:hover {
367         color: #f00;
368 }
369
370 .tooltip.should_panic {
371         color: rgba(255,0,0,.5);
372 }
373
374 .information > .should_panic:hover {
375         color: #f00;
376 }
377
378 .tooltip.ignore {
379         color: rgba(255,142,0,.6);
380 }
381
382 .information > .ignore:hover {
383         color: #ff9200;
384 }
385
386 .search-failed a {
387         color: #39AFD7;
388 }
389
390 .tooltip .tooltiptext {
391         background-color: #314559;
392         color: #c5c5c5;
393         border: 1px solid #5c6773;
394 }
395
396 .tooltip .tooltiptext::after {
397         border-color: transparent #314559 transparent transparent;
398 }
399
400 .important-traits-tooltiptext {
401         background-color: #314559;
402         border-color: #5c6773;
403 }
404
405 #titles > div.selected {
406         background-color: #141920 !important;
407         border-bottom: 1px solid #ffb44c !important;
408         border-top: none;
409 }
410
411 #titles > div:not(.selected) {
412         background-color: transparent !important;
413         border: none;
414 }
415
416 #titles > div:hover {
417         border-bottom: 1px solid rgba(242, 151, 24, 0.3);
418 }
419
420 #titles > div > div.count {
421         color: #888;
422 }
423
424 /* rules that this theme does not need to set, here to satisfy the rule checker */
425 /* note that a lot of these are partially set in some way (meaning they are set
426 individually rather than as a group) */
427 /* FIXME: these rules should be at the bottom of the file but currently must be
428 above the `@media (max-width: 700px)` rules due to a bug in the css checker */
429 /* see https://github.com/rust-lang/rust/pull/71237#issuecomment-618170143 */
430 .content .highlighted.mod, .content .highlighted.externcrate {}
431 .search-input:focus {}
432 .content span.attr,.content a.attr,.block a.current.attr,.content span.derive,.content a.derive,
433 .block a.current.derive,.content span.macro,.content a.macro,.block a.current.macro {}
434 .content .highlighted.trait {}
435 .content span.struct,.content a.struct,.block a.current.struct {}
436 #titles>div:hover,#titles>div.selected {}
437 .content .highlighted.traitalias {}
438 .content span.type,.content a.type,.block a.current.type {}
439 .content span.union,.content a.union,.block a.current.union {}
440 .content .highlighted.foreigntype {}
441 pre.rust .lifetime {}
442 .content .highlighted.primitive {}
443 .content .highlighted.constant,.content .highlighted.static {}
444 .stab.unstable {}
445 .content .highlighted.fn,.content .highlighted.method,.content .highlighted.tymethod {}
446 h2,h3:not(.impl):not(.method):not(.type):not(.tymethod),h4:not(.method):not(.type):not(.tymethod) {}
447 .content span.enum,.content a.enum,.block a.current.enum {}
448 .content span.constant,.content a.constant,.block a.current.constant,.content span.static,
449 .content a.static,.block a.current.static {}
450 .content span.keyword,.content a.keyword,.block a.current.keyword {}
451 pre.rust .comment {}
452 .content .highlighted.enum {}
453 .content .highlighted.struct {}
454 .content .highlighted.keyword {}
455 .content span.traitalias,.content a.traitalias,.block a.current.traitalias {}
456 .content span.fn,.content a.fn,.block a.current.fn,.content span.method,.content a.method,
457 .block a.current.method,.content span.tymethod,.content a.tymethod,.block a.current.tymethod,
458 .content .fnname {}
459 pre.rust .kw {}
460 pre.rust .self,pre.rust .bool-val,pre.rust .prelude-val,pre.rust .attribute,
461 pre.rust .attribute .ident {}
462 .content span.foreigntype,.content a.foreigntype,.block a.current.foreigntype {}
463 pre.rust .doccomment {}
464 .stab.deprecated {}
465 .content .highlighted.attr,.content .highlighted.derive,.content .highlighted.macro {}
466 .stab.portability {}
467 .content .highlighted.union {}
468 .content span.primitive,.content a.primitive,.block a.current.primitive {}
469 .content span.externcrate,.content span.mod,.content a.mod,.block a.current.mod {}
470 .content .highlighted.type {}
471 pre.rust .kw-2,pre.rust .prelude-ty {}
472 .content span.trait,.content a.trait,.block a.current.trait {}
473
474 @media (max-width: 700px) {
475         .sidebar-menu {
476                 background-color: #14191f;
477                 border-bottom-color: #5c6773;
478                 border-right-color: #5c6773;
479         }
480
481         .sidebar-elems {
482                 background-color: #14191f;
483                 border-right-color: #5c6773;
484         }
485
486         #sidebar-filler {
487                 background-color: #14191f;
488                 border-bottom-color: #5c6773;
489         }
490 }
491
492 kbd {
493         color: #c5c5c5;
494         background-color: #314559;
495         border-color: #5c6773;
496         border-bottom-color: #5c6773;
497         box-shadow-color: #c6cbd1;
498 }
499
500 #theme-picker, #settings-menu {
501         border-color: #5c6773;
502         background-color: #0f1419;
503 }
504
505 #theme-picker > img, #settings-menu > img {
506         filter: invert(100);
507 }
508
509 #theme-picker:hover, #theme-picker:focus,
510 #settings-menu:hover, #settings-menu:focus {
511         border-color: #e0e0e0;
512 }
513
514 #theme-choices {
515         border-color: #5c6773;
516         background-color: #0f1419;
517 }
518
519 #theme-choices > button:not(:first-child) {
520         border-top-color: #c5c5c5;
521 }
522
523 #theme-choices > button:hover, #theme-choices > button:focus {
524         background-color: rgba(70, 70, 70, 0.33);
525 }
526
527 @media (max-width: 700px) {
528         #theme-picker {
529                 background: #0f1419;
530         }
531 }
532
533 #all-types {
534         background-color: #14191f;
535 }
536 #all-types:hover {
537         background-color: rgba(70, 70, 70, 0.33);
538 }
539
540 .search-results td span.alias {
541         color: #c5c5c5;
542 }
543 .search-results td span.grey {
544         color: #999;
545 }
546
547 #sidebar-toggle {
548         background-color: #14191f;
549 }
550 #sidebar-toggle:hover {
551         background-color: rgba(70, 70, 70, 0.33);
552 }
553 #source-sidebar {
554         background-color: #14191f;
555 }
556 #source-sidebar > .title {
557         color: #fff;
558         border-bottom-color: #5c6773;
559 }
560 div.files > a:hover, div.name:hover {
561         background-color: #14191f;
562         color: #ffb44c;
563 }
564 div.files > .selected {
565         background-color: #14191f;
566         color: #ffb44c;
567 }
568 .setting-line > .title {
569         border-bottom-color: #5c6773;
570 }
571 input:checked + .slider {
572         background-color: #ffb454 !important;
573 }