• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*--------------------- CSS Variables ----------------------------*/
2:root {
3  --black: #000000;
4  --black1: #090c15;
5  --black2: #2c3437;
6  --black3: #0d111d;
7  --blue1: #00f;
8  --white: #ffffff;
9  --white-smoke: #f2f2f2;
10  --grey-smoke: #e9edf0;
11  --red1: #d60027;
12  --red2: #d50027;
13  --red3: #ca5010;
14  --green1: #3e7a38;
15  --green2: #5a8147;
16  --green3: #64de64;
17  --green4: #99cc7d;
18  --green5: #84ba64;
19  --gray1: #707070;
20  --gray2: #b4b4b4;
21  --gray3: #cccccc;
22  --gray4: #040404;
23  --gray5: #7a7a7a;
24  --gray6: #333333;
25  --gray7: #c1c1c1;
26  --grey8: #ddd;
27
28  --background-color-api-stability-link: rgba(255, 255, 255, .4);
29  --background-color-highlight: var(--white-smoke);
30  --color-brand-primary: var(--gray6);
31  --color-brand-secondary: var(--green1);
32  --color-fill-app: var(--white);
33  --color-fill-side-nav: var(--gray6);
34  --color-links: var(--green1);
35  --color-text-mark: var(--gray1);
36  --color-text-nav: var(--gray3);
37  --color-text-primary: var(--gray6);
38  --color-text-secondary: var(--green2);
39}
40
41.dark-mode {
42  --background-color-highlight: var(--black2);
43  --color-fill-app: var(--black1);
44  --color-fill-side-nav: var(--black3);
45  --color-links: var(--green5);
46  --color-text-mark: var(--gray5);
47  --color-text-primary: var(--white);
48}
49
50.dark-mode code,
51.dark-mode tt {
52  color: var(--grey-smoke);
53  background-color: var(--background-color-highlight);
54}
55.dark-mode a code {
56  color: var(--green3);
57}
58
59/*--------------------- Layout and Typography ----------------------------*/
60html {
61  font-size: 1rem;
62  overflow-wrap: break-word;
63  -webkit-font-smoothing: antialiased;
64  -moz-osx-font-smoothing: grayscale;
65  -webkit-font-variant-ligatures: none;
66          font-variant-ligatures: none;
67}
68
69* {
70  box-sizing: border-box;
71}
72
73body {
74  font-family: Lato, "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Verdana, Tahoma, sans-serif;
75  margin: 0;
76  padding: 0;
77  color: var(--color-text-primary);
78  background-color: var(--color-fill-app);
79}
80
81h1, h1 code { font-size: 2.5rem; }
82h2, h2 code { font-size: 2rem; }
83h3, h3 code { font-size: 1.75rem; }
84h4, h4 code { font-size: 1.5rem; }
85h5, h5 code { font-size: 1.25rem; }
86h6, h6 code { font-size: 1rem; }
87
88h1,
89h2,
90h3,
91h4,
92h5,
93h6 {
94  font-weight: 700;
95  line-height: inherit;
96  position: relative;
97  margin: 1.5rem 0 1rem;
98  text-rendering: optimizeLegibility;
99}
100
101h1 code,
102h2 code,
103h3 code,
104h4 code,
105h5 code,
106h6 code {
107  color: inherit;
108  font-family: inherit;
109}
110
111pre,
112tt,
113code,
114.pre,
115span.type,
116a.type {
117  font-family: SFMono-Regular, Menlo, Consolas, "Liberation Mono", "Courier New", monospace;
118  font-size: .9em;
119}
120
121#content {
122  position: relative;
123}
124
125a:link,
126a:active,
127a:visited {
128  color: var(--color-links);
129  text-decoration: none;
130  border-radius: 2px;
131  padding: 1px 3px;
132}
133
134a:hover,
135a:focus {
136  color: var(--white);
137  background-color:var(--green1);
138  outline: none;
139}
140
141strong {
142  font-weight: 700;
143}
144
145code a:hover {
146  background-color: transparent;
147}
148
149em code {
150  font-style: normal;
151}
152
153#changelog #gtoc {
154  display: none;
155}
156
157#gtoc {
158  margin-top: .5rem;
159  margin-bottom: 1rem;
160}
161
162#gtoc ul {
163  list-style: none;
164  margin-left: 0;
165  line-height: 1.5rem;
166}
167
168#gtoc > ul > li {
169  display: inline;
170  border-right: 1px currentColor solid;
171  margin-right: .4rem;
172  padding-right: .4rem;
173}
174
175#gtoc > ul > li:last-child {
176  border-right: none;
177  margin-right: 0;
178  padding-right: 0;
179}
180
181li.version-picker {
182  position: relative;
183}
184
185li.version-picker:hover > a {
186  border-radius: 2px 2px 0 0;
187}
188
189li.version-picker:hover > ol {
190  display: block;
191  z-index: 1;
192}
193
194li.version-picker a span {
195  font-size: .7rem;
196}
197
198ol.version-picker {
199  background-color: var(--color-fill-app);
200  border: 1px solid var(--color-brand-secondary);
201  border-radius: 0 0 2px 2px;
202  display: none;
203  list-style: none;
204  position: absolute;
205  right: 0;
206  top: 100%;
207  width: 100%;
208}
209
210#gtoc ol.version-picker li {
211  display: block;
212  border-right: 0;
213  margin-right: 0;
214}
215
216ol.version-picker li a {
217  border-radius: 0;
218  display: block;
219  margin: 0;
220  padding: .1rem;
221  padding-left: 1rem;
222}
223
224ol.version-picker li:last-child a {
225  border-bottom-right-radius: 1px;
226  border-bottom-left-radius: 1px;
227}
228
229.line {
230  width: calc(100% - 1rem);
231  display: block;
232  padding-bottom: 1px;
233}
234
235.api_stability {
236  color: var(--white) !important;
237  margin: 0 0 1rem;
238  padding: 1rem;
239  line-height: 1.5;
240}
241
242.api_stability * {
243  color: var(--white) !important;
244}
245
246.api_stability a {
247  text-decoration: underline;
248}
249
250.api_stability a:hover,
251.api_stability a:active,
252.api_stability a:focus {
253  background-color: var(--background-color-api-stability-link);
254}
255
256.api_stability a code {
257  background-color: transparent;
258}
259
260.api_stability_0 {
261  background-color: var(--red1);
262}
263
264.api_stability_1 {
265  background-color: var(--red3);
266}
267
268.api_stability_2 {
269  background-color: var(--green2);
270}
271
272.api_stability_3 {
273  background-color: var(--blue1);
274}
275
276.module_stability {
277  vertical-align: middle;
278}
279
280.api_metadata {
281  font-size: .85rem;
282  margin-bottom: 1rem;
283}
284
285.api_metadata span {
286  margin-right: 1rem;
287}
288
289.api_metadata span:last-child {
290  margin-right: 0;
291}
292
293ul.plain {
294  list-style: none;
295}
296
297abbr {
298  border-bottom: 1px dotted #454545;
299}
300
301p {
302  text-rendering: optimizeLegibility;
303  margin: 0 0 1.125rem;
304  line-height: 1.5;
305}
306
307#apicontent > *:last-child {
308  margin-bottom: 0;
309  padding-bottom: 2rem;
310}
311
312table {
313  border-collapse: collapse;
314  margin: 0 0 1.5rem;
315}
316
317th,
318td {
319  border: 1px solid #aaa;
320  padding: .5rem;
321  vertical-align: top;
322}
323
324th {
325  text-align: left;
326}
327
328td {
329  word-break: break-all; /* Fallback if break-word isn't supported */
330  word-break: break-word;
331}
332
333@media only screen and (min-width: 600px) {
334  th,
335  td {
336    padding: .75rem 1rem;
337  }
338
339  td:first-child {
340    word-break: normal;
341  }
342}
343
344ol,
345ul,
346dl {
347  margin: 0 0 .6rem;
348  padding: 0;
349}
350
351ol ul,
352ol ol,
353ol dl,
354ul ul,
355ul ol,
356ul dl,
357dl ul,
358dl ol,
359dl dl {
360  margin-bottom: 0;
361}
362
363ul,
364ol {
365  margin-left: 2rem;
366}
367
368dl dt {
369  position: relative;
370  margin: 1.5rem 0 0;
371}
372
373dl dd {
374  position: relative;
375  margin: 0 1rem;
376}
377
378dd + dt.pre {
379  margin-top: 1.6rem;
380}
381
382#apicontent {
383  padding-top: 1rem;
384}
385
386#apicontent section {
387  content-visibility: auto;
388  contain-intrinsic-size: 1px 5000px;
389}
390
391#apicontent .line {
392  width: calc(50% - 1rem);
393  margin: 1rem 1rem .95rem;
394  background-color: #ccc;
395}
396
397h2 + h2 {
398  margin: 0 0 .5rem;
399}
400
401h3 + h3 {
402  margin: 0 0 .5rem;
403}
404
405h2,
406h3,
407h4,
408h5 {
409  position: relative;
410  padding-right: 40px;
411}
412
413.srclink {
414  float: right;
415  font-size: smaller;
416  margin-right: 30px;
417}
418
419h1 span,
420h2 span,
421h3 span,
422h4 span {
423  position: absolute;
424  display: block;
425  top: 0;
426  right: 0;
427}
428
429h1 span:hover,
430h2 span:hover,
431h3 span:hover,
432h4 span:hover {
433  opacity: 1;
434}
435
436h1 span a,
437h2 span a,
438h3 span a,
439h4 span a {
440  color: #000;
441  text-decoration: none;
442  font-weight: 700;
443}
444
445pre,
446tt,
447code {
448  line-height: 1.5rem;
449  margin: 0;
450  padding: 0;
451}
452
453.pre {
454  line-height: 1.5rem;
455}
456
457pre {
458  padding: 1rem;
459  vertical-align: top;
460  background-color: var(--background-color-highlight);
461  margin: 1rem;
462  overflow-x: auto;
463}
464
465pre > code {
466  padding: 0;
467}
468
469pre + h3 {
470  margin-top: 2.225rem;
471}
472
473code.pre {
474  white-space: pre;
475}
476
477#intro {
478  margin-top: 1.25rem;
479  margin-left: 1rem;
480}
481
482#intro a {
483  color: var(--grey8);
484  font-weight: 700;
485}
486
487hr {
488  background-color: transparent;
489  border: medium none;
490  border-bottom: 1px solid var(--gray5);
491  margin: 0 0 1rem;
492}
493
494#toc > ul {
495  margin-top: 1.5rem;
496}
497
498#toc p {
499  margin: 0;
500}
501
502#toc ul a {
503  text-decoration: none;
504}
505
506#toc ul li {
507  margin-bottom: .666rem;
508  list-style: square outside;
509}
510
511#toc li > ul {
512  margin-top: .666rem;
513}
514
515#toc .stability_0::after {
516  background-color: var(--red2);
517  color: var(--white);
518  content: "deprecated";
519  margin-left: .25rem;
520  padding: 1px 3px;
521  border-radius: 3px;
522}
523#toc .stability_3::after {
524  background-color: var(--blue1);
525  color: var(--white);
526  content: "legacy";
527  margin-left: .25rem;
528  padding: 1px 3px;
529  border-radius: 3px;
530}
531
532#apicontent li {
533  margin-bottom: .5rem;
534}
535
536#apicontent li:last-child {
537  margin-bottom: 0;
538}
539
540tt,
541code {
542  color: #040404;
543  background-color: #f2f2f2;
544  border-radius: 2px;
545  padding: 1px 3px;
546}
547
548.api_stability code {
549  background-color: rgba(0, 0, 0, .1);
550}
551
552a code {
553  color: inherit;
554  background-color: inherit;
555  padding: 0;
556}
557
558.type {
559  line-height: 1.5rem;
560}
561
562#column1.interior {
563  margin-left: 234px;
564  padding: 0 2rem;
565  -webkit-padding-start: 1.5rem;
566}
567
568#column2.interior {
569  width: 234px;
570  background-color: var(--color-fill-side-nav);
571  position: fixed;
572  left: 0;
573  top: 0;
574  bottom: 0;
575  overflow-x: hidden;
576  overflow-y: scroll;
577}
578
579#column2 ul {
580  list-style: none;
581  margin: .9rem 0 .5rem;
582  background-color: var(--color-fill-side-nav);
583}
584
585#column2 > :first-child {
586  margin: 1.25rem;
587  font-size: 1.5rem;
588}
589
590#column2 > ul:nth-child(2) {
591  margin: 1.25rem 0 .5rem;
592}
593
594#column2 > ul:last-child {
595  margin: .9rem 0 1.25rem;
596}
597
598#column2 ul li {
599  padding-left: 1.25rem;
600  margin-bottom: .5rem;
601  padding-bottom: .5rem;
602}
603
604#column2 .line {
605  margin: 0 .5rem;
606  border-color: #707070;
607}
608
609#column2 ul li:last-child {
610  margin-bottom: 0;
611}
612
613#column2 ul li a,
614#column2 ul li a code {
615  color: var(--color-text-nav);
616  border-radius: 0;
617}
618
619#column2 ul li a.active,
620#column2 ul li a.active:hover,
621#column2 ul li a.active:focus {
622  font-weight: 700;
623  color: var(--white);
624  background-color: transparent;
625}
626
627#intro a:hover,
628#intro a:focus,
629#column2 ul li a:hover,
630#column2 ul li a:focus {
631  color: var(--white);
632  background-color: transparent;
633}
634
635span > .mark,
636span > .mark:visited {
637  color: var(--color-text-mark);
638  position: absolute;
639  top: 0;
640  right: 0;
641}
642
643span > .mark:hover,
644span > .mark:focus,
645span > .mark:active {
646  color: var(--color-brand-secondary);
647  background-color: transparent;
648}
649
650th > *:last-child,
651td > *:last-child {
652  margin-bottom: 0;
653}
654
655kbd {
656  background-color: #eee;
657  border-radius: 3px;
658  border: 1px solid #b4b4b4;
659  box-shadow: 0 1px 1px rgba(0, 0, 0, .2);
660  color: #333;
661  display: inline-block;
662  font-size: .85em;
663  font-weight: 700;
664  padding: 2px 4px;
665  white-space: nowrap;
666  vertical-align: middle;
667 }
668
669.changelog > summary {
670  margin: .5rem 0;
671  padding: .5rem 0;
672  cursor: pointer;
673}
674
675/* simpler clearfix */
676.clearfix::after {
677  content: ".";
678  display: block;
679  height: 0;
680  clear: both;
681  visibility: hidden;
682}
683
684/* API reference sidebar */
685@media only screen and (min-width: 1025px) {
686  .apidoc #column2 > .line {
687    pointer-events: none;
688  }
689  .apidoc #column2 > :first-child,
690  .apidoc #column2 > ul,
691  .apidoc #column2 > ul > li {
692    margin: 0;
693    padding: 0;
694  }
695  .apidoc #column2 > :first-child > a[href] {
696    border-radius: 0;
697    padding: 1.25rem 1.4375rem .625rem;
698    display: block;
699  }
700  .apidoc #column2 > ul > li > a[href] {
701    padding: .5rem 1.4375rem;
702    display: block;
703  }
704  .apidoc #column2 > ul > :first-child > a[href] {
705    padding-top: .625rem;
706  }
707  .apidoc #column2 > ul > :last-child > a[href] {
708    padding-bottom: .625rem;
709  }
710  .apidoc #column2 > ul:first-of-type > :last-child  > a[href] {
711    padding-bottom: 1rem;
712  }
713  .apidoc #column2 > ul:nth-of-type(2) > :first-child > a[href] {
714    padding-top: .875rem;
715  }
716  .apidoc #column2 > ul:nth-of-type(2) > :last-child > a[href] {
717    padding-bottom: .9375rem;
718  }
719  .apidoc #column2 > ul:last-of-type > :first-child > a[href] {
720    padding-top: 1rem;
721  }
722  .apidoc #column2 > ul:last-of-type > :last-child > a[href] {
723    padding-bottom: 1.75rem;
724  }
725}
726
727.header-container {
728  display: flex;
729  align-items: center;
730  margin: 1.5rem 0 1rem;
731  justify-content: space-between;
732}
733
734.header-container h1 {
735  margin: 0;
736}
737
738.theme-toggle-btn {
739  border: none;
740  background: transparent;
741  outline: var(--brand3) dotted 2px;
742}
743
744@media only screen and (max-width: 1024px) {
745  #content {
746    overflow: visible;
747  }
748  #column1.interior {
749    margin-left: 0;
750    padding-left: .5rem;
751    padding-right: .5rem;
752    width: auto;
753    overflow-y: visible;
754  }
755  #column2 {
756    display: none;
757  }
758}
759
760.icon {
761  cursor: pointer;
762}
763
764.dark-icon {
765  display: block;
766}
767
768.light-icon {
769  fill: var(--white);
770  display: none;
771}
772
773.dark-mode .dark-icon {
774  display: none;
775}
776
777.dark-mode .light-icon {
778  fill: var(--white);
779  display: block;
780}
781
782.js-flavor-selector {
783  -webkit-appearance: none;
784  appearance: none;
785  float: right;
786  background-image: url(./js-flavor-cjs.svg);
787  background-size: contain;
788  background-repeat: no-repeat;
789  width: 142px;
790  height: 20px;
791}
792.js-flavor-selector:checked {
793  background-image: url(./js-flavor-esm.svg);
794}
795.js-flavor-selector:not(:checked) ~ .mjs,
796.js-flavor-selector:checked ~ .cjs {
797  display: none;
798}
799.dark-mode .js-flavor-selector {
800  filter: invert(1);
801}
802@supports (aspect-ratio: 1 / 1) {
803  .js-flavor-selector {
804    height: 1.5em;
805    width: auto;
806    aspect-ratio: 2719 / 384;
807  }
808}
809
810@media print {
811  html {
812    height: auto;
813    font-size: .75em;
814  }
815  #column2.interior {
816    display: none;
817  }
818  #column1.interior {
819    margin-left: 0;
820    padding: 0;
821    overflow-y: auto;
822  }
823  .api_metadata,
824  #toc,
825  .srclink,
826  #gtoc,
827  .mark {
828    display: none;
829  }
830  h1 {
831    font-size: 2rem;
832  }
833  h2 {
834    font-size: 1.75rem;
835  }
836  h3 {
837    font-size: 1.5rem;
838  }
839  h4 {
840    font-size: 1.3rem;
841  }
842  h5 {
843    font-size: 1.2rem;
844  }
845  h6 {
846    font-size: 1.1rem;
847  }
848  .api_stability {
849    display: inline-block;
850  }
851  .api_stability a {
852    text-decoration: none;
853  }
854  a {
855    color: inherit;
856  }
857  #apicontent {
858    overflow: hidden;
859  }
860  .js-flavor-selector {
861    display: none;
862  }
863  .js-flavor-selector + * {
864    margin-bottom: 2rem;
865    padding-bottom: 2rem;
866    border-bottom: 1px solid var(--color-text-primary);
867  }
868  .js-flavor-selector ~ * {
869    display: block !important;
870    background-position: top right;
871    background-size: 142px 20px;
872    background-repeat: no-repeat;
873  }
874  .js-flavor-selector ~ .cjs {
875    background-image: url(./js-flavor-cjs.svg);
876  }
877  .js-flavor-selector ~ .mjs {
878    background-image: url(./js-flavor-esm.svg);
879  }
880}
881