nimdoc.css 38 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051
  1. /*
  2. Stylesheet for use with Docutils/rst2html.
  3. See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to
  4. customize this style sheet.
  5. Modified from Chad Skeeters' rst2html-style
  6. https://bitbucket.org/cskeeters/rst2html-style/
  7. Modified by Boyd Greenfield and narimiran
  8. */
  9. :root {
  10. --primary-background: #fff;
  11. --secondary-background: ghostwhite;
  12. --third-background: #e8e8e8;
  13. --info-background: #50c050;
  14. --warning-background: #c0a000;
  15. --error-background: #e04040;
  16. --border: #dde;
  17. --text: #222;
  18. --anchor: #07b;
  19. --anchor-focus: #607c9f;
  20. --input-focus: #1fa0eb;
  21. --strong: #3c3c3c;
  22. --hint: #9A9A9A;
  23. --nim-sprite-base64: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAN4AAAA9CAYAAADCt9ebAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFFmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDggNzkuMTY0MDM2LCAyMDE5LzA4LzEzLTAxOjA2OjU3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjEuMCAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDE5LTEyLTAzVDAxOjAzOjQ4KzAxOjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOS0xMi0wM1QwMjoyODo0MSswMTowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOS0xMi0wM1QwMjoyODo0MSswMTowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozMzM0ZjAxYS0yMDExLWE1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");
  24. --keyword: #5e8f60;
  25. --identifier: #222;
  26. --comment: #484a86;
  27. --operator: #155da4;
  28. --punctuation: black;
  29. --other: black;
  30. --escapeSequence: #c4891b;
  31. --number: #252dbe;
  32. --literal: #a4255b;
  33. --program: #6060c0;
  34. --option: #508000;
  35. --raw-data: #a4255b;
  36. --clipboard-image-normal: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' style='color: black' fill='none' viewBox='0 0 24 24' stroke='currentColor'%3E %3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2' /%3E %3C/svg%3E");
  37. --clipboard-image-selected: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' style='color: black' viewBox='0 0 20 20' fill='currentColor'%3E %3Cpath d='M8 3a1 1 0 011-1h2a1 1 0 110 2H9a1 1 0 01-1-1z' /%3E %3Cpath d='M6 3a2 2 0 00-2 2v11a2 2 0 002 2h8a2 2 0 002-2V5a2 2 0 00-2-2 3 3 0 01-3 3H9a3 3 0 01-3-3z' /%3E %3C/svg%3E");
  38. --clipboard-image: var(--clipboard-image-normal)
  39. }
  40. [data-theme="dark"] {
  41. --primary-background: #171921;
  42. --secondary-background: #1e202a;
  43. --third-background: #2b2e3b;
  44. --info-background: #008000;
  45. --warning-background: #807000;
  46. --error-background: #c03000;
  47. --border: #0e1014;
  48. --text: #fff;
  49. --anchor: #8be9fd;
  50. --anchor-focus: #8be9fd;
  51. --input-focus: #8be9fd;
  52. --strong: #bd93f9;
  53. --hint: #7A7C85;
  54. --nim-sprite-base64: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAARMAAABMCAYAAABOBlMuAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFFmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDggNzkuMTY0MDM2LCAyMDE5LzA4LzEzLTAxOjA2OjU3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjEuMCAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDE5LTEyLTAzVDAxOjE4OjIyKzAxOjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOS0xMi0wM1QwMToyMDoxMCswMTowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOS0xMi0wM1QwMToyMDoxMCswMTowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDplZGViMzU3MC1iNmZjLWQy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");
  55. --keyword: #ff79c6;
  56. --identifier: #f8f8f2;
  57. --comment: #6272a4;
  58. --operator: #ff79c6;
  59. --punctuation: #f8f8f2;
  60. --other: #f8f8f2;
  61. --escapeSequence: #bd93f9;
  62. --number: #bd93f9;
  63. --literal: #f1fa8c;
  64. --program: #9090c0;
  65. --option: #90b010;
  66. --raw-data: #8be9fd;
  67. --clipboard-image-normal: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' style='color: lightgray' fill='none' viewBox='0 0 24 24' stroke='currentColor'%3E %3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2' /%3E %3C/svg%3E");
  68. --clipboard-image-selected: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' style='color: lightgray' viewBox='0 0 20 20' fill='currentColor'%3E %3Cpath d='M8 3a1 1 0 011-1h2a1 1 0 110 2H9a1 1 0 01-1-1z' /%3E %3Cpath d='M6 3a2 2 0 00-2 2v11a2 2 0 002 2h8a2 2 0 002-2V5a2 2 0 00-2-2 3 3 0 01-3 3H9a3 3 0 01-3-3z' /%3E %3C/svg%3E");
  69. --clipboard-image: var(--clipboard-image-normal);
  70. }
  71. .theme-switch-wrapper {
  72. display: flex;
  73. align-items: center;
  74. }
  75. .theme-switch-wrapper em {
  76. margin-left: 10px;
  77. font-size: 1rem;
  78. }
  79. .theme-switch {
  80. display: inline-block;
  81. height: 22px;
  82. position: relative;
  83. width: 50px;
  84. }
  85. .theme-switch input {
  86. display: none;
  87. }
  88. .slider {
  89. background-color: #ccc;
  90. bottom: 0;
  91. cursor: pointer;
  92. left: 0;
  93. position: absolute;
  94. right: 0;
  95. top: 0;
  96. transition: .4s;
  97. }
  98. .slider:before {
  99. background-color: #fff;
  100. bottom: 4px;
  101. content: "";
  102. height: 13px;
  103. left: 4px;
  104. position: absolute;
  105. transition: .4s;
  106. width: 13px;
  107. }
  108. input:checked + .slider {
  109. background-color: #66bb6a;
  110. }
  111. input:checked + .slider:before {
  112. transform: translateX(26px);
  113. }
  114. .slider.round {
  115. border-radius: 17px;
  116. }
  117. .slider.round:before {
  118. border-radius: 50%;
  119. }
  120. html {
  121. font-size: 100%;
  122. -webkit-text-size-adjust: 100%;
  123. -ms-text-size-adjust: 100%; }
  124. body {
  125. font-family: "Lato", "Helvetica Neue", "HelveticaNeue", Helvetica, Arial, sans-serif;
  126. font-weight: 400;
  127. font-size: 1.125em;
  128. line-height: 1.5;
  129. color: var(--text);
  130. background-color: var(--primary-background); }
  131. /* Skeleton grid */
  132. .container {
  133. position: relative;
  134. width: 100%;
  135. max-width: 1050px;
  136. margin: 0 auto;
  137. padding: 0;
  138. box-sizing: border-box; }
  139. .column,
  140. .columns {
  141. width: 100%;
  142. float: left;
  143. box-sizing: border-box;
  144. margin-left: 1%;
  145. }
  146. .column:first-child,
  147. .columns:first-child {
  148. margin-left: 0; }
  149. .three.columns {
  150. width: 22%;
  151. }
  152. .nine.columns {
  153. width: 77.0%; }
  154. .twelve.columns {
  155. width: 100%;
  156. margin-left: 0; }
  157. @media screen and (max-width: 860px) {
  158. .three.columns {
  159. display: none;
  160. }
  161. .nine.columns {
  162. width: 98.0%;
  163. }
  164. body {
  165. font-size: 1em;
  166. line-height: 1.35;
  167. }
  168. }
  169. cite {
  170. font-style: italic !important; }
  171. /* Nim search input */
  172. div#searchInputDiv {
  173. margin-bottom: 1em;
  174. }
  175. input#searchInput {
  176. width: 80%;
  177. }
  178. /*
  179. * Some custom formatting for input forms.
  180. * This also fixes input form colors on Firefox with a dark system theme on Linux.
  181. */
  182. input {
  183. -moz-appearance: none;
  184. background-color: var(--secondary-background);
  185. color: var(--text);
  186. border: 1px solid var(--border);
  187. font-family: "Lato", "Helvetica Neue", "HelveticaNeue", Helvetica, Arial, sans-serif;
  188. font-size: 0.9em;
  189. padding: 6px;
  190. }
  191. input:focus {
  192. border: 1px solid var(--input-focus);
  193. box-shadow: 0 0 3px var(--input-focus);
  194. }
  195. select {
  196. -moz-appearance: none;
  197. background-color: var(--secondary-background);
  198. color: var(--text);
  199. border: 1px solid var(--border);
  200. font-family: "Lato", "Helvetica Neue", "HelveticaNeue", Helvetica, Arial, sans-serif;
  201. font-size: 0.9em;
  202. padding: 6px;
  203. }
  204. select:focus {
  205. border: 1px solid var(--input-focus);
  206. box-shadow: 0 0 3px var(--input-focus);
  207. }
  208. /* Docgen styles */
  209. :target {
  210. border: 2px solid #B5651D;
  211. border-style: dotted;
  212. }
  213. /* Links */
  214. a {
  215. color: var(--anchor);
  216. text-decoration: none;
  217. }
  218. a span.Identifier {
  219. text-decoration: underline;
  220. text-decoration-color: #aab;
  221. }
  222. a.reference-toplevel {
  223. font-weight: bold;
  224. }
  225. a.nimdoc {
  226. word-spacing: 0.3em;
  227. }
  228. a.toc-backref {
  229. text-decoration: none;
  230. color: var(--text); }
  231. a.link-seesrc {
  232. color: #607c9f;
  233. font-size: 0.9em;
  234. font-style: italic; }
  235. a:hover,
  236. a:focus {
  237. color: var(--anchor-focus);
  238. text-decoration: underline; }
  239. a:hover span.Identifier {
  240. color: var(--anchor);
  241. }
  242. sub,
  243. sup {
  244. position: relative;
  245. font-size: 75%;
  246. line-height: 0;
  247. vertical-align: baseline; }
  248. sup {
  249. top: -0.5em; }
  250. sub {
  251. bottom: -0.25em; }
  252. img {
  253. width: auto;
  254. height: auto;
  255. max-width: 100%;
  256. vertical-align: middle;
  257. border: 0;
  258. -ms-interpolation-mode: bicubic; }
  259. @media print {
  260. * {
  261. color: black !important;
  262. text-shadow: none !important;
  263. background: transparent !important;
  264. box-shadow: none !important; }
  265. a,
  266. a:visited {
  267. text-decoration: underline; }
  268. a[href]:after {
  269. content: " (" attr(href) ")"; }
  270. abbr[title]:after {
  271. content: " (" attr(title) ")"; }
  272. .ir a:after,
  273. a[href^="javascript:"]:after,
  274. a[href^="#"]:after {
  275. content: ""; }
  276. pre,
  277. blockquote {
  278. border: 1px solid #999;
  279. page-break-inside: avoid; }
  280. thead {
  281. display: table-header-group; }
  282. tr,
  283. img {
  284. page-break-inside: avoid; }
  285. img {
  286. max-width: 100% !important; }
  287. @page {
  288. margin: 0.5cm; }
  289. h1 {
  290. page-break-before: always; }
  291. h1.title {
  292. page-break-before: avoid; }
  293. p,
  294. h2,
  295. h3 {
  296. orphans: 3;
  297. widows: 3; }
  298. h2,
  299. h3 {
  300. page-break-after: avoid; }
  301. }
  302. p {
  303. margin-top: 0.5em;
  304. margin-bottom: 0.5em;
  305. }
  306. small {
  307. font-size: 85%; }
  308. strong {
  309. font-weight: 600;
  310. font-size: 0.95em;
  311. color: var(--strong);
  312. }
  313. em {
  314. font-style: italic; }
  315. h1 {
  316. font-size: 1.8em;
  317. font-weight: 400;
  318. padding-bottom: .25em;
  319. border-bottom: 6px solid var(--third-background);
  320. margin-top: 2.5em;
  321. margin-bottom: 1em;
  322. line-height: 1.2em; }
  323. h1.title {
  324. padding-bottom: 1em;
  325. border-bottom: 0px;
  326. font-size: 2.5em;
  327. text-align: center;
  328. font-weight: 900;
  329. margin-top: 0.75em;
  330. margin-bottom: 0em;
  331. }
  332. h2 {
  333. font-size: 1.3em;
  334. margin-top: 2em; }
  335. h2.subtitle {
  336. margin-top: 0em;
  337. text-align: center; }
  338. h3 {
  339. font-size: 1.125em;
  340. font-style: italic;
  341. margin-top: 1.5em; }
  342. h4 {
  343. font-size: 1.125em;
  344. margin-top: 1em; }
  345. h5 {
  346. font-size: 1.125em;
  347. margin-top: 0.75em; }
  348. h6 {
  349. font-size: 1.1em; }
  350. ul,
  351. ol {
  352. padding: 0;
  353. margin-top: 0.5em;
  354. margin-left: 0.75em; }
  355. ul ul,
  356. ul ol,
  357. ol ol,
  358. ol ul {
  359. margin-bottom: 0;
  360. margin-left: 1.25em; }
  361. ul.simple > li {
  362. list-style-type: circle;
  363. }
  364. ul.simple-boot li {
  365. list-style-type: none;
  366. margin-left: 0em;
  367. margin-bottom: 0.5em;
  368. }
  369. ol.simple > li, ul.simple > li {
  370. margin-bottom: 0.2em;
  371. margin-left: 0.4em }
  372. ul.simple.simple-toc > li {
  373. margin-top: 1em;
  374. }
  375. ul.simple-toc {
  376. list-style: none;
  377. font-size: 0.9em;
  378. margin-left: -0.3em;
  379. margin-top: 1em; }
  380. ul.simple-toc > li {
  381. list-style-type: none;
  382. }
  383. ul.simple-toc-section {
  384. list-style-type: circle;
  385. margin-left: 0.8em;
  386. color: #6c9aae; }
  387. ul.nested-toc-section {
  388. list-style-type: circle;
  389. margin-left: -0.75em;
  390. color: var(--text);
  391. }
  392. ul.nested-toc-section > li {
  393. margin-left: 1.25em;
  394. }
  395. ol.arabic {
  396. list-style: decimal; }
  397. ol.loweralpha {
  398. list-style: lower-alpha; }
  399. ol.upperalpha {
  400. list-style: upper-alpha; }
  401. ol.lowerroman {
  402. list-style: lower-roman; }
  403. ol.upperroman {
  404. list-style: upper-roman; }
  405. ul.auto-toc {
  406. list-style-type: none; }
  407. dl {
  408. margin-bottom: 1.5em; }
  409. dt {
  410. margin-bottom: -0.5em;
  411. margin-left: 0.0em; }
  412. dd {
  413. margin-left: 2.0em;
  414. margin-bottom: 3.0em;
  415. margin-top: 0.5em; }
  416. hr {
  417. margin: 2em 0;
  418. border: 0;
  419. border-top: 1px solid #aaa; }
  420. hr.footnote {
  421. width: 25%;
  422. border-top: 0.15em solid #999;
  423. margin-bottom: 0.15em;
  424. margin-top: 0.15em;
  425. }
  426. div.footnote-group {
  427. margin-left: 1em; }
  428. div.footnote-label {
  429. display: inline-block;
  430. min-width: 1.7em;
  431. }
  432. div.option-list {
  433. border: 0.1em solid var(--border);
  434. }
  435. div.option-list-item {
  436. padding-left: 12em;
  437. padding-right: 0;
  438. padding-bottom: 0.3em;
  439. padding-top: 0.3em;
  440. }
  441. div.odd {
  442. background-color: var(--secondary-background);
  443. }
  444. div.option-list-label {
  445. margin-left: -11.5em;
  446. margin-right: 0em;
  447. min-width: 11.5em;
  448. display: inline-block;
  449. vertical-align: top;
  450. }
  451. div.option-list-description {
  452. width: calc(100% - 1em);
  453. padding-left: 1em;
  454. padding-right: 0;
  455. display: inline-block;
  456. }
  457. blockquote {
  458. font-size: 0.9em;
  459. font-style: italic;
  460. padding-left: 0.5em;
  461. margin-left: 0;
  462. border-left: 5px solid #bbc;
  463. }
  464. .pre, span.tok {
  465. font-family: "Source Code Pro", Monaco, Menlo, Consolas, "Courier New", monospace;
  466. font-weight: 500;
  467. font-size: 0.85em;
  468. color: var(--text);
  469. background-color: var(--third-background);
  470. padding-left: 3px;
  471. padding-right: 3px;
  472. border-radius: 4px;
  473. }
  474. span.tok {
  475. border: 1px solid #808080;
  476. padding-bottom: 0.1em;
  477. margin-right: 0.2em;
  478. }
  479. .copyToClipBoard {
  480. position: relative;
  481. }
  482. pre {
  483. font-family: "Source Code Pro", Monaco, Menlo, Consolas, "Courier New", monospace;
  484. color: var(--text);
  485. font-weight: 500;
  486. display: inline-block;
  487. box-sizing: border-box;
  488. min-width: 100%;
  489. padding: 0.5em;
  490. margin-top: 0.5em;
  491. margin-bottom: 0.5em;
  492. font-size: 0.85em;
  493. white-space: pre !important;
  494. overflow-y: hidden;
  495. overflow-x: visible;
  496. background-color: var(--secondary-background);
  497. border: 1px solid var(--border);
  498. -webkit-border-radius: 6px;
  499. -moz-border-radius: 6px;
  500. border-radius: 6px;
  501. }
  502. .copyToClipBoardBtn {
  503. visibility: hidden;
  504. position: absolute;
  505. width: 24px;
  506. border-radius: 4px;
  507. background-image: var(--clipboard-image);
  508. right: 5px;
  509. top: 13px;
  510. background-color: var(--secondary-background);
  511. padding: 11px;
  512. border: 0;
  513. }
  514. .copyToClipBoard:hover .copyToClipBoardBtn {
  515. visibility: visible;
  516. }
  517. .pre-scrollable {
  518. max-height: 340px;
  519. overflow-y: scroll; }
  520. /* Nim line-numbered tables */
  521. .line-nums-table {
  522. width: 100%;
  523. table-layout: fixed; }
  524. table.line-nums-table {
  525. border-radius: 4px;
  526. border: 1px solid #cccccc;
  527. background-color: ghostwhite;
  528. border-collapse: separate;
  529. margin-top: 15px;
  530. margin-bottom: 25px; }
  531. .line-nums-table tbody {
  532. border: none; }
  533. .line-nums-table td pre {
  534. border: none;
  535. background-color: transparent; }
  536. .line-nums-table td.blob-line-nums {
  537. width: 28px; }
  538. .line-nums-table td.blob-line-nums pre {
  539. color: #b0b0b0;
  540. -webkit-filter: opacity(75%);
  541. filter: opacity(75%);
  542. text-align: right;
  543. border-color: transparent;
  544. background-color: transparent;
  545. padding-left: 0px;
  546. margin-left: 0px;
  547. padding-right: 0px;
  548. margin-right: 0px; }
  549. table {
  550. max-width: 100%;
  551. background-color: transparent;
  552. margin-top: 0.5em;
  553. margin-bottom: 1.5em;
  554. border-collapse: collapse;
  555. border-color: var(--third-background);
  556. border-spacing: 0;
  557. font-size: 0.9em;
  558. }
  559. table th, table td {
  560. padding: 0px 0.5em 0px;
  561. border-color: var(--third-background);
  562. }
  563. table th {
  564. background-color: var(--third-background);
  565. border-color: var(--third-background);
  566. font-weight: bold; }
  567. table th.docinfo-name {
  568. background-color: transparent;
  569. text-align: right;
  570. }
  571. table tr:hover {
  572. background-color: var(--third-background); }
  573. /* rst2html default used to remove borders from tables and images */
  574. .borderless, table.borderless td, table.borderless th {
  575. border: 0; }
  576. table.borderless td, table.borderless th {
  577. /* Override padding for "table.docutils td" with "! important".
  578. The right padding separates the table cells. */
  579. padding: 0 0.5em 0 0 !important; }
  580. .admonition {
  581. padding: 0.3em;
  582. background-color: var(--secondary-background);
  583. border-left: 0.4em solid #7f7f84;
  584. margin-bottom: 0.5em;
  585. -webkit-box-shadow: 0 5px 8px -6px rgba(0,0,0,.2);
  586. -moz-box-shadow: 0 5px 8px -6px rgba(0,0,0,.2);
  587. box-shadow: 0 5px 8px -6px rgba(0,0,0,.2);
  588. }
  589. .admonition-info {
  590. border-color: var(--info-background);
  591. }
  592. .admonition-info-text {
  593. color: var(--info-background);
  594. }
  595. .admonition-warning {
  596. border-color: var(--warning-background);
  597. }
  598. .admonition-warning-text {
  599. color: var(--warning-background);
  600. }
  601. .admonition-error {
  602. border-color: var(--error-background);
  603. }
  604. .admonition-error-text {
  605. color: var(--error-background);
  606. }
  607. .first {
  608. /* Override more specific margin styles with "! important". */
  609. margin-top: 0 !important; }
  610. .last, .with-subtitle {
  611. margin-bottom: 0 !important; }
  612. .hidden {
  613. display: none; }
  614. blockquote.epigraph {
  615. margin: 2em 5em; }
  616. dl.docutils dd {
  617. margin-bottom: 0.5em; }
  618. object[type="image/svg+xml"], object[type="application/x-shockwave-flash"] {
  619. overflow: hidden; }
  620. div.figure {
  621. margin-left: 2em;
  622. margin-right: 2em; }
  623. div.footer, div.header {
  624. clear: both;
  625. text-align: center;
  626. color: #666;
  627. font-size: smaller; }
  628. div.footer {
  629. padding-top: 5em;
  630. }
  631. div.line-block {
  632. display: block;
  633. margin-top: 1em;
  634. margin-bottom: 1em; }
  635. div.line-block div.line-block {
  636. margin-top: 0;
  637. margin-bottom: 0;
  638. margin-left: 1.5em; }
  639. div.topic {
  640. margin: 2em; }
  641. div.search_results {
  642. background-color: var(--third-background);
  643. margin: 3em;
  644. padding: 1em;
  645. border: 1px solid #4d4d4d;
  646. }
  647. div#global-links ul {
  648. margin-left: 0;
  649. list-style-type: none;
  650. }
  651. div#global-links > simple-boot {
  652. margin-left: 3em;
  653. }
  654. hr.docutils {
  655. width: 75%; }
  656. img.align-left, .figure.align-left, object.align-left {
  657. clear: left;
  658. float: left;
  659. margin-right: 1em; }
  660. img.align-right, .figure.align-right, object.align-right {
  661. clear: right;
  662. float: right;
  663. margin-left: 1em; }
  664. img.align-center, .figure.align-center, object.align-center {
  665. display: block;
  666. margin-left: auto;
  667. margin-right: auto; }
  668. .align-left {
  669. text-align: left; }
  670. .align-center {
  671. clear: both;
  672. text-align: center; }
  673. .align-right {
  674. text-align: right; }
  675. /* reset inner alignment in figures */
  676. div.align-right {
  677. text-align: inherit; }
  678. p.attribution {
  679. text-align: right;
  680. margin-left: 50%; }
  681. p.caption {
  682. font-style: italic; }
  683. p.credits {
  684. font-style: italic;
  685. font-size: smaller; }
  686. p.label {
  687. white-space: nowrap; }
  688. p.rubric {
  689. font-weight: bold;
  690. font-size: larger;
  691. color: maroon;
  692. text-align: center; }
  693. p.topic-title {
  694. font-weight: bold; }
  695. pre.address {
  696. margin-bottom: 0;
  697. margin-top: 0;
  698. font: inherit; }
  699. pre.literal-block, pre.doctest-block, pre.math, pre.code {
  700. margin-left: 2em;
  701. margin-right: 2em; }
  702. pre.code .ln {
  703. color: grey; }
  704. /* line numbers */
  705. pre.code, code {
  706. background-color: #eeeeee; }
  707. pre.code .comment, code .comment {
  708. color: #5c6576; }
  709. pre.code .keyword, code .keyword {
  710. color: #3B0D06;
  711. font-weight: bold; }
  712. pre.code .literal.string, code .literal.string {
  713. color: #0c5404; }
  714. pre.code .name.builtin, code .name.builtin {
  715. color: #352b84; }
  716. pre.code .deleted, code .deleted {
  717. background-color: #DEB0A1; }
  718. pre.code .inserted, code .inserted {
  719. background-color: #A3D289; }
  720. span.classifier {
  721. font-style: oblique; }
  722. span.classifier-delimiter {
  723. font-weight: bold; }
  724. span.problematic {
  725. color: #b30000; }
  726. span.section-subtitle {
  727. /* font-size relative to parent (h1..h6 element) */
  728. font-size: 80%; }
  729. span.DecNumber {
  730. color: var(--number); }
  731. span.BinNumber {
  732. color: var(--number); }
  733. span.HexNumber {
  734. color: var(--number); }
  735. span.OctNumber {
  736. color: var(--number); }
  737. span.FloatNumber {
  738. color: var(--number); }
  739. span.Identifier {
  740. color: var(--identifier); }
  741. span.Keyword {
  742. font-weight: 600;
  743. color: var(--keyword); }
  744. span.StringLit {
  745. color: var(--literal); }
  746. span.LongStringLit {
  747. color: var(--literal); }
  748. span.CharLit {
  749. color: var(--literal); }
  750. span.EscapeSequence {
  751. color: var(--escapeSequence); }
  752. span.Operator {
  753. color: var(--operator); }
  754. span.Punctuation {
  755. color: var(--punctuation); }
  756. span.Comment, span.LongComment {
  757. font-style: italic;
  758. font-weight: 400;
  759. color: var(--comment); }
  760. span.RegularExpression {
  761. color: darkviolet; }
  762. span.TagStart {
  763. color: darkviolet; }
  764. span.TagEnd {
  765. color: darkviolet; }
  766. span.Key {
  767. color: #252dbe; }
  768. span.Value {
  769. color: #252dbe; }
  770. span.RawData {
  771. color: var(--raw-data); }
  772. span.Assembler {
  773. color: #252dbe; }
  774. span.Preprocessor {
  775. color: #252dbe; }
  776. span.Directive {
  777. color: #252dbe; }
  778. span.option {
  779. font-weight: bold;
  780. font-family: "Source Code Pro", Monaco, Menlo, Consolas, "Courier New", monospace;
  781. color: var(--option);
  782. }
  783. span.Prompt {
  784. font-weight: bold;
  785. color: red; }
  786. span.ProgramOutput {
  787. font-weight: bold;
  788. color: #808080; }
  789. span.program {
  790. font-weight: bold;
  791. color: var(--program);
  792. text-decoration: underline;
  793. text-decoration-color: var(--hint);
  794. text-decoration-thickness: 0.05em;
  795. text-underline-offset: 0.15em;
  796. }
  797. span.Command, span.Rule, span.Hyperlink, span.Label, span.Reference,
  798. span.Other {
  799. color: var(--other); }
  800. /* Pop type, const, proc, and iterator defs in nim def blocks */
  801. dt pre > span.Identifier, dt pre > span.Operator {
  802. color: var(--identifier);
  803. font-weight: 700; }
  804. dt pre > span.Keyword ~ span.Identifier, dt pre > span.Identifier ~ span.Identifier,
  805. dt pre > span.Operator ~ span.Identifier, dt pre > span.Other ~ span.Identifier {
  806. color: var(--identifier);
  807. font-weight: inherit; }
  808. /* Nim sprite for the footer (taken from main page favicon) */
  809. .nim-sprite {
  810. display: inline-block;
  811. width: 51px;
  812. height: 14px;
  813. background-position: 0 0;
  814. background-size: 51px 14px;
  815. -webkit-filter: opacity(50%);
  816. filter: opacity(50%);
  817. background-repeat: no-repeat;
  818. background-image: var(--nim-sprite-base64);
  819. margin-bottom: 5px; }
  820. span.pragmadots {
  821. /* Position: relative frees us up to make the dots
  822. look really nice without fucking up the layout and
  823. causing bulging in the parent container */
  824. position: relative;
  825. /* 1px down looks slightly nicer */
  826. top: 1px;
  827. padding: 2px;
  828. background-color: var(--third-background);
  829. border-radius: 4px;
  830. margin: 0 2px;
  831. cursor: pointer;
  832. font-size: 0.8em;
  833. }
  834. span.pragmadots:hover {
  835. background-color: var(--hint);
  836. }
  837. span.pragmawrap {
  838. display: none;
  839. }
  840. span.attachedType {
  841. display: none;
  842. visibility: hidden;
  843. }