1/* @group Fundamentals */
2
3* { margin: 0; padding: 0 }
4
5/* Is this portable? */
6html {
7  background-color: white;
8  width: 100%;
9  height: 100%;
10}
11
12body {
13  background: #fefefe;
14  color: #111;
15  text-align: left;
16  min-height: 100vh;
17  position: relative;
18  -webkit-text-size-adjust: 100%;
19  -webkit-font-feature-settings: "kern" 1, "liga" 0;
20  -moz-font-feature-settings: "kern" 1, "liga" 0;
21  -o-font-feature-settings: "kern" 1, "liga" 0;
22  font-feature-settings: "kern" 1, "liga" 0;
23  letter-spacing: 0.0015rem;
24}
25
26#content a {
27  overflow-wrap: break-word;
28}
29
30p {
31  margin: 0.8em 0;
32}
33
34ul, ol {
35  margin: 0.8em 0 0.8em 2em;
36}
37
38dl {
39  margin: 0.8em 0;
40}
41
42dt {
43  font-weight: bold;
44}
45dd {
46  margin-left: 2em;
47}
48
49a { text-decoration: none; }
50a[href]:link { color: #9E358F; }
51a[href]:visited {color: #6F5F9C; }
52a[href]:hover { text-decoration:underline; }
53
54a[href].def:link, a[href].def:visited { color: rgba(69, 59, 97, 0.8); }
55a[href].def:hover { color: rgb(78, 98, 114); }
56
57/* @end */
58
59/* @group Show and hide with JS */
60
61body.js-enabled .hide-when-js-enabled {
62  display: none;
63}
64
65/* @end */
66
67
68/* @group responsive */
69
70#package-header .caption {
71  margin: 0px 1em 0 2em;
72}
73
74@media only screen and (min-width: 1280px) {
75  #content {
76    width: 63vw;
77    max-width: 1450px;
78  }
79
80  #table-of-contents {
81    position: fixed;
82    max-width: 10vw;
83    top: 10.2em;
84    left: 2em;
85    bottom: 1em;
86    overflow-y: auto;
87  }
88
89  #synopsis {
90    display: block;
91    position: fixed;
92    float: left;
93    top: 5em;
94    bottom: 1em;
95    right: 0;
96    max-width: 65vw;
97    overflow-y: auto;
98    /* Ensure that synopsis covers everything (including MathJAX markup) */
99    z-index: 1;
100  }
101
102  #synopsis .show {
103    border: 1px solid #5E5184;
104    padding: 0.7em;
105    max-height: 65vh;
106  }
107
108}
109
110@media only screen and (max-width: 1279px) {
111  #content {
112    width: 80vw;
113  }
114
115  #synopsis {
116    display: block;
117    padding: 0;
118    position: relative;
119    margin: 0;
120    width: 100%;
121  }
122}
123
124@media only screen and (max-width: 999px) {
125  #content {
126    width: 93vw;
127  }
128}
129
130
131/* menu for wider screens
132
133  Display the package name at the left and the menu links at the right,
134  inline with each other:
135  The package name                                   Source . Contents . Index
136*/
137@media only screen and (min-width: 1000px) {
138  #package-header {
139      text-align: left;
140      white-space: nowrap;
141      height: 40px;
142      padding: 4px 1.5em 0px 1.5em;
143      overflow: visible;
144
145      display: flex;
146      justify-content: space-between;
147      align-items: center;
148  }
149
150  #package-header .caption {
151    display: inline-block;
152    margin: 0;
153  }
154
155  #package-header ul.links {
156    margin: 0;
157    display: inline-table;
158  }
159
160  #package-header .caption + ul.links {
161    margin-left: 1em;
162  }
163}
164
165/* menu for smaller screens
166
167Display the package name on top of the menu links and center both elements:
168                  The package name
169              Source . Contents . Index
170*/
171@media only screen and (max-width: 999px) {
172  #package-header {
173    text-align: center;
174    padding: 6px 0 4px 0;
175    overflow: hidden;
176  }
177
178  #package-header ul.links {
179    display: block;
180    text-align: center;
181    margin: 0;
182
183    /* Hide scrollbar but allow scrolling menu links horizontally */
184    white-space: nowrap;
185    overflow-x: auto;
186    overflow-y: hidden;
187    margin-bottom: -17px;
188    height: 50px;
189  }
190
191  #package-header .caption {
192    display: block;
193    margin: 4px 0;
194    text-align: center;
195  }
196
197  #package-header ul.links::-webkit-scrollbar {
198    display: none;
199  }
200
201  #package-header ul.links li:first-of-type {
202    padding-left: 1em;
203  }
204
205  #package-header ul.links li:last-of-type {
206    /*
207    The last link of the menu should offer the same distance to the right
208    as the #package-header enforces at the left.
209    */
210    padding-right: 1em;
211  }
212
213  #package-header .caption + ul.links {
214    padding-top: 9px;
215  }
216
217  #module-header table.info {
218    float: none;
219    top: 0;
220    margin: 0 auto;
221    overflow: hidden;
222    max-width: 80vw;
223  }
224}
225
226/* @end */
227
228
229/* @group Fonts & Sizes */
230
231/* Basic technique & IE workarounds from YUI 3
232   For reasons, see:
233      http://yui.yahooapis.com/3.1.1/build/cssfonts/fonts.css
234 */
235
236 body, button {
237   font: 400 14px/1.4 'PT Sans',
238     /* Fallback Font Stack */
239     -apple-system,
240	  BlinkMacSystemFont,
241     'Segoe UI',
242	  Roboto,
243	  Oxygen-Sans,
244	  Cantarell,
245	  'Helvetica Neue',
246     sans-serif;
247   *font-size: medium; /* for IE */
248   *font:x-small; /* for IE in quirks mode */
249 }
250
251h1 { font-size: 146.5%; /* 19pt */ }
252h2 { font-size: 131%;   /* 17pt */ }
253h3 { font-size: 116%;   /* 15pt */ }
254h4 { font-size: 100%;   /* 13pt */ }
255h5 { font-size: 100%;   /* 13pt */ }
256
257table {
258	font-size:inherit;
259	font:100%;
260}
261
262pre, code, kbd, samp, tt, .src {
263	font-family:monospace;
264}
265
266.links, .link {
267  font-size: 85%; /* 11pt */
268}
269
270#module-header .caption {
271  font-size: 182%; /* 24pt */
272}
273
274#module-header .caption sup {
275  font-size: 80%;
276  font-weight: normal;
277}
278
279#package-header #page-menu a:link, #package-header #page-menu a:visited { color: white; }
280
281
282.info {
283  font-size: 90%;
284}
285
286
287/* @end */
288
289/* @group Common */
290
291.caption, h1, h2, h3, h4, h5, h6, summary {
292  font-weight: bold;
293  color: #5E5184;
294  margin: 1.5em 0 1em 0;
295}
296
297
298* + h1, * + h2, * + h3, * + h4, * + h5, * + h6 {
299  margin-top: 2em;
300}
301
302h1 + h2, h2 + h3, h3 + h4, h4 + h5, h5 + h6 {
303  margin-top: inherit;
304}
305
306ul li + li {
307	margin-top: 0.2rem;
308}
309
310ul + p {
311  margin-top: 0.93em;
312}
313
314p + ul {
315  margin-top: 0.5em;
316}
317
318p {
319  margin-top: 0.7rem;
320}
321
322ul, ol {
323  margin: 0.8em 0 0.8em 2em;
324}
325
326ul.links {
327  list-style: none;
328  text-align: left;
329  font-size: 0.95em;
330}
331
332#package-header ul.links, #package-header ul.links button {
333  font-size: 1rem;
334}
335
336ul.links li {
337  display: inline;
338  white-space: nowrap;
339  padding: 0;
340}
341
342ul.links > li + li:before {
343  content: '\00B7';
344}
345
346ul.links li a {
347  padding: 0.2em 0.5em;
348}
349
350.hide { display: none; }
351.show { display: inherit; }
352.clear { clear: both; }
353
354.collapser:before, .expander:before, .noexpander:before {
355  font-size: 1.2em;
356  color: #9C5791;
357  display: inline-block;
358  padding-right: 7px;
359}
360
361.collapser:before {
362  content: '▿';
363}
364.expander:before {
365  content: '▹';
366}
367.noexpander:before {
368  content: '▿';
369  visibility: hidden;
370}
371
372.collapser, .expander {
373  cursor: pointer;
374}
375
376.instance.collapser, .instance.expander {
377  margin-left: 0px;
378  background-position: left center;
379  min-width: 9px;
380  min-height: 9px;
381}
382
383summary {
384  cursor: pointer;
385  outline: none;
386}
387
388pre {
389  padding: 0.5rem 1rem;
390  margin: 1em 0 0 0;
391  background-color: #f7f7f7;
392  overflow: auto;
393  border: 1px solid #ddd;
394  border-radius: 0.3em;
395}
396
397pre + p {
398  margin-top: 1em;
399}
400
401pre + pre {
402  margin-top: 0.5em;
403}
404
405blockquote {
406  border-left: 3px solid #c7a5d3;
407  background-color: #eee4f1;
408  margin: 0.5em;
409  padding: 0.0005em 0.3em 0.5em 0.5em;
410}
411
412.src {
413  background: #f2f2f2;
414  padding: 0.2em 0.5em;
415}
416
417.keyword { font-weight: normal; }
418.def { font-weight: bold; }
419
420@media print {
421  #footer { display: none; }
422}
423
424/* @end */
425
426/* @group Page Structure */
427
428#content {
429  margin: 3em auto 6em auto;
430  padding: 0;
431}
432
433#package-header {
434  background: #5E5184;
435  border-bottom: 5px solid rgba(69, 59, 97, 0.5);
436  color: #ddd;
437  position: relative;
438  font-size: 1.2em;
439  text-align: left;
440  margin: 0 auto;
441}
442
443#package-header .caption {
444  color: white;
445  font-style: normal;
446  font-size: 1rem;
447  font-weight: bold;
448}
449
450#module-header .caption {
451  font-weight: bold;
452  border-bottom: 1px solid #ddd;
453}
454
455table.info {
456  float: right;
457  padding: 0.5em 1em;
458  border: 1px solid #ddd;
459  color: rgb(78,98,114);
460  background-color: #fff;
461  max-width: 60%;
462  border-spacing: 0;
463  position: relative;
464  top: -0.78em;
465  margin: 0 0 0 2em;
466}
467
468.info th {
469  padding: 0 1em 0 0;
470  text-align: right;
471}
472
473#style-menu li {
474	display: block;
475	border-style: none;
476	list-style-type: none;
477}
478
479#footer {
480  background: #ededed;
481  border-top: 1px solid #aaa;
482  padding: 0.5em 0;
483  color: #222;
484  text-align: center;
485  width: 100%;
486  height: 3em;
487  margin-top: 3em;
488  position: relative;
489  clear: both;
490}
491
492/* @end */
493
494/* @group Front Matter */
495
496#synopsis .caption,
497#contents-list .caption {
498  font-size: 1rem;
499}
500
501#synopsis, #table-of-contents {
502  font-size: 16px;
503}
504
505#contents-list {
506  background: #f4f4f4;
507  padding: 1em;
508  margin: 0;
509}
510
511#contents-list .caption {
512  text-align: left;
513  margin: 0;
514}
515
516#contents-list ul {
517  list-style: none;
518  margin: 0;
519  margin-top: 10px;
520  font-size: 14px;
521}
522
523#contents-list ul ul {
524  margin-left: 1.5em;
525}
526
527#description .caption {
528  display: none;
529}
530
531#synopsis summary {
532  display: block;
533  float: right;
534  width: 29px;
535  color: rgba(255,255,255,0);
536  height: 110px;
537  margin: 0;
538  font-size: 1px;
539  padding: 0;
540  background: url(synopsis.png) no-repeat 0px -8px;
541}
542
543#synopsis details[open] > summary {
544  background: url(synopsis.png) no-repeat -75px -8px;
545}
546
547#synopsis ul {
548  height: 100%;
549  overflow: auto;
550  padding: 0.5em;
551  margin: 0;
552}
553
554#synopsis ul ul {
555  overflow: hidden;
556}
557
558#synopsis ul,
559#synopsis ul li.src {
560  background-color: rgb(250,247,224);
561  white-space: nowrap;
562  list-style: none;
563  margin-left: 0;
564}
565
566#interface td.src {
567  white-space: nowrap;
568}
569
570/* @end */
571
572/* @group Main Content */
573
574#interface div.top + div.top {
575  margin-top: 1.5em;
576}
577
578#interface p + div.top,
579#interface h1 + div.top,
580#interface h2 + div.top,
581#interface h3 + div.top,
582#interface h4 + div.top,
583#interface h5 + div.top {
584	margin-top: 1em;
585}
586#interface .src .selflink,
587#interface .src .link {
588  float: right;
589  color: #888;
590  padding: 0 7px;
591  -moz-user-select: none;
592  font-weight: bold;
593  line-height: 30px;
594}
595#interface .src .selflink {
596  margin: 0 -0.5em 0 0.5em;
597}
598
599#interface span.fixity {
600  color: #919191;
601  border-left: 1px solid #919191;
602  padding: 0.2em 0.5em 0.2em 0.5em;
603  margin: 0 -1em 0 1em;
604}
605
606#interface span.rightedge {
607  border-left: 1px solid #919191;
608  padding: 0.2em 0 0.2em 0;
609  margin: 0 0 0 1em;
610}
611
612#interface table { border-spacing: 2px; }
613#interface td {
614  vertical-align: top;
615  padding-left: 0.5em;
616}
617
618#interface td.doc p {
619  margin: 0;
620}
621#interface td.doc p + p {
622  margin-top: 0.8em;
623}
624
625.doc table {
626  border-collapse: collapse;
627  border-spacing: 0px;
628}
629
630.doc th,
631.doc td {
632  padding: 5px;
633  border: 1px solid #ddd;
634}
635
636.doc th {
637  background-color: #f0f0f0;
638}
639
640.clearfix:after {
641  clear: both;
642  content: " ";
643  display: block;
644  height: 0;
645  visibility: hidden;
646}
647
648.subs, .top > .doc, .subs > .doc {
649  padding-left: 1em;
650  border-left: 1px solid gainsboro;
651  margin-bottom: 1em;
652}
653
654.top .subs {
655  margin-bottom: 0.6em;
656}
657
658.subs.fields ul {
659  list-style: none;
660  display: table;
661  margin: 0;
662}
663
664.subs.fields ul li {
665  display: table-row;
666}
667
668.subs ul li dfn {
669  display: table-cell;
670  font-style: normal;
671  font-weight: bold;
672  margin: 1px 0;
673  white-space: nowrap;
674}
675
676.subs ul li > .doc {
677  display: table-cell;
678  padding-left: 0.5em;
679  margin-bottom: 0.5em;
680}
681
682.subs ul li > .doc p {
683  margin: 0;
684}
685
686.subs .subs p.src {
687  border: none;
688  background-color: #f8f8f8;
689}
690
691.subs .subs .caption {
692  margin-top: 1em ;
693  margin-bottom: 0px;
694}
695
696.subs p.caption {
697    margin-top: 0;
698}
699
700.subs .subs .caption + .src {
701  margin: 0px;
702  margin-top: 8px;
703}
704
705.subs .subs .src + .src {
706  margin: 7px 0 0 0;
707}
708
709/* Render short-style data instances */
710.inst ul {
711  height: 100%;
712  padding: 0.5em;
713  margin: 0;
714}
715
716.inst, .inst li {
717  list-style: none;
718  margin-left: 1em;
719}
720
721/* Workaround for bug in Firefox (issue #384) */
722.inst-left {
723  float: left;
724}
725
726.top p.src {
727  border-bottom: 3px solid #e5e5e5;
728  line-height: 2rem;
729  margin-bottom: 1em;
730}
731
732.warning {
733  color: red;
734}
735
736.arguments {
737  margin-top: -0.4em;
738}
739.arguments .caption {
740  display: none;
741}
742
743.fields { padding-left: 1em; }
744
745.fields .caption { display: none; }
746
747.fields p { margin: 0 0; }
748
749/* this seems bulky to me
750.methods, .constructors {
751  background: #f8f8f8;
752  border: 1px solid #eee;
753}
754*/
755
756/* @end */
757
758/* @group Auxillary Pages */
759
760
761.extension-list {
762    list-style-type: none;
763    margin-left: 0;
764}
765
766#mini {
767  margin: 0 auto;
768  padding: 0 1em 1em;
769}
770
771#mini > * {
772  font-size: 93%; /* 12pt */
773}
774
775#mini #module-list .caption,
776#mini #module-header .caption {
777  font-size: 125%; /* 15pt */
778}
779
780#mini #interface h1,
781#mini #interface h2,
782#mini #interface h3,
783#mini #interface h4 {
784  font-size: 109%; /* 13pt */
785  margin: 1em 0 0;
786}
787
788#mini #interface .top,
789#mini #interface .src {
790  margin: 0;
791}
792
793#mini #module-list ul {
794  list-style: none;
795  margin: 0;
796}
797
798#alphabet ul {
799	list-style: none;
800	padding: 0;
801	margin: 0.5em 0 0;
802	text-align: center;
803}
804
805#alphabet li {
806	display: inline;
807	margin: 0 0.25em;
808}
809
810#alphabet a {
811	font-weight: bold;
812}
813
814#index .caption,
815#module-list .caption { font-size: 131%; /* 17pt */ }
816
817#index table {
818  margin-left: 2em;
819}
820
821#index .src {
822  font-weight: bold;
823}
824#index .alt {
825  font-size: 77%; /* 10pt */
826  font-style: italic;
827  padding-left: 2em;
828}
829
830#index td + td {
831  padding-left: 1em;
832}
833
834#module-list ul {
835  list-style: none;
836  margin: 0 0 0 2em;
837}
838
839#module-list li {
840  clear: right;
841}
842
843#module-list span.collapser,
844#module-list span.expander {
845  background-position: 0 0.3em;
846}
847
848#module-list .package {
849  float: right;
850}
851
852:target {
853  background: -webkit-linear-gradient(top, transparent 0%, transparent 65%, #fbf36d 60%, #fbf36d 100%);
854  background: -moz-linear-gradient(top, transparent 0%, transparent 65%, #fbf36d 60%, #fbf36d 100%);
855  background: -o-linear-gradient(top, transparent 0%, transparent 65%, #fbf36d 60%, #fbf36d 100%);
856  background: -ms-linear-gradient(top, transparent 0%, transparent 65%, #fbf36d 60%, #fbf36d 100%);
857  background: linear-gradient(to bottom, transparent 0%, transparent 65%, #fbf36d 60%, #fbf36d 100%);
858}
859
860:target:hover {
861  background: -webkit-linear-gradient(top, transparent 0%, transparent 0%, #fbf36d 0%, #fbf36d 100%);
862  background: -moz-linear-gradient(top, transparent 0%, transparent 0%, #fbf36d 0%, #fbf36d 100%);
863  background: -o-linear-gradient(top, transparent 0%, transparent 0%, #fbf36d 0%, #fbf36d 100%);
864  background: -ms-linear-gradient(top, transparent 0%, transparent 0%, #fbf36d 0%, #fbf36d 100%);
865  background: linear-gradient(to bottom, transparent 0%, transparent 0%, #fbf36d 0%, #fbf36d 100%);
866}
867
868/* @end */
869
870/* @group Dropdown menus */
871
872#preferences-menu, #style-menu {
873  width: 25em;
874  overflow-y: auto;
875}
876
877/* @end */
878