ledger_sync 1.3.5 → 1.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (962) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +11 -2
  3. data/.travis.yml +4 -0
  4. data/Gemfile.lock +13 -13
  5. data/LICENSE.txt +5 -97
  6. data/README.md +8 -505
  7. data/bin/quickbooks_online_oauth_server.rb +10 -9
  8. data/docs/CNAME +1 -0
  9. data/docs/assets/css/brands.min.css +5 -0
  10. data/docs/assets/css/fontawesome.min.css +5 -0
  11. data/docs/assets/css/main.css +1924 -0
  12. data/docs/assets/css/monokai.css +441 -0
  13. data/docs/assets/js/main.js +214 -0
  14. data/docs/assets/js/plugins.js +22 -0
  15. data/docs/assets/js/prism.js +9 -0
  16. data/docs/assets/webfonts/fa-brands-400.eot +0 -0
  17. data/docs/assets/webfonts/fa-brands-400.svg +3452 -0
  18. data/docs/assets/webfonts/fa-brands-400.ttf +0 -0
  19. data/docs/assets/webfonts/fa-brands-400.woff +0 -0
  20. data/docs/assets/webfonts/fa-brands-400.woff2 +0 -0
  21. data/docs/blog/index.html +303 -0
  22. data/docs/guides/architecture/clients/index.html +479 -0
  23. data/docs/guides/architecture/index.html +456 -0
  24. data/docs/guides/architecture/operations/index.html +486 -0
  25. data/docs/guides/architecture/resources/index.html +482 -0
  26. data/docs/guides/architecture/results/index.html +447 -0
  27. data/docs/guides/architecture/searchers/index.html +467 -0
  28. data/docs/guides/architecture/serialization/index.html +497 -0
  29. data/docs/guides/community/index.html +433 -0
  30. data/docs/guides/contribute/console/index.html +445 -0
  31. data/docs/guides/contribute/deployment/index.html +455 -0
  32. data/docs/guides/contribute/documentation/index.html +471 -0
  33. data/docs/guides/contribute/index.html +455 -0
  34. data/docs/guides/contribute/qa/index.html +457 -0
  35. data/docs/guides/contribute/testing/index.html +445 -0
  36. data/docs/guides/customization/custom_resources/index.html +482 -0
  37. data/docs/guides/customization/custom_serializers/index.html +481 -0
  38. data/docs/guides/customization/index.html +452 -0
  39. data/docs/guides/customization/resource_converters/index.html +512 -0
  40. data/docs/guides/getting-started/get-help/index.html +448 -0
  41. data/docs/guides/getting-started/index.html +442 -0
  42. data/docs/guides/getting-started/installation/index.html +454 -0
  43. data/docs/guides/getting-started/quick-start/index.html +552 -0
  44. data/docs/guides/index.html +449 -0
  45. data/docs/guides/ledgers/index.html +450 -0
  46. data/docs/guides/ledgers/netsuite/index.html +445 -0
  47. data/docs/guides/ledgers/netsuite_soap/index.html +445 -0
  48. data/docs/guides/ledgers/quickbooks_online/index.html +445 -0
  49. data/docs/guides/ledgers/stripe/index.html +445 -0
  50. data/docs/guides/modern-treasury/index.html +432 -0
  51. data/docs/guides/tips_and_more/index.html +492 -0
  52. data/docs/images/1.jpg +0 -0
  53. data/docs/images/10.jpg +0 -0
  54. data/docs/images/2.jpg +0 -0
  55. data/docs/images/3.jpg +0 -0
  56. data/docs/images/4.jpg +0 -0
  57. data/docs/images/5.jpg +0 -0
  58. data/docs/images/6.jpg +0 -0
  59. data/docs/images/7.jpg +0 -0
  60. data/docs/images/8.jpg +0 -0
  61. data/docs/images/9.jpg +0 -0
  62. data/docs/images/logo.svg +8 -0
  63. data/docs/index.html +400 -0
  64. data/docs/overview/index.html +430 -0
  65. data/docs/posts/introducing-docs/index.html +291 -0
  66. data/docs/posts/netsuite-authentication/index.html +645 -0
  67. data/docs/reference/architecture/clients/index.html +353 -0
  68. data/docs/reference/architecture/index.html +332 -0
  69. data/docs/reference/architecture/operations/index.html +323 -0
  70. data/docs/reference/architecture/resources/index.html +356 -0
  71. data/docs/reference/architecture/results/index.html +323 -0
  72. data/docs/reference/architecture/searchers/index.html +323 -0
  73. data/docs/reference/architecture/serialization/index.html +323 -0
  74. data/docs/reference/index.html +302 -0
  75. data/docs/reference/netsuite/authentication/index.html +413 -0
  76. data/docs/reference/netsuite/authentication/token_based_authentication/index.html +507 -0
  77. data/docs/reference/netsuite/index.html +409 -0
  78. data/docs/reference/netsuite/resources/account/index.html +505 -0
  79. data/docs/reference/netsuite/resources/check/index.html +513 -0
  80. data/docs/reference/netsuite/resources/check_line_item/index.html +481 -0
  81. data/docs/reference/netsuite/resources/currency/index.html +497 -0
  82. data/docs/reference/netsuite/resources/customer/index.html +509 -0
  83. data/docs/reference/netsuite/resources/customer_deposit/index.html +501 -0
  84. data/docs/reference/netsuite/resources/department/index.html +505 -0
  85. data/docs/reference/netsuite/resources/deposit/index.html +489 -0
  86. data/docs/reference/netsuite/resources/deposit_line_item/index.html +481 -0
  87. data/docs/reference/netsuite/resources/index.html +457 -0
  88. data/docs/reference/netsuite/resources/invoice/index.html +489 -0
  89. data/docs/reference/netsuite/resources/invoice_line_item/index.html +477 -0
  90. data/docs/reference/netsuite/resources/item/index.html +465 -0
  91. data/docs/reference/netsuite/resources/journal_entry/index.html +509 -0
  92. data/docs/reference/netsuite/resources/journal_entry_line_item/index.html +485 -0
  93. data/docs/reference/netsuite/resources/ledger_class/index.html +505 -0
  94. data/docs/reference/netsuite/resources/location/index.html +489 -0
  95. data/docs/reference/netsuite/resources/resource/index.html +461 -0
  96. data/docs/reference/netsuite/resources/subsidiary/index.html +469 -0
  97. data/docs/reference/netsuite/resources/vendor/index.html +513 -0
  98. data/docs/reference/netsuite_soap/index.html +324 -0
  99. data/docs/reference/netsuite_soap/resources/customer/index.html +385 -0
  100. data/docs/reference/netsuite_soap/resources/index.html +337 -0
  101. data/docs/reference/netsuite_soap/resources/resource/index.html +357 -0
  102. data/docs/reference/netsuite_soap/resources/subsidiary/index.html +377 -0
  103. data/docs/reference/quickbooks_online/authentication/index.html +463 -0
  104. data/docs/reference/quickbooks_online/errors/index.html +416 -0
  105. data/docs/reference/quickbooks_online/index.html +414 -0
  106. data/docs/reference/quickbooks_online/resources/account/index.html +551 -0
  107. data/docs/reference/quickbooks_online/resources/bill/index.html +555 -0
  108. data/docs/reference/quickbooks_online/resources/bill_line_item/index.html +517 -0
  109. data/docs/reference/quickbooks_online/resources/bill_payment/index.html +571 -0
  110. data/docs/reference/quickbooks_online/resources/bill_payment_line_item/index.html +509 -0
  111. data/docs/reference/quickbooks_online/resources/currency/index.html +513 -0
  112. data/docs/reference/quickbooks_online/resources/customer/index.html +535 -0
  113. data/docs/reference/quickbooks_online/resources/department/index.html +539 -0
  114. data/docs/reference/quickbooks_online/resources/deposit/index.html +547 -0
  115. data/docs/reference/quickbooks_online/resources/deposit_line_item/index.html +521 -0
  116. data/docs/reference/quickbooks_online/resources/expense/index.html +559 -0
  117. data/docs/reference/quickbooks_online/resources/expense_line_item/index.html +517 -0
  118. data/docs/reference/quickbooks_online/resources/index.html +505 -0
  119. data/docs/reference/quickbooks_online/resources/invoice/index.html +547 -0
  120. data/docs/reference/quickbooks_online/resources/invoice_sales_line_item/index.html +517 -0
  121. data/docs/reference/quickbooks_online/resources/item/index.html +505 -0
  122. data/docs/reference/quickbooks_online/resources/journal_entry/index.html +539 -0
  123. data/docs/reference/quickbooks_online/resources/journal_entry_line_item/index.html +525 -0
  124. data/docs/reference/quickbooks_online/resources/ledger_class/index.html +539 -0
  125. data/docs/reference/quickbooks_online/resources/payment/index.html +559 -0
  126. data/docs/reference/quickbooks_online/resources/payment_line_item/index.html +509 -0
  127. data/docs/reference/quickbooks_online/resources/preferences/index.html +547 -0
  128. data/docs/reference/quickbooks_online/resources/primary_email_addr/index.html +505 -0
  129. data/docs/reference/quickbooks_online/resources/primary_phone/index.html +505 -0
  130. data/docs/reference/quickbooks_online/resources/resource/index.html +501 -0
  131. data/docs/reference/quickbooks_online/resources/subsidiary/index.html +509 -0
  132. data/docs/reference/quickbooks_online/resources/transfer/index.html +543 -0
  133. data/docs/reference/quickbooks_online/resources/vendor/index.html +547 -0
  134. data/docs/reference/quickbooks_online/webhooks/index.html +448 -0
  135. data/docs/reference/stripe/index.html +314 -0
  136. data/docs/reference/stripe/resources/customer/index.html +387 -0
  137. data/docs/reference/stripe/resources/index.html +330 -0
  138. data/docs/reference/stripe/resources/resource/index.html +351 -0
  139. data/docs/style-guide/index.html +396 -0
  140. data/documentation/build.sh +8 -0
  141. data/documentation/generate.rb +32 -0
  142. data/documentation/generators/generator.rb +80 -0
  143. data/documentation/generators/guides/generator.rb +36 -0
  144. data/documentation/generators/reference/generator.rb +76 -0
  145. data/documentation/generators/reference/ledger/generator.rb +74 -0
  146. data/documentation/generators/template.rb +22 -0
  147. data/documentation/helper_methods.rb +17 -0
  148. data/documentation/site/CNAME +1 -0
  149. data/documentation/site/Gemfile +11 -0
  150. data/documentation/site/Gemfile.lock +69 -0
  151. data/documentation/site/LICENSE.md +40 -0
  152. data/documentation/site/README.md +8 -0
  153. data/documentation/site/_config.yml +113 -0
  154. data/documentation/site/_data/guides_sections.yml +10 -0
  155. data/documentation/site/_data/reference_sections.yml +5 -0
  156. data/documentation/site/_includes/action_link.html +8 -0
  157. data/documentation/site/_includes/alerts/base.html +3 -0
  158. data/documentation/site/_includes/alerts/danger.html +1 -0
  159. data/documentation/site/_includes/alerts/info.html +1 -0
  160. data/documentation/site/_includes/alerts/success.html +1 -0
  161. data/documentation/site/_includes/alerts/warning.html +1 -0
  162. data/documentation/site/_includes/cta_buttons.html +4 -0
  163. data/documentation/site/_includes/example.md +8 -0
  164. data/documentation/site/_includes/footer.html +25 -0
  165. data/documentation/site/_includes/getting_help.md +8 -0
  166. data/documentation/site/_includes/guides_menu.html +29 -0
  167. data/documentation/site/_includes/guides_submenu.html +7 -0
  168. data/documentation/site/_includes/header.html +35 -0
  169. data/documentation/site/_includes/installation_instructions.md +17 -0
  170. data/documentation/site/_includes/ledgers/Stripe_summary.md +1 -0
  171. data/documentation/site/_includes/ledgers/netsuite_soap_summary.md +1 -0
  172. data/documentation/site/_includes/ledgers/netsuite_summary.md +1 -0
  173. data/documentation/site/_includes/ledgers/netsuite_summary_shared.md +1 -0
  174. data/documentation/site/_includes/ledgers/quickbooks_online_summary.md +1 -0
  175. data/documentation/site/_includes/reference/netsuite/authentication/_token_based_authentication.md +99 -0
  176. data/documentation/site/_includes/reference/netsuite/authentication/index.md +15 -0
  177. data/documentation/site/_includes/reference/netsuite/authentication/token_based_authentication.md +6 -0
  178. data/documentation/site/_includes/reference/netsuite/index.md +25 -0
  179. data/documentation/site/_includes/reference/netsuite_soap/index.md +11 -0
  180. data/documentation/site/_includes/reference/quickbooks_online/authentication/index.md +55 -0
  181. data/documentation/site/_includes/reference/quickbooks_online/errors/index.md +9 -0
  182. data/documentation/site/_includes/reference/quickbooks_online/index.md +6 -0
  183. data/documentation/site/_includes/reference/quickbooks_online/webhooks/index.md +42 -0
  184. data/documentation/site/_includes/reference/stripe/index.md +6 -0
  185. data/documentation/site/_includes/section_content.html +34 -0
  186. data/documentation/site/_includes/section_cta.html +28 -0
  187. data/documentation/site/_includes/section_grid.html +60 -0
  188. data/documentation/site/_includes/section_guides.html +35 -0
  189. data/documentation/site/_includes/section_hero.html +28 -0
  190. data/documentation/site/_includes/submenu.html +8 -0
  191. data/documentation/site/_layouts/advanced.html +9 -0
  192. data/documentation/site/_layouts/base.html +34 -0
  193. data/documentation/site/_layouts/blog.html +51 -0
  194. data/documentation/site/_layouts/body.html +11 -0
  195. data/documentation/site/_layouts/guides.html +46 -0
  196. data/documentation/site/_layouts/page.html +26 -0
  197. data/documentation/site/_layouts/post.html +52 -0
  198. data/documentation/site/_layouts/reference.html +46 -0
  199. data/documentation/site/_layouts/reference_netsuite.html +46 -0
  200. data/documentation/site/_layouts/reference_netsuite_soap.html +46 -0
  201. data/documentation/site/_layouts/reference_quickbooks_online.html +46 -0
  202. data/documentation/site/_layouts/reference_stripe.html +46 -0
  203. data/documentation/site/_plugins/filters.rb +122 -0
  204. data/documentation/site/_plugins/hooks.rb +9 -0
  205. data/documentation/site/_posts/2020-06-01-introducing-docs.md +17 -0
  206. data/documentation/site/_posts/2020-06-10-netsuite-authentication.md +382 -0
  207. data/documentation/site/_sass/imports/_animations.scss +19 -0
  208. data/documentation/site/_sass/imports/_footer.scss +94 -0
  209. data/documentation/site/_sass/imports/_functions.scss +69 -0
  210. data/documentation/site/_sass/imports/_general.scss +687 -0
  211. data/documentation/site/_sass/imports/_guides.scss +300 -0
  212. data/documentation/site/_sass/imports/_header.scss +358 -0
  213. data/documentation/site/_sass/imports/_icons.scss +90 -0
  214. data/documentation/site/_sass/imports/_post-navigation.scss +67 -0
  215. data/documentation/site/_sass/imports/_posts-pages.scss +165 -0
  216. data/documentation/site/_sass/imports/_prism.scss +174 -0
  217. data/documentation/site/_sass/imports/_reset.scss +210 -0
  218. data/documentation/site/_sass/imports/_sections.scss +370 -0
  219. data/documentation/site/_sass/imports/_structure.scss +44 -0
  220. data/documentation/site/_templates/_layouts/reference_ledger.html.erb +46 -0
  221. data/documentation/site/_templates/guides/ledger.md.erb +9 -0
  222. data/documentation/site/_templates/reference/resources/index.md.erb +9 -0
  223. data/documentation/site/_templates/reference/resources/resource.md.erb +27 -0
  224. data/documentation/site/assets/css/brands.min.css +5 -0
  225. data/documentation/site/assets/css/fontawesome.min.css +5 -0
  226. data/documentation/site/assets/css/main.scss +45 -0
  227. data/documentation/site/assets/css/monokai.css +441 -0
  228. data/documentation/site/assets/js/main.js +214 -0
  229. data/documentation/site/assets/js/plugins.js +22 -0
  230. data/documentation/site/assets/js/prism.js +9 -0
  231. data/documentation/site/assets/webfonts/fa-brands-400.eot +0 -0
  232. data/documentation/site/assets/webfonts/fa-brands-400.svg +3452 -0
  233. data/documentation/site/assets/webfonts/fa-brands-400.ttf +0 -0
  234. data/documentation/site/assets/webfonts/fa-brands-400.woff +0 -0
  235. data/documentation/site/assets/webfonts/fa-brands-400.woff2 +0 -0
  236. data/documentation/site/blog/index.md +6 -0
  237. data/documentation/site/guides/architecture/clients.md +35 -0
  238. data/documentation/site/guides/architecture/index.md +14 -0
  239. data/documentation/site/guides/architecture/operations.md +45 -0
  240. data/documentation/site/guides/architecture/resources.md +40 -0
  241. data/documentation/site/guides/architecture/results.md +6 -0
  242. data/documentation/site/guides/architecture/searchers.md +28 -0
  243. data/documentation/site/guides/architecture/serialization.md +59 -0
  244. data/documentation/site/guides/community/index.md +8 -0
  245. data/documentation/site/guides/contribute/console.md +6 -0
  246. data/documentation/site/guides/contribute/deployment.md +17 -0
  247. data/documentation/site/guides/contribute/documentation.md +37 -0
  248. data/documentation/site/guides/contribute/index.md +18 -0
  249. data/documentation/site/guides/contribute/qa.md +16 -0
  250. data/documentation/site/guides/contribute/testing.md +6 -0
  251. data/documentation/site/guides/customization/custom_resources.md +50 -0
  252. data/documentation/site/guides/customization/custom_serializers.md +47 -0
  253. data/documentation/site/guides/customization/index.md +15 -0
  254. data/documentation/site/guides/customization/resource_converters.md +79 -0
  255. data/documentation/site/guides/getting-started/get-help.md +7 -0
  256. data/documentation/site/guides/getting-started/index.md +8 -0
  257. data/documentation/site/guides/getting-started/installation.md +7 -0
  258. data/documentation/site/guides/getting-started/quick-start.md +123 -0
  259. data/documentation/site/guides/index.md +16 -0
  260. data/documentation/site/guides/ledgers/index.md +12 -0
  261. data/documentation/site/guides/ledgers/netsuite.md +9 -0
  262. data/documentation/site/guides/ledgers/netsuite_soap.md +9 -0
  263. data/documentation/site/guides/ledgers/quickbooks_online.md +9 -0
  264. data/documentation/site/guides/ledgers/stripe.md +9 -0
  265. data/documentation/site/guides/modern-treasury/index.md +14 -0
  266. data/documentation/site/guides/tips_and_more/index.md +76 -0
  267. data/documentation/site/images/1.jpg +0 -0
  268. data/documentation/site/images/10.jpg +0 -0
  269. data/documentation/site/images/2.jpg +0 -0
  270. data/documentation/site/images/3.jpg +0 -0
  271. data/documentation/site/images/4.jpg +0 -0
  272. data/documentation/site/images/5.jpg +0 -0
  273. data/documentation/site/images/6.jpg +0 -0
  274. data/documentation/site/images/7.jpg +0 -0
  275. data/documentation/site/images/8.jpg +0 -0
  276. data/documentation/site/images/9.jpg +0 -0
  277. data/documentation/site/images/logo.svg +8 -0
  278. data/documentation/site/index.md +99 -0
  279. data/documentation/site/overview.md +21 -0
  280. data/documentation/site/reference/architecture/clients.md +33 -0
  281. data/documentation/site/reference/architecture/index.md +14 -0
  282. data/documentation/site/reference/architecture/operations.md +6 -0
  283. data/documentation/site/reference/architecture/resources.md +38 -0
  284. data/documentation/site/reference/architecture/results.md +6 -0
  285. data/documentation/site/reference/architecture/searchers.md +6 -0
  286. data/documentation/site/reference/architecture/serialization.md +6 -0
  287. data/documentation/site/reference/index.md +6 -0
  288. data/documentation/site/reference/netsuite/authentication/_token_based_authentication.md +99 -0
  289. data/documentation/site/reference/netsuite/authentication/index.md +15 -0
  290. data/documentation/site/reference/netsuite/authentication/token_based_authentication.md +6 -0
  291. data/documentation/site/reference/netsuite/index.md +25 -0
  292. data/documentation/site/reference/netsuite/resources/account.md +38 -0
  293. data/documentation/site/reference/netsuite/resources/check.md +49 -0
  294. data/documentation/site/reference/netsuite/resources/check_line_item.md +23 -0
  295. data/documentation/site/reference/netsuite/resources/currency.md +45 -0
  296. data/documentation/site/reference/netsuite/resources/customer.md +48 -0
  297. data/documentation/site/reference/netsuite/resources/customer_deposit.md +46 -0
  298. data/documentation/site/reference/netsuite/resources/department.md +47 -0
  299. data/documentation/site/reference/netsuite/resources/deposit.md +25 -0
  300. data/documentation/site/reference/netsuite/resources/deposit_line_item.md +23 -0
  301. data/documentation/site/reference/netsuite/resources/index.md +25 -0
  302. data/documentation/site/reference/netsuite/resources/invoice.md +25 -0
  303. data/documentation/site/reference/netsuite/resources/invoice_line_item.md +22 -0
  304. data/documentation/site/reference/netsuite/resources/item.md +19 -0
  305. data/documentation/site/reference/netsuite/resources/journal_entry.md +48 -0
  306. data/documentation/site/reference/netsuite/resources/journal_entry_line_item.md +24 -0
  307. data/documentation/site/reference/netsuite/resources/ledger_class.md +47 -0
  308. data/documentation/site/reference/netsuite/resources/location.md +43 -0
  309. data/documentation/site/reference/netsuite/resources/resource.md +18 -0
  310. data/documentation/site/reference/netsuite/resources/subsidiary.md +20 -0
  311. data/documentation/site/reference/netsuite/resources/vendor.md +49 -0
  312. data/documentation/site/reference/netsuite_soap/index.md +11 -0
  313. data/documentation/site/reference/netsuite_soap/resources/customer.md +34 -0
  314. data/documentation/site/reference/netsuite_soap/resources/index.md +9 -0
  315. data/documentation/site/reference/netsuite_soap/resources/resource.md +18 -0
  316. data/documentation/site/reference/netsuite_soap/resources/subsidiary.md +32 -0
  317. data/documentation/site/reference/quickbooks_online/authentication/index.md +55 -0
  318. data/documentation/site/reference/quickbooks_online/errors/index.md +9 -0
  319. data/documentation/site/reference/quickbooks_online/index.md +6 -0
  320. data/documentation/site/reference/quickbooks_online/resources/account.md +44 -0
  321. data/documentation/site/reference/quickbooks_online/resources/bill.md +45 -0
  322. data/documentation/site/reference/quickbooks_online/resources/bill_line_item.md +22 -0
  323. data/documentation/site/reference/quickbooks_online/resources/bill_payment.md +49 -0
  324. data/documentation/site/reference/quickbooks_online/resources/bill_payment_line_item.md +20 -0
  325. data/documentation/site/reference/quickbooks_online/resources/currency.md +21 -0
  326. data/documentation/site/reference/quickbooks_online/resources/customer.md +40 -0
  327. data/documentation/site/reference/quickbooks_online/resources/department.md +41 -0
  328. data/documentation/site/reference/quickbooks_online/resources/deposit.md +43 -0
  329. data/documentation/site/reference/quickbooks_online/resources/deposit_line_item.md +23 -0
  330. data/documentation/site/reference/quickbooks_online/resources/expense.md +46 -0
  331. data/documentation/site/reference/quickbooks_online/resources/expense_line_item.md +22 -0
  332. data/documentation/site/reference/quickbooks_online/resources/index.md +33 -0
  333. data/documentation/site/reference/quickbooks_online/resources/invoice.md +43 -0
  334. data/documentation/site/reference/quickbooks_online/resources/invoice_sales_line_item.md +22 -0
  335. data/documentation/site/reference/quickbooks_online/resources/item.md +19 -0
  336. data/documentation/site/reference/quickbooks_online/resources/journal_entry.md +41 -0
  337. data/documentation/site/reference/quickbooks_online/resources/journal_entry_line_item.md +24 -0
  338. data/documentation/site/reference/quickbooks_online/resources/ledger_class.md +41 -0
  339. data/documentation/site/reference/quickbooks_online/resources/payment.md +46 -0
  340. data/documentation/site/reference/quickbooks_online/resources/payment_line_item.md +20 -0
  341. data/documentation/site/reference/quickbooks_online/resources/preferences.md +34 -0
  342. data/documentation/site/reference/quickbooks_online/resources/primary_email_addr.md +19 -0
  343. data/documentation/site/reference/quickbooks_online/resources/primary_phone.md +19 -0
  344. data/documentation/site/reference/quickbooks_online/resources/resource.md +18 -0
  345. data/documentation/site/reference/quickbooks_online/resources/subsidiary.md +20 -0
  346. data/documentation/site/reference/quickbooks_online/resources/transfer.md +42 -0
  347. data/documentation/site/reference/quickbooks_online/resources/vendor.md +43 -0
  348. data/documentation/site/reference/quickbooks_online/webhooks/index.md +42 -0
  349. data/documentation/site/reference/stripe/index.md +6 -0
  350. data/documentation/site/reference/stripe/resources/customer.md +45 -0
  351. data/documentation/site/reference/stripe/resources/index.md +8 -0
  352. data/documentation/site/reference/stripe/resources/resource.md +18 -0
  353. data/documentation/site/style-guide.md +137 -0
  354. data/ledger_sync.gemspec +1 -1
  355. data/lib/ledger_sync.rb +40 -65
  356. data/lib/ledger_sync/core_ext/resonad.rb +2 -2
  357. data/lib/ledger_sync/deserializer.rb +55 -6
  358. data/lib/ledger_sync/error.rb +15 -0
  359. data/lib/ledger_sync/error/ledger_errors.rb +72 -0
  360. data/lib/ledger_sync/error/resource_errors.rb +34 -4
  361. data/lib/ledger_sync/ledger_configuration.rb +61 -0
  362. data/lib/ledger_sync/ledger_configuration_store.rb +56 -0
  363. data/lib/ledger_sync/ledgers/client.rb +112 -0
  364. data/lib/ledger_sync/ledgers/contract.rb +16 -0
  365. data/lib/ledger_sync/ledgers/dashboard_url_helper.rb +23 -0
  366. data/lib/ledger_sync/ledgers/mixins/infer_client_mixin.rb +28 -0
  367. data/lib/ledger_sync/ledgers/mixins/infer_resource_class_mixin.rb +25 -0
  368. data/lib/ledger_sync/ledgers/mixins/infer_serializer_mixin.rb +52 -0
  369. data/lib/ledger_sync/ledgers/mixins/infer_validation_contract_mixin.rb +27 -0
  370. data/lib/ledger_sync/ledgers/mixins/offset_and_limit_pagination_searcher_mixin.rb +37 -0
  371. data/lib/ledger_sync/ledgers/mixins/serialization_mixin.rb +41 -0
  372. data/lib/ledger_sync/ledgers/netsuite/account/deserializer.rb +23 -0
  373. data/lib/ledger_sync/ledgers/netsuite/account/operations/create.rb +28 -0
  374. data/lib/ledger_sync/ledgers/netsuite/account/operations/find.rb +28 -0
  375. data/lib/ledger_sync/ledgers/netsuite/account/searcher.rb +12 -0
  376. data/lib/ledger_sync/ledgers/netsuite/account/searcher_deserializer.rb +29 -0
  377. data/lib/ledger_sync/ledgers/netsuite/account/serializer.rb +21 -0
  378. data/lib/ledger_sync/ledgers/netsuite/check/deserializer.rb +29 -0
  379. data/lib/ledger_sync/ledgers/netsuite/check/operations/create.rb +27 -0
  380. data/lib/ledger_sync/ledgers/netsuite/check/operations/delete.rb +27 -0
  381. data/lib/ledger_sync/ledgers/netsuite/check/operations/find.rb +27 -0
  382. data/lib/ledger_sync/ledgers/netsuite/check/operations/update.rb +27 -0
  383. data/lib/ledger_sync/ledgers/netsuite/check/searcher.rb +15 -0
  384. data/lib/ledger_sync/ledgers/netsuite/check/searcher_deserializer.rb +16 -0
  385. data/lib/ledger_sync/ledgers/netsuite/check/serializer.rb +50 -0
  386. data/lib/ledger_sync/ledgers/netsuite/check_line_item/deserializer.rb +17 -0
  387. data/lib/ledger_sync/ledgers/netsuite/check_line_item/serializer.rb +25 -0
  388. data/lib/ledger_sync/ledgers/netsuite/client.rb +184 -0
  389. data/lib/ledger_sync/ledgers/netsuite/config.rb +5 -0
  390. data/lib/ledger_sync/ledgers/netsuite/currency/deserializer.rb +23 -0
  391. data/lib/ledger_sync/ledgers/netsuite/currency/operations/create.rb +25 -0
  392. data/lib/ledger_sync/ledgers/netsuite/currency/operations/delete.rb +23 -0
  393. data/lib/ledger_sync/ledgers/netsuite/currency/operations/find.rb +23 -0
  394. data/lib/ledger_sync/ledgers/netsuite/currency/operations/update.rb +23 -0
  395. data/lib/ledger_sync/ledgers/netsuite/currency/serializer.rb +21 -0
  396. data/lib/ledger_sync/ledgers/netsuite/customer/deserializer.rb +22 -0
  397. data/lib/ledger_sync/ledgers/netsuite/customer/operations/create.rb +26 -0
  398. data/lib/ledger_sync/ledgers/netsuite/customer/operations/delete.rb +26 -0
  399. data/lib/ledger_sync/ledgers/netsuite/customer/operations/find.rb +26 -0
  400. data/lib/ledger_sync/ledgers/netsuite/customer/operations/update.rb +26 -0
  401. data/lib/ledger_sync/ledgers/netsuite/customer/searcher.rb +12 -0
  402. data/lib/ledger_sync/ledgers/netsuite/customer/searcher_deserializer.rb +18 -0
  403. data/lib/ledger_sync/ledgers/netsuite/customer/serializer.rb +29 -0
  404. data/lib/ledger_sync/ledgers/netsuite/customer_deposit/deserializer.rb +20 -0
  405. data/lib/ledger_sync/ledgers/netsuite/customer_deposit/operations/create.rb +24 -0
  406. data/lib/ledger_sync/ledgers/netsuite/customer_deposit/operations/delete.rb +24 -0
  407. data/lib/ledger_sync/ledgers/netsuite/customer_deposit/operations/find.rb +24 -0
  408. data/lib/ledger_sync/ledgers/netsuite/customer_deposit/operations/update.rb +24 -0
  409. data/lib/ledger_sync/ledgers/netsuite/customer_deposit/searcher.rb +12 -0
  410. data/lib/ledger_sync/ledgers/netsuite/customer_deposit/searcher_deserializer.rb +16 -0
  411. data/lib/ledger_sync/ledgers/netsuite/customer_deposit/serializer.rb +25 -0
  412. data/lib/ledger_sync/ledgers/netsuite/dashboard_url_helper.rb +28 -0
  413. data/lib/ledger_sync/ledgers/netsuite/department/deserializer.rb +15 -0
  414. data/lib/ledger_sync/ledgers/netsuite/department/operations/create.rb +25 -0
  415. data/lib/ledger_sync/ledgers/netsuite/department/operations/delete.rb +25 -0
  416. data/lib/ledger_sync/ledgers/netsuite/department/operations/find.rb +25 -0
  417. data/lib/ledger_sync/ledgers/netsuite/department/operations/update.rb +25 -0
  418. data/lib/ledger_sync/ledgers/netsuite/department/searcher.rb +12 -0
  419. data/lib/ledger_sync/ledgers/netsuite/department/searcher_deserializer.rb +19 -0
  420. data/lib/ledger_sync/ledgers/netsuite/department/serializer.rb +13 -0
  421. data/lib/ledger_sync/ledgers/netsuite/deserializer.rb +18 -0
  422. data/lib/ledger_sync/ledgers/netsuite/error.rb +18 -0
  423. data/lib/ledger_sync/ledgers/netsuite/journal_entry/deserializer.rb +31 -0
  424. data/lib/ledger_sync/ledgers/netsuite/journal_entry/operations/create.rb +26 -0
  425. data/lib/ledger_sync/ledgers/netsuite/journal_entry/operations/delete.rb +26 -0
  426. data/lib/ledger_sync/ledgers/netsuite/journal_entry/operations/find.rb +26 -0
  427. data/lib/ledger_sync/ledgers/netsuite/journal_entry/operations/update.rb +30 -0
  428. data/lib/ledger_sync/ledgers/netsuite/journal_entry/serializer.rb +36 -0
  429. data/lib/ledger_sync/ledgers/netsuite/journal_entry_line_item/deserializer.rb +23 -0
  430. data/lib/ledger_sync/ledgers/netsuite/journal_entry_line_item/serializer.rb +21 -0
  431. data/lib/ledger_sync/ledgers/netsuite/ledger_class/deserializer.rb +15 -0
  432. data/lib/ledger_sync/ledgers/netsuite/ledger_class/operations/create.rb +25 -0
  433. data/lib/ledger_sync/ledgers/netsuite/ledger_class/operations/delete.rb +25 -0
  434. data/lib/ledger_sync/ledgers/netsuite/ledger_class/operations/find.rb +25 -0
  435. data/lib/ledger_sync/ledgers/netsuite/ledger_class/operations/update.rb +25 -0
  436. data/lib/ledger_sync/ledgers/netsuite/ledger_class/searcher.rb +12 -0
  437. data/lib/ledger_sync/ledgers/netsuite/ledger_class/searcher_deserializer.rb +19 -0
  438. data/lib/ledger_sync/ledgers/netsuite/ledger_class/serializer.rb +13 -0
  439. data/lib/ledger_sync/ledgers/netsuite/location/deserializer.rb +15 -0
  440. data/lib/ledger_sync/ledgers/netsuite/location/operations/create.rb +21 -0
  441. data/lib/ledger_sync/ledgers/netsuite/location/operations/delete.rb +21 -0
  442. data/lib/ledger_sync/ledgers/netsuite/location/operations/find.rb +21 -0
  443. data/lib/ledger_sync/ledgers/netsuite/location/operations/update.rb +21 -0
  444. data/lib/ledger_sync/ledgers/netsuite/location/searcher.rb +12 -0
  445. data/lib/ledger_sync/ledgers/netsuite/location/serializer.rb +13 -0
  446. data/lib/ledger_sync/ledgers/netsuite/operation.rb +40 -0
  447. data/lib/ledger_sync/ledgers/netsuite/operation/create.rb +58 -0
  448. data/lib/ledger_sync/ledgers/netsuite/operation/delete.rb +49 -0
  449. data/lib/ledger_sync/ledgers/netsuite/operation/find.rb +60 -0
  450. data/lib/ledger_sync/ledgers/netsuite/operation/update.rb +61 -0
  451. data/lib/ledger_sync/ledgers/netsuite/record/http_method.rb +33 -0
  452. data/lib/ledger_sync/ledgers/netsuite/record/metadata.rb +105 -0
  453. data/lib/ledger_sync/ledgers/netsuite/record/parameter.rb +20 -0
  454. data/lib/ledger_sync/ledgers/netsuite/record/property.rb +22 -0
  455. data/lib/ledger_sync/ledgers/netsuite/reference/serializer.rb +13 -0
  456. data/lib/ledger_sync/ledgers/netsuite/resource.rb +10 -0
  457. data/lib/ledger_sync/ledgers/netsuite/resources/account.rb +44 -0
  458. data/lib/ledger_sync/ledgers/netsuite/resources/check.rb +23 -0
  459. data/lib/ledger_sync/ledgers/netsuite/resources/check_line_item.rb +15 -0
  460. data/lib/ledger_sync/ledgers/netsuite/resources/currency.rb +13 -0
  461. data/lib/ledger_sync/ledgers/netsuite/resources/customer.rb +19 -0
  462. data/lib/ledger_sync/ledgers/netsuite/resources/customer_deposit.rb +15 -0
  463. data/lib/ledger_sync/ledgers/netsuite/resources/department.rb +16 -0
  464. data/lib/ledger_sync/ledgers/netsuite/resources/deposit.rb +28 -0
  465. data/lib/ledger_sync/ledgers/netsuite/resources/deposit_line_item.rb +25 -0
  466. data/lib/ledger_sync/ledgers/netsuite/resources/invoice.rb +28 -0
  467. data/lib/ledger_sync/ledgers/netsuite/resources/invoice_line_item.rb +21 -0
  468. data/lib/ledger_sync/ledgers/netsuite/resources/item.rb +11 -0
  469. data/lib/ledger_sync/ledgers/netsuite/resources/journal_entry.rb +26 -0
  470. data/lib/ledger_sync/ledgers/netsuite/resources/journal_entry_line_item.rb +24 -0
  471. data/lib/ledger_sync/ledgers/netsuite/resources/ledger_class.rb +16 -0
  472. data/lib/ledger_sync/ledgers/netsuite/resources/location.rb +11 -0
  473. data/lib/ledger_sync/ledgers/netsuite/resources/subsidiary.rb +12 -0
  474. data/lib/ledger_sync/ledgers/netsuite/resources/vendor.rb +23 -0
  475. data/lib/ledger_sync/ledgers/netsuite/searcher.rb +64 -0
  476. data/lib/ledger_sync/ledgers/netsuite/serializer.rb +13 -0
  477. data/lib/ledger_sync/ledgers/netsuite/subsidiary/deserializer.rb +17 -0
  478. data/lib/ledger_sync/ledgers/netsuite/subsidiary/searcher.rb +12 -0
  479. data/lib/ledger_sync/ledgers/netsuite/subsidiary/searcher_deserializer.rb +15 -0
  480. data/lib/ledger_sync/ledgers/netsuite/subsidiary/serializer.rb +15 -0
  481. data/lib/ledger_sync/ledgers/netsuite/token.rb +158 -0
  482. data/lib/ledger_sync/ledgers/netsuite/type/deserializer_active_type.rb +32 -0
  483. data/lib/ledger_sync/ledgers/netsuite/type/deserializer_customer_type.rb +33 -0
  484. data/lib/ledger_sync/ledgers/netsuite/type/deserializer_entity_type.rb +30 -0
  485. data/lib/ledger_sync/ledgers/netsuite/type/deserializer_subsidiary_type.rb +33 -0
  486. data/lib/ledger_sync/ledgers/netsuite/vendor/deserializer.rb +30 -0
  487. data/lib/ledger_sync/ledgers/netsuite/vendor/operations/create.rb +27 -0
  488. data/lib/ledger_sync/ledgers/netsuite/vendor/operations/delete.rb +27 -0
  489. data/lib/ledger_sync/ledgers/netsuite/vendor/operations/find.rb +27 -0
  490. data/lib/ledger_sync/ledgers/netsuite/vendor/operations/update.rb +27 -0
  491. data/lib/ledger_sync/ledgers/netsuite/vendor/searcher.rb +12 -0
  492. data/lib/ledger_sync/ledgers/netsuite/vendor/searcher_deserializer.rb +21 -0
  493. data/lib/ledger_sync/ledgers/netsuite/vendor/serializer.rb +30 -0
  494. data/lib/ledger_sync/ledgers/netsuite_soap/client.rb +92 -0
  495. data/lib/ledger_sync/ledgers/netsuite_soap/config.rb +5 -0
  496. data/lib/ledger_sync/ledgers/netsuite_soap/customer/operations/create.rb +64 -0
  497. data/lib/ledger_sync/ledgers/netsuite_soap/customer/operations/find.rb +49 -0
  498. data/lib/ledger_sync/ledgers/netsuite_soap/operation.rb +40 -0
  499. data/lib/ledger_sync/ledgers/netsuite_soap/operation/create.rb +29 -0
  500. data/lib/ledger_sync/ledgers/netsuite_soap/operation/find.rb +15 -0
  501. data/lib/ledger_sync/ledgers/netsuite_soap/resource.rb +10 -0
  502. data/lib/ledger_sync/ledgers/netsuite_soap/resources/customer.rb +29 -0
  503. data/lib/ledger_sync/ledgers/netsuite_soap/resources/subsidiary.rb +12 -0
  504. data/lib/ledger_sync/ledgers/netsuite_soap/subsidiary/operations/create.rb +42 -0
  505. data/lib/ledger_sync/ledgers/netsuite_soap/subsidiary/operations/find.rb +38 -0
  506. data/lib/ledger_sync/ledgers/operation.rb +181 -0
  507. data/lib/ledger_sync/ledgers/quickbooks_online/account/deserializer.rb +43 -0
  508. data/lib/ledger_sync/ledgers/quickbooks_online/account/operations/create.rb +26 -0
  509. data/lib/ledger_sync/ledgers/quickbooks_online/account/operations/find.rb +26 -0
  510. data/lib/ledger_sync/ledgers/quickbooks_online/account/operations/update.rb +30 -0
  511. data/lib/ledger_sync/ledgers/quickbooks_online/account/searcher.rb +15 -0
  512. data/lib/ledger_sync/ledgers/quickbooks_online/account/serializer.rb +37 -0
  513. data/lib/ledger_sync/ledgers/quickbooks_online/bill/deserializer.rb +45 -0
  514. data/lib/ledger_sync/ledgers/quickbooks_online/bill/operations/create.rb +27 -0
  515. data/lib/ledger_sync/ledgers/quickbooks_online/bill/operations/find.rb +27 -0
  516. data/lib/ledger_sync/ledgers/quickbooks_online/bill/operations/update.rb +27 -0
  517. data/lib/ledger_sync/ledgers/quickbooks_online/bill/searcher.rb +14 -0
  518. data/lib/ledger_sync/ledgers/quickbooks_online/bill/serializer.rb +44 -0
  519. data/lib/ledger_sync/ledgers/quickbooks_online/bill_line_item/deserializer.rb +25 -0
  520. data/lib/ledger_sync/ledgers/quickbooks_online/bill_line_item/serializer.rb +29 -0
  521. data/lib/ledger_sync/ledgers/quickbooks_online/bill_payment/deserializer.rb +59 -0
  522. data/lib/ledger_sync/ledgers/quickbooks_online/bill_payment/operations/create.rb +33 -0
  523. data/lib/ledger_sync/ledgers/quickbooks_online/bill_payment/operations/find.rb +33 -0
  524. data/lib/ledger_sync/ledgers/quickbooks_online/bill_payment/operations/update.rb +33 -0
  525. data/lib/ledger_sync/ledgers/quickbooks_online/bill_payment/serializer.rb +77 -0
  526. data/lib/ledger_sync/ledgers/quickbooks_online/bill_payment_line_item/deserializer.rb +18 -0
  527. data/lib/ledger_sync/ledgers/quickbooks_online/bill_payment_line_item/serializer.rb +18 -0
  528. data/lib/ledger_sync/ledgers/quickbooks_online/client.rb +258 -0
  529. data/lib/ledger_sync/ledgers/quickbooks_online/config.rb +8 -0
  530. data/lib/ledger_sync/ledgers/quickbooks_online/currency/deserializer.rb +17 -0
  531. data/lib/ledger_sync/ledgers/quickbooks_online/currency/serializer.rb +16 -0
  532. data/lib/ledger_sync/ledgers/quickbooks_online/customer/deserializer.rb +19 -0
  533. data/lib/ledger_sync/ledgers/quickbooks_online/customer/operations/create.rb +26 -0
  534. data/lib/ledger_sync/ledgers/quickbooks_online/customer/operations/find.rb +26 -0
  535. data/lib/ledger_sync/ledgers/quickbooks_online/customer/operations/update.rb +26 -0
  536. data/lib/ledger_sync/ledgers/quickbooks_online/customer/searcher.rb +13 -0
  537. data/lib/ledger_sync/ledgers/quickbooks_online/customer/serializer.rb +19 -0
  538. data/lib/ledger_sync/ledgers/quickbooks_online/dashboard_url_helper.rb +34 -0
  539. data/lib/ledger_sync/ledgers/quickbooks_online/department/deserializer.rb +28 -0
  540. data/lib/ledger_sync/ledgers/quickbooks_online/department/operations/create.rb +23 -0
  541. data/lib/ledger_sync/ledgers/quickbooks_online/department/operations/find.rb +23 -0
  542. data/lib/ledger_sync/ledgers/quickbooks_online/department/operations/update.rb +25 -0
  543. data/lib/ledger_sync/ledgers/quickbooks_online/department/searcher.rb +17 -0
  544. data/lib/ledger_sync/ledgers/quickbooks_online/department/serializer.rb +49 -0
  545. data/lib/ledger_sync/ledgers/quickbooks_online/deposit/deserializer.rb +39 -0
  546. data/lib/ledger_sync/ledgers/quickbooks_online/deposit/operations/create.rb +25 -0
  547. data/lib/ledger_sync/ledgers/quickbooks_online/deposit/operations/find.rb +25 -0
  548. data/lib/ledger_sync/ledgers/quickbooks_online/deposit/operations/update.rb +27 -0
  549. data/lib/ledger_sync/ledgers/quickbooks_online/deposit/searcher.rb +13 -0
  550. data/lib/ledger_sync/ledgers/quickbooks_online/deposit/serializer.rb +39 -0
  551. data/lib/ledger_sync/ledgers/quickbooks_online/deposit_line_item/deserializer.rb +38 -0
  552. data/lib/ledger_sync/ledgers/quickbooks_online/deposit_line_item/serializer.rb +41 -0
  553. data/lib/ledger_sync/ledgers/quickbooks_online/deserializer.rb +98 -0
  554. data/lib/ledger_sync/ledgers/quickbooks_online/expense/deserializer.rb +58 -0
  555. data/lib/ledger_sync/ledgers/quickbooks_online/expense/operations/create.rb +28 -0
  556. data/lib/ledger_sync/ledgers/quickbooks_online/expense/operations/find.rb +28 -0
  557. data/lib/ledger_sync/ledgers/quickbooks_online/expense/operations/update.rb +28 -0
  558. data/lib/ledger_sync/ledgers/quickbooks_online/expense/searcher.rb +14 -0
  559. data/lib/ledger_sync/ledgers/quickbooks_online/expense/serializer.rb +59 -0
  560. data/lib/ledger_sync/ledgers/quickbooks_online/expense_line_item/deserializer.rb +25 -0
  561. data/lib/ledger_sync/ledgers/quickbooks_online/expense_line_item/serializer.rb +27 -0
  562. data/lib/ledger_sync/ledgers/quickbooks_online/invoice/deserializer.rb +35 -0
  563. data/lib/ledger_sync/ledgers/quickbooks_online/invoice/operations/create.rb +27 -0
  564. data/lib/ledger_sync/ledgers/quickbooks_online/invoice/operations/find.rb +25 -0
  565. data/lib/ledger_sync/ledgers/quickbooks_online/invoice/operations/update.rb +25 -0
  566. data/lib/ledger_sync/ledgers/quickbooks_online/invoice/serializer.rb +35 -0
  567. data/lib/ledger_sync/ledgers/quickbooks_online/invoice_sales_line_item/deserializer.rb +25 -0
  568. data/lib/ledger_sync/ledgers/quickbooks_online/invoice_sales_line_item/serializer.rb +29 -0
  569. data/lib/ledger_sync/ledgers/quickbooks_online/item/deserializer.rb +13 -0
  570. data/lib/ledger_sync/ledgers/quickbooks_online/item/serializer.rb +12 -0
  571. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry/deserializer.rb +33 -0
  572. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry/operations/create.rb +23 -0
  573. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry/operations/find.rb +23 -0
  574. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry/operations/update.rb +23 -0
  575. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry/searcher.rb +14 -0
  576. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry/serializer.rb +33 -0
  577. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry_line_item/deserializer.rb +32 -0
  578. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry_line_item/serializer.rb +36 -0
  579. data/lib/ledger_sync/ledgers/quickbooks_online/ledger_class/deserializer.rb +29 -0
  580. data/lib/ledger_sync/ledgers/quickbooks_online/ledger_class/operations/create.rb +23 -0
  581. data/lib/ledger_sync/ledgers/quickbooks_online/ledger_class/operations/find.rb +23 -0
  582. data/lib/ledger_sync/ledgers/quickbooks_online/ledger_class/operations/update.rb +25 -0
  583. data/lib/ledger_sync/ledgers/quickbooks_online/ledger_class/searcher.rb +15 -0
  584. data/lib/ledger_sync/ledgers/quickbooks_online/ledger_class/serializer.rb +24 -0
  585. data/lib/ledger_sync/ledgers/quickbooks_online/oauth_client.rb +93 -0
  586. data/lib/ledger_sync/ledgers/quickbooks_online/operation.rb +61 -0
  587. data/lib/ledger_sync/ledgers/quickbooks_online/operation/create.rb +26 -0
  588. data/lib/ledger_sync/ledgers/quickbooks_online/operation/find.rb +25 -0
  589. data/lib/ledger_sync/ledgers/quickbooks_online/operation/full_update.rb +44 -0
  590. data/lib/ledger_sync/ledgers/quickbooks_online/operation/sparse_update.rb +29 -0
  591. data/lib/ledger_sync/ledgers/quickbooks_online/payment/deserializer.rb +48 -0
  592. data/lib/ledger_sync/ledgers/quickbooks_online/payment/operations/create.rb +30 -0
  593. data/lib/ledger_sync/ledgers/quickbooks_online/payment/operations/find.rb +28 -0
  594. data/lib/ledger_sync/ledgers/quickbooks_online/payment/operations/update.rb +28 -0
  595. data/lib/ledger_sync/ledgers/quickbooks_online/payment/serializer.rb +48 -0
  596. data/lib/ledger_sync/ledgers/quickbooks_online/payment_line_item/deserializer.rb +18 -0
  597. data/lib/ledger_sync/ledgers/quickbooks_online/payment_line_item/serializer.rb +18 -0
  598. data/lib/ledger_sync/ledgers/quickbooks_online/preferences/deserializer.rb +43 -0
  599. data/lib/ledger_sync/ledgers/quickbooks_online/preferences/operations/find.rb +30 -0
  600. data/lib/ledger_sync/ledgers/quickbooks_online/preferences/serializer.rb +43 -0
  601. data/lib/ledger_sync/ledgers/quickbooks_online/request.rb +98 -0
  602. data/lib/ledger_sync/ledgers/quickbooks_online/resource.rb +10 -0
  603. data/lib/ledger_sync/ledgers/quickbooks_online/resources/account.rb +355 -0
  604. data/lib/ledger_sync/ledgers/quickbooks_online/resources/bill.rb +31 -0
  605. data/lib/ledger_sync/ledgers/quickbooks_online/resources/bill_line_item.rb +21 -0
  606. data/lib/ledger_sync/ledgers/quickbooks_online/resources/bill_payment.rb +42 -0
  607. data/lib/ledger_sync/ledgers/quickbooks_online/resources/bill_payment_line_item.rb +19 -0
  608. data/lib/ledger_sync/ledgers/quickbooks_online/resources/currency.rb +13 -0
  609. data/lib/ledger_sync/ledgers/quickbooks_online/resources/customer.rb +19 -0
  610. data/lib/ledger_sync/ledgers/quickbooks_online/resources/department.rb +16 -0
  611. data/lib/ledger_sync/ledgers/quickbooks_online/resources/deposit.rb +28 -0
  612. data/lib/ledger_sync/ledgers/quickbooks_online/resources/deposit_line_item.rb +25 -0
  613. data/lib/ledger_sync/ledgers/quickbooks_online/resources/expense.rb +40 -0
  614. data/lib/ledger_sync/ledgers/quickbooks_online/resources/expense_line_item.rb +21 -0
  615. data/lib/ledger_sync/ledgers/quickbooks_online/resources/invoice.rb +28 -0
  616. data/lib/ledger_sync/ledgers/quickbooks_online/resources/invoice_sales_line_item.rb +21 -0
  617. data/lib/ledger_sync/ledgers/quickbooks_online/resources/item.rb +11 -0
  618. data/lib/ledger_sync/ledgers/quickbooks_online/resources/journal_entry.rb +24 -0
  619. data/lib/ledger_sync/ledgers/quickbooks_online/resources/journal_entry_line_item.rb +29 -0
  620. data/lib/ledger_sync/ledgers/quickbooks_online/resources/ledger_class.rb +16 -0
  621. data/lib/ledger_sync/ledgers/quickbooks_online/resources/payment.rb +31 -0
  622. data/lib/ledger_sync/ledgers/quickbooks_online/resources/payment_line_item.rb +19 -0
  623. data/lib/ledger_sync/ledgers/quickbooks_online/resources/preferences.rb +24 -0
  624. data/lib/ledger_sync/ledgers/quickbooks_online/resources/primary_email_addr.rb +11 -0
  625. data/lib/ledger_sync/ledgers/quickbooks_online/resources/primary_phone.rb +11 -0
  626. data/lib/ledger_sync/ledgers/quickbooks_online/resources/subsidiary.rb +12 -0
  627. data/lib/ledger_sync/ledgers/quickbooks_online/resources/transfer.rb +24 -0
  628. data/lib/ledger_sync/ledgers/quickbooks_online/resources/vendor.rb +23 -0
  629. data/lib/ledger_sync/ledgers/quickbooks_online/searcher.rb +60 -0
  630. data/lib/ledger_sync/ledgers/quickbooks_online/serialization/type/amount_float_to_integer_type.rb +21 -0
  631. data/lib/ledger_sync/ledgers/quickbooks_online/serialization/type/deserialize_transaction_reference_type.rb +30 -0
  632. data/lib/ledger_sync/ledgers/quickbooks_online/serialization/type/integer_to_amount_float_type.rb +21 -0
  633. data/lib/ledger_sync/ledgers/quickbooks_online/serialization/type/serialize_transaction_reference_type.rb +30 -0
  634. data/lib/ledger_sync/ledgers/quickbooks_online/serializer.rb +71 -0
  635. data/lib/ledger_sync/ledgers/quickbooks_online/serialziation/type/mapping_type.rb +25 -0
  636. data/lib/ledger_sync/ledgers/quickbooks_online/transfer/deserializer.rb +34 -0
  637. data/lib/ledger_sync/ledgers/quickbooks_online/transfer/operations/create.rb +24 -0
  638. data/lib/ledger_sync/ledgers/quickbooks_online/transfer/operations/find.rb +24 -0
  639. data/lib/ledger_sync/ledgers/quickbooks_online/transfer/operations/update.rb +26 -0
  640. data/lib/ledger_sync/ledgers/quickbooks_online/transfer/serializer.rb +34 -0
  641. data/lib/ledger_sync/ledgers/quickbooks_online/util/error_matcher.rb +54 -0
  642. data/lib/ledger_sync/ledgers/quickbooks_online/util/error_parser.rb +27 -0
  643. data/lib/ledger_sync/ledgers/quickbooks_online/util/ledger_error_parser.rb +103 -0
  644. data/lib/ledger_sync/ledgers/quickbooks_online/util/operation_error_parser.rb +99 -0
  645. data/lib/ledger_sync/ledgers/quickbooks_online/vendor/deserializer.rb +25 -0
  646. data/lib/ledger_sync/ledgers/quickbooks_online/vendor/operations/create.rb +27 -0
  647. data/lib/ledger_sync/ledgers/quickbooks_online/vendor/operations/find.rb +27 -0
  648. data/lib/ledger_sync/ledgers/quickbooks_online/vendor/operations/update.rb +27 -0
  649. data/lib/ledger_sync/ledgers/quickbooks_online/vendor/searcher.rb +15 -0
  650. data/lib/ledger_sync/ledgers/quickbooks_online/vendor/serializer.rb +25 -0
  651. data/lib/ledger_sync/ledgers/quickbooks_online/webhook.rb +58 -0
  652. data/lib/ledger_sync/ledgers/quickbooks_online/webhook_event.rb +79 -0
  653. data/lib/ledger_sync/ledgers/quickbooks_online/webhook_notification.rb +42 -0
  654. data/lib/ledger_sync/ledgers/request.rb +57 -0
  655. data/lib/ledger_sync/ledgers/response.rb +55 -0
  656. data/lib/ledger_sync/ledgers/searcher.rb +73 -0
  657. data/lib/ledger_sync/ledgers/stripe/client.rb +37 -0
  658. data/lib/ledger_sync/ledgers/stripe/config.rb +5 -0
  659. data/lib/ledger_sync/ledgers/stripe/customer/operations/create.rb +44 -0
  660. data/lib/ledger_sync/ledgers/stripe/customer/operations/delete.rb +35 -0
  661. data/lib/ledger_sync/ledgers/stripe/customer/operations/find.rb +44 -0
  662. data/lib/ledger_sync/ledgers/stripe/customer/operations/update.rb +43 -0
  663. data/lib/ledger_sync/ledgers/stripe/dashboard_url_helper.rb +21 -0
  664. data/lib/ledger_sync/ledgers/stripe/operation.rb +35 -0
  665. data/lib/ledger_sync/ledgers/stripe/operation/create.rb +17 -0
  666. data/lib/ledger_sync/ledgers/stripe/operation/delete.rb +17 -0
  667. data/lib/ledger_sync/ledgers/stripe/operation/find.rb +15 -0
  668. data/lib/ledger_sync/ledgers/stripe/operation/update.rb +17 -0
  669. data/lib/ledger_sync/ledgers/stripe/resource.rb +10 -0
  670. data/lib/ledger_sync/ledgers/stripe/resources/customer.rb +13 -0
  671. data/lib/ledger_sync/operation.rb +23 -0
  672. data/lib/ledger_sync/resource.rb +12 -1
  673. data/lib/ledger_sync/resource_adaptor.rb +52 -0
  674. data/lib/ledger_sync/resource_attribute.rb +6 -7
  675. data/lib/ledger_sync/resource_attribute/dirty_mixin.rb +4 -0
  676. data/lib/ledger_sync/resource_attribute/mixin.rb +1 -1
  677. data/lib/ledger_sync/resource_attribute/reference/many.rb +10 -18
  678. data/lib/ledger_sync/resource_attribute/reference/one.rb +6 -1
  679. data/lib/ledger_sync/result.rb +3 -3
  680. data/lib/ledger_sync/serialization/attribute.rb +4 -10
  681. data/lib/ledger_sync/serialization/attribute_set_mixin.rb +1 -1
  682. data/lib/ledger_sync/serialization/deserializer_attribute.rb +30 -12
  683. data/lib/ledger_sync/serialization/deserializer_attribute_set.rb +1 -1
  684. data/lib/ledger_sync/serialization/mixin.rb +12 -14
  685. data/lib/ledger_sync/serialization/serializer_attribute.rb +16 -3
  686. data/lib/ledger_sync/serialization/serializer_attribute_set.rb +1 -1
  687. data/lib/ledger_sync/serialization/type/deserializer_references_many_type.rb +26 -0
  688. data/lib/ledger_sync/serialization/type/deserializer_references_one_type.rb +12 -0
  689. data/lib/ledger_sync/serialization/type/deserializer_type.rb +29 -0
  690. data/lib/ledger_sync/serialization/type/format_date_type.rb +23 -0
  691. data/lib/ledger_sync/serialization/type/mapping_type.rb +23 -0
  692. data/lib/ledger_sync/serialization/type/parse_date_type.rb +23 -0
  693. data/lib/ledger_sync/serialization/type/serializer_references_many_type.rb +21 -0
  694. data/lib/ledger_sync/serialization/type/serializer_references_one_type.rb +12 -0
  695. data/lib/ledger_sync/serialization/type/serializer_type.rb +5 -5
  696. data/lib/ledger_sync/serializer.rb +49 -0
  697. data/lib/ledger_sync/type/boolean.rb +2 -0
  698. data/lib/ledger_sync/type/date.rb +1 -1
  699. data/lib/ledger_sync/type/float.rb +2 -0
  700. data/lib/ledger_sync/type/hash.rb +6 -2
  701. data/lib/ledger_sync/type/id.rb +6 -2
  702. data/lib/ledger_sync/type/integer.rb +2 -0
  703. data/lib/ledger_sync/type/reference_many.rb +15 -5
  704. data/lib/ledger_sync/type/reference_one.rb +9 -22
  705. data/lib/ledger_sync/type/string.rb +2 -0
  706. data/lib/ledger_sync/type/string_from_set.rb +43 -0
  707. data/lib/ledger_sync/type/value_mixin.rb +37 -7
  708. data/lib/ledger_sync/util/mixins/delegate_iterable_methods_mixin.rb +1 -0
  709. data/lib/ledger_sync/util/mixins/resource_registerable_mixin.rb +29 -0
  710. data/lib/ledger_sync/util/resource_converter.rb +113 -0
  711. data/lib/ledger_sync/util/resource_converter/attribute.rb +131 -0
  712. data/lib/ledger_sync/util/resource_converter/attribute_set.rb +42 -0
  713. data/lib/ledger_sync/util/resource_converter/type/references_many_type.rb +27 -0
  714. data/lib/ledger_sync/util/resource_converter/type/references_one_type.rb +14 -0
  715. data/lib/ledger_sync/util/resource_converter/type/resource_converter_type.rb +26 -0
  716. data/lib/ledger_sync/util/resources_builder.rb +19 -11
  717. data/lib/ledger_sync/util/string_helpers.rb +3 -3
  718. data/lib/ledger_sync/util/url_helpers.rb +38 -0
  719. data/lib/ledger_sync/util/validator.rb +3 -1
  720. data/lib/ledger_sync/version.rb +1 -1
  721. data/licenses/BSL.txt +97 -0
  722. data/licenses/documentation_site.txt +7 -0
  723. metadata +683 -243
  724. data/.ruby-version +0 -1
  725. data/_config.yml +0 -1
  726. data/lib/ledger_sync/adaptor_configuration.rb +0 -61
  727. data/lib/ledger_sync/adaptor_configuration_store.rb +0 -56
  728. data/lib/ledger_sync/adaptors/adaptor.rb +0 -100
  729. data/lib/ledger_sync/adaptors/contract.rb +0 -16
  730. data/lib/ledger_sync/adaptors/dashboard_url_helper.rb +0 -23
  731. data/lib/ledger_sync/adaptors/ledger_serializer.rb +0 -143
  732. data/lib/ledger_sync/adaptors/ledger_serializer_attribute.rb +0 -178
  733. data/lib/ledger_sync/adaptors/ledger_serializer_attribute_set.rb +0 -56
  734. data/lib/ledger_sync/adaptors/ledger_serializer_type/mapping_type.rb +0 -41
  735. data/lib/ledger_sync/adaptors/ledger_serializer_type/references_many_type.rb +0 -24
  736. data/lib/ledger_sync/adaptors/ledger_serializer_type/references_one_type.rb +0 -22
  737. data/lib/ledger_sync/adaptors/ledger_serializer_type/value_type.rb +0 -17
  738. data/lib/ledger_sync/adaptors/mixins/infer_adaptor_class_mixin.rb +0 -24
  739. data/lib/ledger_sync/adaptors/mixins/infer_ledger_serializer_mixin.rb +0 -61
  740. data/lib/ledger_sync/adaptors/mixins/infer_resource_class_mixin.rb +0 -22
  741. data/lib/ledger_sync/adaptors/mixins/infer_validation_contract_mixin.rb +0 -27
  742. data/lib/ledger_sync/adaptors/mixins/offset_and_limit_pagination_searcher_mixin.rb +0 -37
  743. data/lib/ledger_sync/adaptors/netsuite/account/ledger_deserializer.rb +0 -24
  744. data/lib/ledger_sync/adaptors/netsuite/account/ledger_serializer.rb +0 -22
  745. data/lib/ledger_sync/adaptors/netsuite/account/operations/create.rb +0 -28
  746. data/lib/ledger_sync/adaptors/netsuite/account/operations/find.rb +0 -28
  747. data/lib/ledger_sync/adaptors/netsuite/account/searcher.rb +0 -12
  748. data/lib/ledger_sync/adaptors/netsuite/account/searcher_ledger_deserializer.rb +0 -30
  749. data/lib/ledger_sync/adaptors/netsuite/adaptor.rb +0 -161
  750. data/lib/ledger_sync/adaptors/netsuite/config.rb +0 -5
  751. data/lib/ledger_sync/adaptors/netsuite/currency/deledger_serializer.rb +0 -28
  752. data/lib/ledger_sync/adaptors/netsuite/currency/ledger_serializer.rb +0 -25
  753. data/lib/ledger_sync/adaptors/netsuite/currency/operations/create.rb +0 -25
  754. data/lib/ledger_sync/adaptors/netsuite/currency/operations/delete.rb +0 -23
  755. data/lib/ledger_sync/adaptors/netsuite/currency/operations/find.rb +0 -23
  756. data/lib/ledger_sync/adaptors/netsuite/currency/operations/update.rb +0 -23
  757. data/lib/ledger_sync/adaptors/netsuite/customer/ledger_deserializer.rb +0 -27
  758. data/lib/ledger_sync/adaptors/netsuite/customer/ledger_serializer.rb +0 -38
  759. data/lib/ledger_sync/adaptors/netsuite/customer/operations/create.rb +0 -24
  760. data/lib/ledger_sync/adaptors/netsuite/customer/operations/delete.rb +0 -24
  761. data/lib/ledger_sync/adaptors/netsuite/customer/operations/find.rb +0 -24
  762. data/lib/ledger_sync/adaptors/netsuite/customer/operations/update.rb +0 -24
  763. data/lib/ledger_sync/adaptors/netsuite/customer/searcher.rb +0 -12
  764. data/lib/ledger_sync/adaptors/netsuite/customer/searcher_ledger_deserializer.rb +0 -23
  765. data/lib/ledger_sync/adaptors/netsuite/dashboard_url_helper.rb +0 -24
  766. data/lib/ledger_sync/adaptors/netsuite/department/ledger_serializer.rb +0 -17
  767. data/lib/ledger_sync/adaptors/netsuite/department/operations/create.rb +0 -25
  768. data/lib/ledger_sync/adaptors/netsuite/department/operations/delete.rb +0 -25
  769. data/lib/ledger_sync/adaptors/netsuite/department/operations/find.rb +0 -25
  770. data/lib/ledger_sync/adaptors/netsuite/department/operations/update.rb +0 -25
  771. data/lib/ledger_sync/adaptors/netsuite/department/searcher.rb +0 -12
  772. data/lib/ledger_sync/adaptors/netsuite/department/searcher_ledger_deserializer.rb +0 -21
  773. data/lib/ledger_sync/adaptors/netsuite/ledger_serializer.rb +0 -30
  774. data/lib/ledger_sync/adaptors/netsuite/ledger_serializer_type/active_type.rb +0 -26
  775. data/lib/ledger_sync/adaptors/netsuite/ledger_serializer_type/reference_type.rb +0 -24
  776. data/lib/ledger_sync/adaptors/netsuite/ledger_serializer_type/subsidiary_type.rb +0 -22
  777. data/lib/ledger_sync/adaptors/netsuite/location/ledger_serializer.rb +0 -18
  778. data/lib/ledger_sync/adaptors/netsuite/location/operations/create.rb +0 -21
  779. data/lib/ledger_sync/adaptors/netsuite/location/operations/delete.rb +0 -21
  780. data/lib/ledger_sync/adaptors/netsuite/location/operations/find.rb +0 -21
  781. data/lib/ledger_sync/adaptors/netsuite/location/operations/update.rb +0 -21
  782. data/lib/ledger_sync/adaptors/netsuite/location/searcher.rb +0 -12
  783. data/lib/ledger_sync/adaptors/netsuite/operation.rb +0 -19
  784. data/lib/ledger_sync/adaptors/netsuite/operation/create.rb +0 -65
  785. data/lib/ledger_sync/adaptors/netsuite/operation/delete.rb +0 -49
  786. data/lib/ledger_sync/adaptors/netsuite/operation/find.rb +0 -56
  787. data/lib/ledger_sync/adaptors/netsuite/operation/update.rb +0 -68
  788. data/lib/ledger_sync/adaptors/netsuite/record/http_method.rb +0 -33
  789. data/lib/ledger_sync/adaptors/netsuite/record/metadata.rb +0 -105
  790. data/lib/ledger_sync/adaptors/netsuite/record/parameter.rb +0 -20
  791. data/lib/ledger_sync/adaptors/netsuite/record/property.rb +0 -22
  792. data/lib/ledger_sync/adaptors/netsuite/searcher.rb +0 -58
  793. data/lib/ledger_sync/adaptors/netsuite/token.rb +0 -162
  794. data/lib/ledger_sync/adaptors/netsuite/vendor/ledger_deserializer.rb +0 -32
  795. data/lib/ledger_sync/adaptors/netsuite/vendor/ledger_serializer.rb +0 -35
  796. data/lib/ledger_sync/adaptors/netsuite/vendor/operations/create.rb +0 -27
  797. data/lib/ledger_sync/adaptors/netsuite/vendor/operations/delete.rb +0 -27
  798. data/lib/ledger_sync/adaptors/netsuite/vendor/operations/find.rb +0 -27
  799. data/lib/ledger_sync/adaptors/netsuite/vendor/operations/update.rb +0 -27
  800. data/lib/ledger_sync/adaptors/netsuite/vendor/searcher.rb +0 -12
  801. data/lib/ledger_sync/adaptors/netsuite/vendor/searcher_ledger_deserializer.rb +0 -23
  802. data/lib/ledger_sync/adaptors/netsuite_soap/adaptor.rb +0 -92
  803. data/lib/ledger_sync/adaptors/netsuite_soap/config.rb +0 -5
  804. data/lib/ledger_sync/adaptors/netsuite_soap/customer/ledger_serializer.rb +0 -13
  805. data/lib/ledger_sync/adaptors/netsuite_soap/customer/operations/create.rb +0 -64
  806. data/lib/ledger_sync/adaptors/netsuite_soap/customer/operations/find.rb +0 -49
  807. data/lib/ledger_sync/adaptors/netsuite_soap/ledger_serializer.rb +0 -25
  808. data/lib/ledger_sync/adaptors/netsuite_soap/operation.rb +0 -40
  809. data/lib/ledger_sync/adaptors/netsuite_soap/operation/create.rb +0 -29
  810. data/lib/ledger_sync/adaptors/netsuite_soap/operation/find.rb +0 -15
  811. data/lib/ledger_sync/adaptors/netsuite_soap/subsidiary/operations/create.rb +0 -42
  812. data/lib/ledger_sync/adaptors/netsuite_soap/subsidiary/operations/find.rb +0 -38
  813. data/lib/ledger_sync/adaptors/operation.rb +0 -180
  814. data/lib/ledger_sync/adaptors/quickbooks_online/account/ledger_serializer.rb +0 -37
  815. data/lib/ledger_sync/adaptors/quickbooks_online/account/operations/create.rb +0 -26
  816. data/lib/ledger_sync/adaptors/quickbooks_online/account/operations/find.rb +0 -26
  817. data/lib/ledger_sync/adaptors/quickbooks_online/account/operations/update.rb +0 -30
  818. data/lib/ledger_sync/adaptors/quickbooks_online/account/searcher.rb +0 -15
  819. data/lib/ledger_sync/adaptors/quickbooks_online/adaptor.rb +0 -258
  820. data/lib/ledger_sync/adaptors/quickbooks_online/bill/ledger_serializer.rb +0 -46
  821. data/lib/ledger_sync/adaptors/quickbooks_online/bill/operations/create.rb +0 -27
  822. data/lib/ledger_sync/adaptors/quickbooks_online/bill/operations/find.rb +0 -27
  823. data/lib/ledger_sync/adaptors/quickbooks_online/bill/operations/update.rb +0 -27
  824. data/lib/ledger_sync/adaptors/quickbooks_online/bill/searcher.rb +0 -14
  825. data/lib/ledger_sync/adaptors/quickbooks_online/bill_line_item/ledger_serializer.rb +0 -30
  826. data/lib/ledger_sync/adaptors/quickbooks_online/bill_payment/ledger_serializer.rb +0 -76
  827. data/lib/ledger_sync/adaptors/quickbooks_online/bill_payment/operations/create.rb +0 -33
  828. data/lib/ledger_sync/adaptors/quickbooks_online/bill_payment/operations/find.rb +0 -33
  829. data/lib/ledger_sync/adaptors/quickbooks_online/bill_payment/operations/update.rb +0 -33
  830. data/lib/ledger_sync/adaptors/quickbooks_online/bill_payment_line_item/ledger_serializer.rb +0 -19
  831. data/lib/ledger_sync/adaptors/quickbooks_online/config.rb +0 -8
  832. data/lib/ledger_sync/adaptors/quickbooks_online/currency/ledger_serializer.rb +0 -17
  833. data/lib/ledger_sync/adaptors/quickbooks_online/customer/ledger_serializer.rb +0 -23
  834. data/lib/ledger_sync/adaptors/quickbooks_online/customer/operations/create.rb +0 -22
  835. data/lib/ledger_sync/adaptors/quickbooks_online/customer/operations/find.rb +0 -22
  836. data/lib/ledger_sync/adaptors/quickbooks_online/customer/operations/update.rb +0 -24
  837. data/lib/ledger_sync/adaptors/quickbooks_online/customer/searcher.rb +0 -13
  838. data/lib/ledger_sync/adaptors/quickbooks_online/dashboard_url_helper.rb +0 -34
  839. data/lib/ledger_sync/adaptors/quickbooks_online/department/ledger_serializer.rb +0 -41
  840. data/lib/ledger_sync/adaptors/quickbooks_online/department/operations/create.rb +0 -23
  841. data/lib/ledger_sync/adaptors/quickbooks_online/department/operations/find.rb +0 -23
  842. data/lib/ledger_sync/adaptors/quickbooks_online/department/operations/update.rb +0 -25
  843. data/lib/ledger_sync/adaptors/quickbooks_online/department/searcher.rb +0 -17
  844. data/lib/ledger_sync/adaptors/quickbooks_online/deposit/ledger_serializer.rb +0 -40
  845. data/lib/ledger_sync/adaptors/quickbooks_online/deposit/operations/create.rb +0 -25
  846. data/lib/ledger_sync/adaptors/quickbooks_online/deposit/operations/find.rb +0 -25
  847. data/lib/ledger_sync/adaptors/quickbooks_online/deposit/operations/update.rb +0 -27
  848. data/lib/ledger_sync/adaptors/quickbooks_online/deposit/searcher.rb +0 -13
  849. data/lib/ledger_sync/adaptors/quickbooks_online/deposit_line_item/ledger_serializer.rb +0 -34
  850. data/lib/ledger_sync/adaptors/quickbooks_online/expense/ledger_serializer.rb +0 -52
  851. data/lib/ledger_sync/adaptors/quickbooks_online/expense/operations/create.rb +0 -28
  852. data/lib/ledger_sync/adaptors/quickbooks_online/expense/operations/find.rb +0 -28
  853. data/lib/ledger_sync/adaptors/quickbooks_online/expense/operations/update.rb +0 -28
  854. data/lib/ledger_sync/adaptors/quickbooks_online/expense/searcher.rb +0 -14
  855. data/lib/ledger_sync/adaptors/quickbooks_online/expense_line_item/ledger_serializer.rb +0 -30
  856. data/lib/ledger_sync/adaptors/quickbooks_online/invoice/ledger_serializer.rb +0 -36
  857. data/lib/ledger_sync/adaptors/quickbooks_online/invoice/operations/create.rb +0 -27
  858. data/lib/ledger_sync/adaptors/quickbooks_online/invoice/operations/find.rb +0 -25
  859. data/lib/ledger_sync/adaptors/quickbooks_online/invoice/operations/update.rb +0 -25
  860. data/lib/ledger_sync/adaptors/quickbooks_online/invoice_sales_line_item/ledger_serializer.rb +0 -30
  861. data/lib/ledger_sync/adaptors/quickbooks_online/item/ledger_serializer.rb +0 -13
  862. data/lib/ledger_sync/adaptors/quickbooks_online/journal_entry/ledger_serializer.rb +0 -34
  863. data/lib/ledger_sync/adaptors/quickbooks_online/journal_entry/operations/create.rb +0 -23
  864. data/lib/ledger_sync/adaptors/quickbooks_online/journal_entry/operations/find.rb +0 -23
  865. data/lib/ledger_sync/adaptors/quickbooks_online/journal_entry/operations/update.rb +0 -23
  866. data/lib/ledger_sync/adaptors/quickbooks_online/journal_entry/searcher.rb +0 -14
  867. data/lib/ledger_sync/adaptors/quickbooks_online/journal_entry_line_item/ledger_serializer.rb +0 -37
  868. data/lib/ledger_sync/adaptors/quickbooks_online/ledger_class/ledger_serializer.rb +0 -25
  869. data/lib/ledger_sync/adaptors/quickbooks_online/ledger_class/operations/create.rb +0 -23
  870. data/lib/ledger_sync/adaptors/quickbooks_online/ledger_class/operations/find.rb +0 -23
  871. data/lib/ledger_sync/adaptors/quickbooks_online/ledger_class/operations/update.rb +0 -25
  872. data/lib/ledger_sync/adaptors/quickbooks_online/ledger_class/searcher.rb +0 -15
  873. data/lib/ledger_sync/adaptors/quickbooks_online/ledger_serializer.rb +0 -131
  874. data/lib/ledger_sync/adaptors/quickbooks_online/ledger_serializer_type/account_sub_type.rb +0 -305
  875. data/lib/ledger_sync/adaptors/quickbooks_online/ledger_serializer_type/account_type.rb +0 -51
  876. data/lib/ledger_sync/adaptors/quickbooks_online/ledger_serializer_type/amount_type.rb +0 -23
  877. data/lib/ledger_sync/adaptors/quickbooks_online/ledger_serializer_type/classification_type.rb +0 -23
  878. data/lib/ledger_sync/adaptors/quickbooks_online/ledger_serializer_type/date_type.rb +0 -23
  879. data/lib/ledger_sync/adaptors/quickbooks_online/ledger_serializer_type/department_reference_type.rb +0 -26
  880. data/lib/ledger_sync/adaptors/quickbooks_online/ledger_serializer_type/entity_reference_type.rb +0 -49
  881. data/lib/ledger_sync/adaptors/quickbooks_online/ledger_serializer_type/journal_entry_line_item_type.rb +0 -20
  882. data/lib/ledger_sync/adaptors/quickbooks_online/ledger_serializer_type/payment_type.rb +0 -21
  883. data/lib/ledger_sync/adaptors/quickbooks_online/ledger_serializer_type/transaction_reference_type.rb +0 -49
  884. data/lib/ledger_sync/adaptors/quickbooks_online/oauth_client.rb +0 -93
  885. data/lib/ledger_sync/adaptors/quickbooks_online/operation.rb +0 -60
  886. data/lib/ledger_sync/adaptors/quickbooks_online/operation/create.rb +0 -26
  887. data/lib/ledger_sync/adaptors/quickbooks_online/operation/find.rb +0 -25
  888. data/lib/ledger_sync/adaptors/quickbooks_online/operation/full_update.rb +0 -44
  889. data/lib/ledger_sync/adaptors/quickbooks_online/operation/sparse_update.rb +0 -29
  890. data/lib/ledger_sync/adaptors/quickbooks_online/payment/ledger_serializer.rb +0 -50
  891. data/lib/ledger_sync/adaptors/quickbooks_online/payment/operations/create.rb +0 -30
  892. data/lib/ledger_sync/adaptors/quickbooks_online/payment/operations/find.rb +0 -28
  893. data/lib/ledger_sync/adaptors/quickbooks_online/payment/operations/update.rb +0 -28
  894. data/lib/ledger_sync/adaptors/quickbooks_online/payment_line_item/ledger_serializer.rb +0 -19
  895. data/lib/ledger_sync/adaptors/quickbooks_online/preferences/ledger_serializer.rb +0 -45
  896. data/lib/ledger_sync/adaptors/quickbooks_online/preferences/operations/find.rb +0 -38
  897. data/lib/ledger_sync/adaptors/quickbooks_online/request.rb +0 -98
  898. data/lib/ledger_sync/adaptors/quickbooks_online/resources/preferences.rb +0 -24
  899. data/lib/ledger_sync/adaptors/quickbooks_online/searcher.rb +0 -61
  900. data/lib/ledger_sync/adaptors/quickbooks_online/transfer/ledger_serializer.rb +0 -36
  901. data/lib/ledger_sync/adaptors/quickbooks_online/transfer/operations/create.rb +0 -24
  902. data/lib/ledger_sync/adaptors/quickbooks_online/transfer/operations/find.rb +0 -24
  903. data/lib/ledger_sync/adaptors/quickbooks_online/transfer/operations/update.rb +0 -26
  904. data/lib/ledger_sync/adaptors/quickbooks_online/util/adaptor_error_parser.rb +0 -103
  905. data/lib/ledger_sync/adaptors/quickbooks_online/util/error_matcher.rb +0 -54
  906. data/lib/ledger_sync/adaptors/quickbooks_online/util/error_parser.rb +0 -27
  907. data/lib/ledger_sync/adaptors/quickbooks_online/util/operation_error_parser.rb +0 -99
  908. data/lib/ledger_sync/adaptors/quickbooks_online/vendor/ledger_serializer.rb +0 -25
  909. data/lib/ledger_sync/adaptors/quickbooks_online/vendor/operations/create.rb +0 -27
  910. data/lib/ledger_sync/adaptors/quickbooks_online/vendor/operations/find.rb +0 -27
  911. data/lib/ledger_sync/adaptors/quickbooks_online/vendor/operations/update.rb +0 -27
  912. data/lib/ledger_sync/adaptors/quickbooks_online/vendor/searcher.rb +0 -15
  913. data/lib/ledger_sync/adaptors/quickbooks_online/webhook.rb +0 -58
  914. data/lib/ledger_sync/adaptors/quickbooks_online/webhook_event.rb +0 -79
  915. data/lib/ledger_sync/adaptors/quickbooks_online/webhook_notification.rb +0 -42
  916. data/lib/ledger_sync/adaptors/request.rb +0 -53
  917. data/lib/ledger_sync/adaptors/response.rb +0 -55
  918. data/lib/ledger_sync/adaptors/searcher.rb +0 -72
  919. data/lib/ledger_sync/adaptors/stripe/adaptor.rb +0 -37
  920. data/lib/ledger_sync/adaptors/stripe/config.rb +0 -5
  921. data/lib/ledger_sync/adaptors/stripe/customer/operations/create.rb +0 -44
  922. data/lib/ledger_sync/adaptors/stripe/customer/operations/delete.rb +0 -35
  923. data/lib/ledger_sync/adaptors/stripe/customer/operations/find.rb +0 -44
  924. data/lib/ledger_sync/adaptors/stripe/customer/operations/update.rb +0 -43
  925. data/lib/ledger_sync/adaptors/stripe/dashboard_url_helper.rb +0 -21
  926. data/lib/ledger_sync/adaptors/stripe/operation.rb +0 -35
  927. data/lib/ledger_sync/adaptors/stripe/operation/create.rb +0 -17
  928. data/lib/ledger_sync/adaptors/stripe/operation/delete.rb +0 -17
  929. data/lib/ledger_sync/adaptors/stripe/operation/find.rb +0 -15
  930. data/lib/ledger_sync/adaptors/stripe/operation/update.rb +0 -17
  931. data/lib/ledger_sync/adaptors/test/customer/ledger_serializer.rb +0 -12
  932. data/lib/ledger_sync/adaptors/test/ledger_serializer.rb +0 -12
  933. data/lib/ledger_sync/error/adaptor_errors.rb +0 -72
  934. data/lib/ledger_sync/resources/account.rb +0 -17
  935. data/lib/ledger_sync/resources/bill.rb +0 -27
  936. data/lib/ledger_sync/resources/bill_line_item.rb +0 -17
  937. data/lib/ledger_sync/resources/bill_payment.rb +0 -32
  938. data/lib/ledger_sync/resources/bill_payment_line_item.rb +0 -15
  939. data/lib/ledger_sync/resources/currency.rb +0 -9
  940. data/lib/ledger_sync/resources/customer.rb +0 -25
  941. data/lib/ledger_sync/resources/department.rb +0 -14
  942. data/lib/ledger_sync/resources/deposit.rb +0 -24
  943. data/lib/ledger_sync/resources/deposit_line_item.rb +0 -22
  944. data/lib/ledger_sync/resources/expense.rb +0 -33
  945. data/lib/ledger_sync/resources/expense_line_item.rb +0 -17
  946. data/lib/ledger_sync/resources/invoice.rb +0 -24
  947. data/lib/ledger_sync/resources/invoice_sales_line_item.rb +0 -17
  948. data/lib/ledger_sync/resources/item.rb +0 -5
  949. data/lib/ledger_sync/resources/journal_entry.rb +0 -20
  950. data/lib/ledger_sync/resources/journal_entry_line_item.rb +0 -20
  951. data/lib/ledger_sync/resources/ledger_class.rb +0 -14
  952. data/lib/ledger_sync/resources/location.rb +0 -7
  953. data/lib/ledger_sync/resources/payment.rb +0 -27
  954. data/lib/ledger_sync/resources/payment_line_item.rb +0 -15
  955. data/lib/ledger_sync/resources/subsidiary.rb +0 -8
  956. data/lib/ledger_sync/resources/transfer.rb +0 -20
  957. data/lib/ledger_sync/resources/vendor.rb +0 -19
  958. data/lib/ledger_sync/serialization/deserializer_delegator.rb +0 -17
  959. data/lib/ledger_sync/serialization/serializer_delegator.rb +0 -17
  960. data/lib/ledger_sync/serialization/type/references_many_type.rb +0 -19
  961. data/lib/ledger_sync/serialization/type/references_one_type.rb +0 -12
  962. data/lib/ledger_sync/serialization/type/value_type.rb +0 -15
@@ -10,11 +10,12 @@ gemfile do
10
10
  gem 'dotenv'
11
11
  gem 'ledger_sync'
12
12
  gem 'rack'
13
- gem 'pd_ruby', '0.2.2', require: true
13
+ gem 'pd_ruby'
14
14
  end
15
15
 
16
16
  puts 'Gems installed and loaded!'
17
17
 
18
+ require 'pd_ruby'
18
19
  require 'socket'
19
20
  require 'dotenv'
20
21
  require 'rack'
@@ -35,10 +36,10 @@ client_id = ENV.fetch('QUICKBOOKS_ONLINE_CLIENT_ID')
35
36
 
36
37
  raise 'QUICKBOOKS_ONLINE_CLIENT_ID not set in ../.env' if client_id.blank?
37
38
 
38
- adaptor = LedgerSync::Adaptors::QuickBooksOnline::Adaptor.new_from_env(test: true)
39
+ client = LedgerSync::Ledgers::QuickBooksOnline::Client.new_from_env(test: true)
39
40
 
40
41
  puts 'Go to the following URL:'
41
- puts adaptor.authorization_url(redirect_uri: base_url)
42
+ puts client.authorization_url(redirect_uri: base_url)
42
43
 
43
44
  while session = server.accept
44
45
  request = session.gets
@@ -53,7 +54,7 @@ while session = server.accept
53
54
 
54
55
  params = Hash[query.split('&').map { |e| e.split('=') }] if query.present?
55
56
 
56
- adaptor.set_credentials_from_oauth_code(
57
+ client.set_credentials_from_oauth_code(
57
58
  code: params.fetch('code'),
58
59
  realm_id: params.fetch('realmId'),
59
60
  redirect_uri: base_url
@@ -62,19 +63,19 @@ while session = server.accept
62
63
  puts "\n"
63
64
 
64
65
  puts 'access_token:'
65
- puts adaptor.access_token
66
+ puts client.access_token
66
67
  puts "\n"
67
68
  puts 'client_id:'
68
- puts adaptor.client_id
69
+ puts client.client_id
69
70
  puts "\n"
70
71
  puts 'client_secret:'
71
- puts adaptor.client_secret
72
+ puts client.client_secret
72
73
  puts "\n"
73
74
  puts 'realm_id:'
74
- puts adaptor.realm_id
75
+ puts client.realm_id
75
76
  puts "\n"
76
77
  puts 'refresh_token:'
77
- puts adaptor.refresh_token
78
+ puts client.refresh_token
78
79
  puts "\n"
79
80
 
80
81
  puts 'Done!'
@@ -0,0 +1 @@
1
+ www.ledgersync.dev
@@ -0,0 +1,5 @@
1
+ /*!
2
+ * Font Awesome Free 5.8.2 by @fontawesome - https://fontawesome.com
3
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4
+ */
5
+ @font-face{font-family:"Font Awesome 5 Brands";font-style:normal;font-weight:normal;font-display:auto;src:url(../webfonts/fa-brands-400.eot);src:url(../webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.woff) format("woff"),url(../webfonts/fa-brands-400.ttf) format("truetype"),url(../webfonts/fa-brands-400.svg#fontawesome) format("svg")}.fab{font-family:"Font Awesome 5 Brands"}
@@ -0,0 +1,5 @@
1
+ /*!
2
+ * Font Awesome Free 5.8.2 by @fontawesome - https://fontawesome.com
3
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4
+ */
5
+ .fa,.fab,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{animation:fa-spin 2s infinite linear}.fa-pulse{animation:fa-spin 1s infinite steps(8)}@keyframes fa-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-acquisitions-incorporated:before{content:"\f6af"}.fa-ad:before{content:"\f641"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adobe:before{content:"\f778"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-air-freshener:before{content:"\f5d0"}.fa-airbnb:before{content:"\f834"}.fa-algolia:before{content:"\f36c"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-alipay:before{content:"\f642"}.fa-allergies:before{content:"\f461"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angry:before{content:"\f556"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-ankh:before{content:"\f644"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-alt:before{content:"\f5d1"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-archway:before{content:"\f557"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-artstation:before{content:"\f77a"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-atlas:before{content:"\f558"}.fa-atlassian:before{content:"\f77b"}.fa-atom:before{content:"\f5d2"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-award:before{content:"\f559"}.fa-aws:before{content:"\f375"}.fa-baby:before{content:"\f77c"}.fa-baby-carriage:before{content:"\f77d"}.fa-backspace:before{content:"\f55a"}.fa-backward:before{content:"\f04a"}.fa-bacon:before{content:"\f7e5"}.fa-balance-scale:before{content:"\f24e"}.fa-ban:before{content:"\f05e"}.fa-band-aid:before{content:"\f462"}.fa-bandcamp:before{content:"\f2d5"}.fa-barcode:before{content:"\f02a"}.fa-bars:before{content:"\f0c9"}.fa-baseball-ball:before{content:"\f433"}.fa-basketball-ball:before{content:"\f434"}.fa-bath:before{content:"\f2cd"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-three-quarters:before{content:"\f241"}.fa-battle-net:before{content:"\f835"}.fa-bed:before{content:"\f236"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-slash:before{content:"\f1f6"}.fa-bezier-curve:before{content:"\f55b"}.fa-bible:before{content:"\f647"}.fa-bicycle:before{content:"\f206"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-biohazard:before{content:"\f780"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blender:before{content:"\f517"}.fa-blender-phone:before{content:"\f6b6"}.fa-blind:before{content:"\f29d"}.fa-blog:before{content:"\f781"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-book-dead:before{content:"\f6b7"}.fa-book-medical:before{content:"\f7e6"}.fa-book-open:before{content:"\f518"}.fa-book-reader:before{content:"\f5da"}.fa-bookmark:before{content:"\f02e"}.fa-bootstrap:before{content:"\f836"}.fa-bowling-ball:before{content:"\f436"}.fa-box:before{content:"\f466"}.fa-box-open:before{content:"\f49e"}.fa-boxes:before{content:"\f468"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-bread-slice:before{content:"\f7ec"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-broadcast-tower:before{content:"\f519"}.fa-broom:before{content:"\f51a"}.fa-brush:before{content:"\f55d"}.fa-btc:before{content:"\f15a"}.fa-buffer:before{content:"\f837"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-burn:before{content:"\f46a"}.fa-buromobelexperte:before{content:"\f37f"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before{content:"\f55e"}.fa-business-time:before{content:"\f64a"}.fa-buysellads:before{content:"\f20d"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-day:before{content:"\f783"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-times:before{content:"\f273"}.fa-calendar-week:before{content:"\f784"}.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-campground:before{content:"\f6bb"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-candy-cane:before{content:"\f786"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-car:before{content:"\f1b9"}.fa-car-alt:before{content:"\f5de"}.fa-car-battery:before{content:"\f5df"}.fa-car-crash:before{content:"\f5e1"}.fa-car-side:before{content:"\f5e4"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-carrot:before{content:"\f787"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cash-register:before{content:"\f788"}.fa-cat:before{content:"\f6be"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-centos:before{content:"\f789"}.fa-certificate:before{content:"\f0a3"}.fa-chair:before{content:"\f6c0"}.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before{content:"\f51c"}.fa-charging-station:before{content:"\f5e7"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-pie:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-double:before{content:"\f560"}.fa-check-square:before{content:"\f14a"}.fa-cheese:before{content:"\f7ef"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-board:before{content:"\f43c"}.fa-chess-king:before{content:"\f43f"}.fa-chess-knight:before{content:"\f441"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-queen:before{content:"\f445"}.fa-chess-rook:before{content:"\f447"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chrome:before{content:"\f268"}.fa-chromecast:before{content:"\f838"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-city:before{content:"\f64f"}.fa-clinic-medical:before{content:"\f7f2"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-meatball:before{content:"\f73b"}.fa-cloud-moon:before{content:"\f6c3"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-cloud-rain:before{content:"\f73d"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-cloud-sun:before{content:"\f6c4"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-cocktail:before{content:"\f561"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-coins:before{content:"\f51e"}.fa-columns:before{content:"\f0db"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before{content:"\f4ad"}.fa-comment-medical:before{content:"\f7f5"}.fa-comment-slash:before{content:"\f4b3"}.fa-comments:before{content:"\f086"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compress:before{content:"\f066"}.fa-compress-arrows-alt:before{content:"\f78c"}.fa-concierge-bell:before{content:"\f562"}.fa-confluence:before{content:"\f78d"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-couch:before{content:"\f4b8"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-credit-card:before{content:"\f09d"}.fa-critical-role:before{content:"\f6c9"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-crutch:before{content:"\f7f7"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-delicious:before{content:"\f1a5"}.fa-democrat:before{content:"\f747"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-dev:before{content:"\f6cc"}.fa-deviantart:before{content:"\f1bd"}.fa-dharmachakra:before{content:"\f655"}.fa-dhl:before{content:"\f790"}.fa-diagnoses:before{content:"\f470"}.fa-diaspora:before{content:"\f791"}.fa-dice:before{content:"\f522"}.fa-dice-d20:before{content:"\f6cf"}.fa-dice-d6:before{content:"\f6d1"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-digital-tachograph:before{content:"\f566"}.fa-directions:before{content:"\f5eb"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-divide:before{content:"\f529"}.fa-dizzy:before{content:"\f567"}.fa-dna:before{content:"\f471"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dog:before{content:"\f6d3"}.fa-dollar-sign:before{content:"\f155"}.fa-dolly:before{content:"\f472"}.fa-dolly-flatbed:before{content:"\f474"}.fa-donate:before{content:"\f4b9"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dot-circle:before{content:"\f192"}.fa-dove:before{content:"\f4ba"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-drafting-compass:before{content:"\f568"}.fa-dragon:before{content:"\f6d5"}.fa-draw-polygon:before{content:"\f5ee"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-drupal:before{content:"\f1a9"}.fa-dumbbell:before{content:"\f44b"}.fa-dumpster:before{content:"\f793"}.fa-dumpster-fire:before{content:"\f794"}.fa-dungeon:before{content:"\f6d9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-edge:before{content:"\f282"}.fa-edit:before{content:"\f044"}.fa-egg:before{content:"\f7fb"}.fa-eject:before{content:"\f052"}.fa-elementor:before{content:"\f430"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-equals:before{content:"\f52c"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-ethernet:before{content:"\f796"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-evernote:before{content:"\f839"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before{content:"\f56b"}.fa-fedex:before{content:"\f797"}.fa-fedora:before{content:"\f798"}.fa-female:before{content:"\f182"}.fa-fighter-jet:before{content:"\f0fb"}.fa-figma:before{content:"\f799"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-csv:before{content:"\f6dd"}.fa-file-download:before{content:"\f56d"}.fa-file-excel:before{content:"\f1c3"}.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-medical:before{content:"\f477"}.fa-file-medical-alt:before{content:"\f478"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-signature:before{content:"\f573"}.fa-file-upload:before{content:"\f574"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-alt:before{content:"\f7e4"}.fa-fire-extinguisher:before{content:"\f134"}.fa-firefox:before{content:"\f269"}.fa-first-aid:before{content:"\f479"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-fish:before{content:"\f578"}.fa-fist-raised:before{content:"\f6de"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flag-usa:before{content:"\f74d"}.fa-flask:before{content:"\f0c3"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-flushed:before{content:"\f579"}.fa-fly:before{content:"\f417"}.fa-folder:before{content:"\f07b"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-font-awesome-logo-full:before{content:"\f4e6"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-football-ball:before{content:"\f44e"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-frog:before{content:"\f52e"}.fa-frown:before{content:"\f119"}.fa-frown-open:before{content:"\f57a"}.fa-fulcrum:before{content:"\f50b"}.fa-funnel-dollar:before{content:"\f662"}.fa-futbol:before{content:"\f1e3"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-gamepad:before{content:"\f11b"}.fa-gas-pump:before{content:"\f52f"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-ghost:before{content:"\f6e2"}.fa-gift:before{content:"\f06b"}.fa-gifts:before{content:"\f79c"}.fa-git:before{content:"\f1d3"}.fa-git-alt:before{content:"\f841"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass-cheers:before{content:"\f79f"}.fa-glass-martini:before{content:"\f000"}.fa-glass-martini-alt:before{content:"\f57b"}.fa-glass-whiskey:before{content:"\f7a0"}.fa-glasses:before{content:"\f530"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-globe-africa:before{content:"\f57c"}.fa-globe-americas:before{content:"\f57d"}.fa-globe-asia:before{content:"\f57e"}.fa-globe-europe:before{content:"\f7a2"}.fa-gofore:before{content:"\f3a7"}.fa-golf-ball:before{content:"\f450"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before{content:"\f19d"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-greater-than:before{content:"\f531"}.fa-greater-than-equal:before{content:"\f532"}.fa-grimace:before{content:"\f57f"}.fa-grin:before{content:"\f580"}.fa-grin-alt:before{content:"\f581"}.fa-grin-beam:before{content:"\f582"}.fa-grin-beam-sweat:before{content:"\f583"}.fa-grin-hearts:before{content:"\f584"}.fa-grin-squint:before{content:"\f585"}.fa-grin-squint-tears:before{content:"\f586"}.fa-grin-stars:before{content:"\f587"}.fa-grin-tears:before{content:"\f588"}.fa-grin-tongue:before{content:"\f589"}.fa-grin-tongue-squint:before{content:"\f58a"}.fa-grin-tongue-wink:before{content:"\f58b"}.fa-grin-wink:before{content:"\f58c"}.fa-grip-horizontal:before{content:"\f58d"}.fa-grip-lines:before{content:"\f7a4"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-grip-vertical:before{content:"\f58e"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-guitar:before{content:"\f7a6"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hackerrank:before{content:"\f5f7"}.fa-hamburger:before{content:"\f805"}.fa-hammer:before{content:"\f6e3"}.fa-hamsa:before{content:"\f665"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-middle-finger:before{content:"\f806"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-spock:before{content:"\f259"}.fa-hands:before{content:"\f4c2"}.fa-hands-helping:before{content:"\f4c4"}.fa-handshake:before{content:"\f2b5"}.fa-hanukiah:before{content:"\f6e6"}.fa-hard-hat:before{content:"\f807"}.fa-hashtag:before{content:"\f292"}.fa-hat-wizard:before{content:"\f6e8"}.fa-haykal:before{content:"\f666"}.fa-hdd:before{content:"\f0a0"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heart-broken:before{content:"\f7a9"}.fa-heartbeat:before{content:"\f21e"}.fa-helicopter:before{content:"\f533"}.fa-highlighter:before{content:"\f591"}.fa-hiking:before{content:"\f6ec"}.fa-hippo:before{content:"\f6ed"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-hockey-puck:before{content:"\f453"}.fa-holly-berry:before{content:"\f7aa"}.fa-home:before{content:"\f015"}.fa-hooli:before{content:"\f427"}.fa-hornbill:before{content:"\f592"}.fa-horse:before{content:"\f6f0"}.fa-horse-head:before{content:"\f7ab"}.fa-hospital:before{content:"\f0f8"}.fa-hospital-alt:before{content:"\f47d"}.fa-hospital-symbol:before{content:"\f47e"}.fa-hot-tub:before{content:"\f593"}.fa-hotdog:before{content:"\f80f"}.fa-hotel:before{content:"\f594"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-house-damage:before{content:"\f6f1"}.fa-houzz:before{content:"\f27c"}.fa-hryvnia:before{content:"\f6f2"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-i-cursor:before{content:"\f246"}.fa-ice-cream:before{content:"\f810"}.fa-icicles:before{content:"\f7ad"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before{content:"\f47f"}.fa-igloo:before{content:"\f7ae"}.fa-image:before{content:"\f03e"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-instagram:before{content:"\f16d"}.fa-intercom:before{content:"\f7af"}.fa-internet-explorer:before{content:"\f26b"}.fa-invision:before{content:"\f7b0"}.fa-ioxhost:before{content:"\f208"}.fa-italic:before{content:"\f033"}.fa-itch-io:before{content:"\f83a"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-java:before{content:"\f4e4"}.fa-jedi:before{content:"\f669"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-jira:before{content:"\f7b1"}.fa-joget:before{content:"\f3b7"}.fa-joint:before{content:"\f595"}.fa-joomla:before{content:"\f1aa"}.fa-journal-whills:before{content:"\f66a"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-kaaba:before{content:"\f66b"}.fa-kaggle:before{content:"\f5fa"}.fa-key:before{content:"\f084"}.fa-keybase:before{content:"\f4f5"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-khanda:before{content:"\f66d"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-kiss:before{content:"\f596"}.fa-kiss-beam:before{content:"\f597"}.fa-kiss-wink-heart:before{content:"\f598"}.fa-kiwi-bird:before{content:"\f535"}.fa-korvue:before{content:"\f42f"}.fa-landmark:before{content:"\f66f"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laptop-medical:before{content:"\f812"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-laugh:before{content:"\f599"}.fa-laugh-beam:before{content:"\f59a"}.fa-laugh-squint:before{content:"\f59b"}.fa-laugh-wink:before{content:"\f59c"}.fa-layer-group:before{content:"\f5fd"}.fa-leaf:before{content:"\f06c"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-less-than:before{content:"\f536"}.fa-less-than-equal:before{content:"\f537"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-line:before{content:"\f3c0"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location-arrow:before{content:"\f124"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-low-vision:before{content:"\f2a8"}.fa-luggage-cart:before{content:"\f59d"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-mail-bulk:before{content:"\f674"}.fa-mailchimp:before{content:"\f59e"}.fa-male:before{content:"\f183"}.fa-mandalorian:before{content:"\f50f"}.fa-map:before{content:"\f279"}.fa-map-marked:before{content:"\f59f"}.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-markdown:before{content:"\f60f"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mask:before{content:"\f6fa"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-medal:before{content:"\f5a2"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaport:before{content:"\f5a3"}.fa-meh:before{content:"\f11a"}.fa-meh-blank:before{content:"\f5a4"}.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-memory:before{content:"\f538"}.fa-mendeley:before{content:"\f7b3"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-meteor:before{content:"\f753"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before{content:"\f3c9"}.fa-microphone-alt-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microscope:before{content:"\f610"}.fa-microsoft:before{content:"\f3ca"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-square:before{content:"\f146"}.fa-mitten:before{content:"\f7b5"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before{content:"\f53d"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-motorcycle:before{content:"\f21c"}.fa-mountain:before{content:"\f6fc"}.fa-mouse-pointer:before{content:"\f245"}.fa-mug-hot:before{content:"\f7b6"}.fa-music:before{content:"\f001"}.fa-napster:before{content:"\f3d2"}.fa-neos:before{content:"\f612"}.fa-network-wired:before{content:"\f6ff"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nimblr:before{content:"\f5a8"}.fa-nintendo-switch:before{content:"\f418"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-not-equal:before{content:"\f53e"}.fa-notes-medical:before{content:"\f481"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-oil-can:before{content:"\f613"}.fa-old-republic:before{content:"\f510"}.fa-om:before{content:"\f679"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-osi:before{content:"\f41a"}.fa-otter:before{content:"\f700"}.fa-outdent:before{content:"\f03b"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-pager:before{content:"\f815"}.fa-paint-brush:before{content:"\f1fc"}.fa-paint-roller:before{content:"\f5aa"}.fa-palette:before{content:"\f53f"}.fa-palfed:before{content:"\f3d8"}.fa-pallet:before{content:"\f482"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-parking:before{content:"\f540"}.fa-passport:before{content:"\f5ab"}.fa-pastafarianism:before{content:"\f67b"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paypal:before{content:"\f1ed"}.fa-peace:before{content:"\f67c"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-square:before{content:"\f14b"}.fa-pencil-alt:before{content:"\f303"}.fa-pencil-ruler:before{content:"\f5ae"}.fa-penny-arcade:before{content:"\f704"}.fa-people-carry:before{content:"\f4ce"}.fa-pepper-hot:before{content:"\f816"}.fa-percent:before{content:"\f295"}.fa-percentage:before{content:"\f541"}.fa-periscope:before{content:"\f3da"}.fa-person-booth:before{content:"\f756"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-phone:before{content:"\f095"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-square:before{content:"\f098"}.fa-phone-volume:before{content:"\f2a0"}.fa-php:before{content:"\f457"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-pizza-slice:before{content:"\f818"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-departure:before{content:"\f5b0"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-poll:before{content:"\f681"}.fa-poll-h:before{content:"\f682"}.fa-poo:before{content:"\f2fe"}.fa-poo-storm:before{content:"\f75a"}.fa-poop:before{content:"\f619"}.fa-portrait:before{content:"\f3e0"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-pray:before{content:"\f683"}.fa-praying-hands:before{content:"\f684"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before{content:"\f486"}.fa-print:before{content:"\f02f"}.fa-procedures:before{content:"\f487"}.fa-product-hunt:before{content:"\f288"}.fa-project-diagram:before{content:"\f542"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-quidditch:before{content:"\f458"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-quran:before{content:"\f687"}.fa-r-project:before{content:"\f4f7"}.fa-radiation:before{content:"\f7b9"}.fa-radiation-alt:before{content:"\f7ba"}.fa-rainbow:before{content:"\f75b"}.fa-random:before{content:"\f074"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-reacteurope:before{content:"\f75d"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-receipt:before{content:"\f543"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redhat:before{content:"\f7bc"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-registered:before{content:"\f25d"}.fa-renren:before{content:"\f18b"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-republican:before{content:"\f75e"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-restroom:before{content:"\f7bd"}.fa-retweet:before{content:"\f079"}.fa-rev:before{content:"\f5b2"}.fa-ribbon:before{content:"\f4d6"}.fa-ring:before{content:"\f70b"}.fa-road:before{content:"\f018"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-route:before{content:"\f4d7"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-vertical:before{content:"\f548"}.fa-running:before{content:"\f70c"}.fa-rupee-sign:before{content:"\f156"}.fa-sad-cry:before{content:"\f5b3"}.fa-sad-tear:before{content:"\f5b4"}.fa-safari:before{content:"\f267"}.fa-salesforce:before{content:"\f83b"}.fa-sass:before{content:"\f41e"}.fa-satellite:before{content:"\f7bf"}.fa-satellite-dish:before{content:"\f7c0"}.fa-save:before{content:"\f0c7"}.fa-schlix:before{content:"\f3ea"}.fa-school:before{content:"\f549"}.fa-screwdriver:before{content:"\f54a"}.fa-scribd:before{content:"\f28a"}.fa-scroll:before{content:"\f70e"}.fa-sd-card:before{content:"\f7c2"}.fa-search:before{content:"\f002"}.fa-search-dollar:before{content:"\f688"}.fa-search-location:before{content:"\f689"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-seedling:before{content:"\f4d8"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-shapes:before{content:"\f61f"}.fa-share:before{content:"\f064"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield-alt:before{content:"\f3ed"}.fa-ship:before{content:"\f21a"}.fa-shipping-fast:before{content:"\f48b"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shoe-prints:before{content:"\f54b"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shopware:before{content:"\f5b5"}.fa-shower:before{content:"\f2cc"}.fa-shuttle-van:before{content:"\f5b6"}.fa-sign:before{content:"\f4d9"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-signature:before{content:"\f5b7"}.fa-sim-card:before{content:"\f7c4"}.fa-simplybuilt:before{content:"\f215"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-sith:before{content:"\f512"}.fa-skating:before{content:"\f7c5"}.fa-sketch:before{content:"\f7c6"}.fa-skiing:before{content:"\f7c9"}.fa-skiing-nordic:before{content:"\f7ca"}.fa-skull:before{content:"\f54c"}.fa-skull-crossbones:before{content:"\f714"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-slash:before{content:"\f715"}.fa-sleigh:before{content:"\f7cc"}.fa-sliders-h:before{content:"\f1de"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-smile-beam:before{content:"\f5b8"}.fa-smile-wink:before{content:"\f4da"}.fa-smog:before{content:"\f75f"}.fa-smoking:before{content:"\f48d"}.fa-smoking-ban:before{content:"\f54d"}.fa-sms:before{content:"\f7cd"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snowboarding:before{content:"\f7ce"}.fa-snowflake:before{content:"\f2dc"}.fa-snowman:before{content:"\f7d0"}.fa-snowplow:before{content:"\f7d2"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-sourcetree:before{content:"\f7d3"}.fa-spa:before{content:"\f5bb"}.fa-space-shuttle:before{content:"\f197"}.fa-speakap:before{content:"\f3f3"}.fa-speaker-deck:before{content:"\f83c"}.fa-spider:before{content:"\f717"}.fa-spinner:before{content:"\f110"}.fa-splotch:before{content:"\f5bc"}.fa-spotify:before{content:"\f1bc"}.fa-spray-can:before{content:"\f5bd"}.fa-square:before{content:"\f0c8"}.fa-square-full:before{content:"\f45c"}.fa-square-root-alt:before{content:"\f698"}.fa-squarespace:before{content:"\f5be"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stackpath:before{content:"\f842"}.fa-stamp:before{content:"\f5bf"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\f051"}.fa-stethoscope:before{content:"\f0f1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-sticky-note:before{content:"\f249"}.fa-stop:before{content:"\f04d"}.fa-stop-circle:before{content:"\f28d"}.fa-stopwatch:before{content:"\f2f2"}.fa-store:before{content:"\f54e"}.fa-store-alt:before{content:"\f54f"}.fa-strava:before{content:"\f428"}.fa-stream:before{content:"\f550"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-stroopwafel:before{content:"\f551"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-subscript:before{content:"\f12c"}.fa-subway:before{content:"\f239"}.fa-suitcase:before{content:"\f0f2"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-sun:before{content:"\f185"}.fa-superpowers:before{content:"\f2dd"}.fa-superscript:before{content:"\f12b"}.fa-supple:before{content:"\f3f9"}.fa-surprise:before{content:"\f5c2"}.fa-suse:before{content:"\f7d6"}.fa-swatchbook:before{content:"\f5c3"}.fa-swimmer:before{content:"\f5c4"}.fa-swimming-pool:before{content:"\f5c5"}.fa-symfony:before{content:"\f83d"}.fa-synagogue:before{content:"\f69b"}.fa-sync:before{content:"\f021"}.fa-sync-alt:before{content:"\f2f1"}.fa-syringe:before{content:"\f48e"}.fa-table:before{content:"\f0ce"}.fa-table-tennis:before{content:"\f45d"}.fa-tablet:before{content:"\f10a"}.fa-tablet-alt:before{content:"\f3fa"}.fa-tablets:before{content:"\f490"}.fa-tachometer-alt:before{content:"\f3fd"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tape:before{content:"\f4db"}.fa-tasks:before{content:"\f0ae"}.fa-taxi:before{content:"\f1ba"}.fa-teamspeak:before{content:"\f4f9"}.fa-teeth:before{content:"\f62e"}.fa-teeth-open:before{content:"\f62f"}.fa-telegram:before{content:"\f2c6"}.fa-telegram-plane:before{content:"\f3fe"}.fa-temperature-high:before{content:"\f769"}.fa-temperature-low:before{content:"\f76b"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-tenge:before{content:"\f7d7"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-th:before{content:"\f00a"}.fa-th-large:before{content:"\f009"}.fa-th-list:before{content:"\f00b"}.fa-the-red-yeti:before{content:"\f69d"}.fa-theater-masks:before{content:"\f630"}.fa-themeco:before{content:"\f5c6"}.fa-themeisle:before{content:"\f2b2"}.fa-thermometer:before{content:"\f491"}.fa-thermometer-empty:before{content:"\f2cb"}.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-think-peaks:before{content:"\f731"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbtack:before{content:"\f08d"}.fa-ticket-alt:before{content:"\f3ff"}.fa-times:before{content:"\f00d"}.fa-times-circle:before{content:"\f057"}.fa-tint:before{content:"\f043"}.fa-tint-slash:before{content:"\f5c7"}.fa-tired:before{content:"\f5c8"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-toilet:before{content:"\f7d8"}.fa-toilet-paper:before{content:"\f71e"}.fa-toolbox:before{content:"\f552"}.fa-tools:before{content:"\f7d9"}.fa-tooth:before{content:"\f5c9"}.fa-torah:before{content:"\f6a0"}.fa-torii-gate:before{content:"\f6a1"}.fa-tractor:before{content:"\f722"}.fa-trade-federation:before{content:"\f513"}.fa-trademark:before{content:"\f25c"}.fa-traffic-light:before{content:"\f637"}.fa-train:before{content:"\f238"}.fa-tram:before{content:"\f7da"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-alt:before{content:"\f2ed"}.fa-trash-restore:before{content:"\f829"}.fa-trash-restore-alt:before{content:"\f82a"}.fa-tree:before{content:"\f1bb"}.fa-trello:before{content:"\f181"}.fa-tripadvisor:before{content:"\f262"}.fa-trophy:before{content:"\f091"}.fa-truck:before{content:"\f0d1"}.fa-truck-loading:before{content:"\f4de"}.fa-truck-monster:before{content:"\f63b"}.fa-truck-moving:before{content:"\f4df"}.fa-truck-pickup:before{content:"\f63c"}.fa-tshirt:before{content:"\f553"}.fa-tty:before{content:"\f1e4"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-tv:before{content:"\f26c"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-ubuntu:before{content:"\f7df"}.fa-uikit:before{content:"\f403"}.fa-umbrella:before{content:"\f0e9"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-uniregistry:before{content:"\f404"}.fa-universal-access:before{content:"\f29a"}.fa-university:before{content:"\f19c"}.fa-unlink:before{content:"\f127"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before{content:"\f13e"}.fa-untappd:before{content:"\f405"}.fa-upload:before{content:"\f093"}.fa-ups:before{content:"\f7e0"}.fa-usb:before{content:"\f287"}.fa-user:before{content:"\f007"}.fa-user-alt:before{content:"\f406"}.fa-user-alt-slash:before{content:"\f4fa"}.fa-user-astronaut:before{content:"\f4fb"}.fa-user-check:before{content:"\f4fc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-clock:before{content:"\f4fd"}.fa-user-cog:before{content:"\f4fe"}.fa-user-edit:before{content:"\f4ff"}.fa-user-friends:before{content:"\f500"}.fa-user-graduate:before{content:"\f501"}.fa-user-injured:before{content:"\f728"}.fa-user-lock:before{content:"\f502"}.fa-user-md:before{content:"\f0f0"}.fa-user-minus:before{content:"\f503"}.fa-user-ninja:before{content:"\f504"}.fa-user-nurse:before{content:"\f82f"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-shield:before{content:"\f505"}.fa-user-slash:before{content:"\f506"}.fa-user-tag:before{content:"\f507"}.fa-user-tie:before{content:"\f508"}.fa-user-times:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-users-cog:before{content:"\f509"}.fa-usps:before{content:"\f7e1"}.fa-ussunnah:before{content:"\f407"}.fa-utensil-spoon:before{content:"\f2e5"}.fa-utensils:before{content:"\f2e7"}.fa-vaadin:before{content:"\f408"}.fa-vector-square:before{content:"\f5cb"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-vial:before{content:"\f492"}.fa-vials:before{content:"\f493"}.fa-viber:before{content:"\f409"}.fa-video:before{content:"\f03d"}.fa-video-slash:before{content:"\f4e2"}.fa-vihara:before{content:"\f6a7"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-volleyball-ball:before{content:"\f45f"}.fa-volume-down:before{content:"\f027"}.fa-volume-mute:before{content:"\f6a9"}.fa-volume-off:before{content:"\f026"}.fa-volume-up:before{content:"\f028"}.fa-vote-yea:before{content:"\f772"}.fa-vr-cardboard:before{content:"\f729"}.fa-vuejs:before{content:"\f41f"}.fa-walking:before{content:"\f554"}.fa-wallet:before{content:"\f555"}.fa-warehouse:before{content:"\f494"}.fa-water:before{content:"\f773"}.fa-wave-square:before{content:"\f83e"}.fa-waze:before{content:"\f83f"}.fa-weebly:before{content:"\f5cc"}.fa-weibo:before{content:"\f18a"}.fa-weight:before{content:"\f496"}.fa-weight-hanging:before{content:"\f5cd"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-wheelchair:before{content:"\f193"}.fa-whmcs:before{content:"\f40d"}.fa-wifi:before{content:"\f1eb"}.fa-wikipedia-w:before{content:"\f266"}.fa-wind:before{content:"\f72e"}.fa-window-close:before{content:"\f410"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-windows:before{content:"\f17a"}.fa-wine-bottle:before{content:"\f72f"}.fa-wine-glass:before{content:"\f4e3"}.fa-wine-glass-alt:before{content:"\f5ce"}.fa-wix:before{content:"\f5cf"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-won-sign:before{content:"\f159"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wpressr:before{content:"\f3e4"}.fa-wrench:before{content:"\f0ad"}.fa-x-ray:before{content:"\f497"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yammer:before{content:"\f840"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yarn:before{content:"\f7e3"}.fa-yelp:before{content:"\f1e9"}.fa-yen-sign:before{content:"\f157"}.fa-yin-yang:before{content:"\f6ad"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.fa-zhihu:before{content:"\f63f"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}
@@ -0,0 +1,1924 @@
1
+ @import url(fontawesome.min.css);
2
+ @import url(brands.min.css);
3
+ /**
4
+ * Reset
5
+ * normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css
6
+ */
7
+ @import url(monokai.css);
8
+ html {
9
+ -ms-text-size-adjust: 100%;
10
+ -webkit-text-size-adjust: 100%; }
11
+
12
+ body {
13
+ margin: 0; }
14
+
15
+ article,
16
+ aside,
17
+ details,
18
+ figcaption,
19
+ figure,
20
+ footer,
21
+ header,
22
+ main,
23
+ nav,
24
+ section {
25
+ display: block; }
26
+
27
+ summary {
28
+ display: list-item; }
29
+
30
+ figure {
31
+ margin: 0; }
32
+
33
+ pre,
34
+ code,
35
+ kbd,
36
+ samp {
37
+ font-family: Monaco, courier, monospace;
38
+ font-size: 1em; }
39
+
40
+ audio,
41
+ canvas,
42
+ video {
43
+ display: inline-block; }
44
+
45
+ audio:not([controls]) {
46
+ display: none;
47
+ height: 0; }
48
+
49
+ [hidden],
50
+ template {
51
+ display: none; }
52
+
53
+ a {
54
+ background-color: transparent;
55
+ -webkit-text-decoration-skip: objects; }
56
+
57
+ a:focus {
58
+ outline: thin dotted; }
59
+
60
+ a:active,
61
+ a:hover {
62
+ outline: 0; }
63
+
64
+ abbr[title] {
65
+ border-bottom: none;
66
+ text-decoration: underline;
67
+ text-decoration: underline dotted; }
68
+
69
+ b,
70
+ strong {
71
+ font-weight: bold; }
72
+
73
+ dfn {
74
+ font-style: italic; }
75
+
76
+ small {
77
+ font-size: 80%; }
78
+
79
+ sub,
80
+ sup {
81
+ font-size: 75%;
82
+ line-height: 0;
83
+ position: relative;
84
+ vertical-align: baseline; }
85
+
86
+ sub {
87
+ bottom: -0.25em; }
88
+
89
+ sup {
90
+ top: -0.5em; }
91
+
92
+ img {
93
+ border: 0;
94
+ vertical-align: middle; }
95
+
96
+ svg:not(:root) {
97
+ overflow: hidden; }
98
+
99
+ blockquote,
100
+ q {
101
+ quotes: none; }
102
+
103
+ blockquote:before,
104
+ blockquote:after,
105
+ q:before,
106
+ q:after {
107
+ content: "";
108
+ content: none; }
109
+
110
+ button,
111
+ input,
112
+ optgroup,
113
+ select,
114
+ textarea {
115
+ font: inherit;
116
+ margin: 0; }
117
+
118
+ button,
119
+ input {
120
+ overflow: visible; }
121
+
122
+ button,
123
+ select {
124
+ text-transform: none; }
125
+
126
+ button,
127
+ html [type="button"],
128
+ [type="reset"],
129
+ [type="submit"] {
130
+ -webkit-appearance: button;
131
+ cursor: pointer; }
132
+
133
+ button[disabled],
134
+ html input[disabled] {
135
+ cursor: default; }
136
+
137
+ button::-moz-focus-inner,
138
+ input::-moz-focus-inner {
139
+ border: 0;
140
+ padding: 0; }
141
+
142
+ [type="checkbox"],
143
+ [type="radio"] {
144
+ box-sizing: border-box;
145
+ padding: 0; }
146
+
147
+ [type="number"]::-webkit-inner-spin-button,
148
+ [type="number"]::-webkit-outer-spin-button {
149
+ height: auto; }
150
+
151
+ [type="search"] {
152
+ -webkit-appearance: textfield;
153
+ outline-offset: -2px; }
154
+
155
+ [type="search"]::-webkit-search-cancel-button,
156
+ [type="search"]::-webkit-search-decoration {
157
+ -webkit-appearance: none; }
158
+
159
+ ::-webkit-file-upload-button {
160
+ -webkit-appearance: button;
161
+ font: inherit; }
162
+
163
+ textarea {
164
+ overflow: auto; }
165
+
166
+ optgroup {
167
+ font-weight: bold; }
168
+
169
+ progress {
170
+ display: inline-block;
171
+ vertical-align: baseline; }
172
+
173
+ table {
174
+ border-collapse: collapse;
175
+ border-spacing: 0; }
176
+
177
+ /**
178
+ * General
179
+ */
180
+ html {
181
+ font-family: "Lato", Helvetica, Arial, sans-serif;
182
+ font-size: 100%; }
183
+
184
+ body {
185
+ background: #f7f9fb;
186
+ color: #424b5f;
187
+ line-height: 1.75;
188
+ text-rendering: optimizeLegibility;
189
+ -moz-osx-font-smoothing: grayscale;
190
+ -webkit-font-smoothing: antialiased; }
191
+
192
+ a {
193
+ border-bottom: 1px solid currentColor;
194
+ color: #12db5d;
195
+ text-decoration: none;
196
+ -webkit-transition: .3s ease;
197
+ transition: .3s ease; }
198
+ a:hover, a:focus {
199
+ color: #424b5f; }
200
+
201
+ h1,
202
+ h2,
203
+ h3,
204
+ h4,
205
+ h5,
206
+ h6 {
207
+ color: #283040;
208
+ font-weight: bold;
209
+ line-height: 1.2;
210
+ margin: 2.25rem 0 1.125rem;
211
+ text-rendering: optimizeLegibility; }
212
+ h1:first-child,
213
+ h2:first-child,
214
+ h3:first-child,
215
+ h4:first-child,
216
+ h5:first-child,
217
+ h6:first-child {
218
+ margin-top: 0; }
219
+
220
+ h1 {
221
+ font-size: 2.5em; }
222
+
223
+ h2 {
224
+ font-size: 2.125em; }
225
+
226
+ h3 {
227
+ font-size: 1.875em; }
228
+
229
+ h4 {
230
+ font-size: 1.5em; }
231
+
232
+ h5 {
233
+ font-size: 1.25em; }
234
+
235
+ h6 {
236
+ font-size: 1.125em; }
237
+
238
+ p {
239
+ margin: 0 0 1.875em; }
240
+
241
+ address {
242
+ font-style: italic;
243
+ margin: 0 0 1.875em; }
244
+
245
+ mark,
246
+ ins {
247
+ background: #fff7e6;
248
+ color: #283040;
249
+ padding: 0 3px;
250
+ text-decoration: none; }
251
+
252
+ pre {
253
+ background: #f7f9fb;
254
+ border-radius: 3px;
255
+ color: #283040;
256
+ font-family: Monaco, courier, monospace;
257
+ font-size: 0.875rem;
258
+ line-height: 1.5;
259
+ margin: 0 0 1.875rem;
260
+ overflow: auto;
261
+ padding: 1.5rem;
262
+ text-align: left;
263
+ white-space: pre;
264
+ word-spacing: normal;
265
+ word-break: normal;
266
+ word-wrap: normal; }
267
+
268
+ :not(pre) > code {
269
+ background: #f7f9fb;
270
+ border-radius: 3px;
271
+ font-size: 0.875rem;
272
+ padding: 0.1em;
273
+ white-space: normal; }
274
+
275
+ blockquote {
276
+ border-left: 5px solid #12db5d;
277
+ font-size: 1.5em;
278
+ line-height: 1.33333;
279
+ margin: 1.5em 0;
280
+ padding-left: 1em; }
281
+ blockquote:first-child {
282
+ margin-top: 0; }
283
+ blockquote p {
284
+ margin-bottom: 0.5em; }
285
+ blockquote p:last-child {
286
+ margin-bottom: 0; }
287
+ blockquote small,
288
+ blockquote cite {
289
+ color: #67758d;
290
+ display: block;
291
+ font-size: 0.75em;
292
+ font-style: normal;
293
+ font-weight: normal;
294
+ line-height: 1.5;
295
+ margin-top: 1em; }
296
+ blockquote small:last-child,
297
+ blockquote cite:last-child {
298
+ margin-bottom: 0; }
299
+
300
+ dl {
301
+ margin: 0; }
302
+
303
+ dt {
304
+ font-weight: bold; }
305
+
306
+ dd {
307
+ margin: 0 0 1.875em; }
308
+
309
+ ul,
310
+ ol {
311
+ margin: 0 0 1.875em;
312
+ padding: 0 0 0 1.5em; }
313
+
314
+ li > ul,
315
+ li > ol {
316
+ margin-bottom: 0; }
317
+
318
+ hr {
319
+ border: 0;
320
+ border-bottom: 1px solid #dee5ef;
321
+ margin: 1.875em 0; }
322
+
323
+ table {
324
+ line-height: 1.5;
325
+ margin: 0;
326
+ max-width: 100%;
327
+ text-align: left;
328
+ width: 100%; }
329
+
330
+ caption {
331
+ color: #67758d;
332
+ font-size: 0.875rem;
333
+ font-style: normal;
334
+ margin-bottom: 0.75rem;
335
+ text-align: left; }
336
+
337
+ th,
338
+ td {
339
+ border-bottom: 1px solid #dee5ef;
340
+ padding: 0.5em 5px; }
341
+
342
+ th {
343
+ color: #283040;
344
+ font-weight: bold; }
345
+
346
+ .responsive-table {
347
+ display: block;
348
+ margin: 0 0 1.875em;
349
+ overflow-x: auto;
350
+ width: 100%; }
351
+
352
+ :not(.responsive-table) > table {
353
+ display: block;
354
+ margin: 0 0 1.875em;
355
+ overflow-x: auto;
356
+ -webkit-overflow-scrolling: touch; }
357
+ :not(.responsive-table) > table tbody,
358
+ :not(.responsive-table) > table thead {
359
+ width: 100%; }
360
+ :not(.responsive-table) > table tr {
361
+ width: 100%; }
362
+ :not(.responsive-table) > table td {
363
+ min-width: 140px; }
364
+
365
+ /* Form fields */
366
+ label {
367
+ color: #283040;
368
+ font-weight: bold;
369
+ line-height: 1.5;
370
+ margin-bottom: 0.25em; }
371
+
372
+ input[type=checkbox] + label,
373
+ input[type=radio] + label {
374
+ cursor: pointer;
375
+ padding-left: 0.25em;
376
+ padding-right: 1em; }
377
+
378
+ input[type="text"],
379
+ input[type="password"],
380
+ input[type="email"],
381
+ input[type="tel"],
382
+ input[type="number"],
383
+ input[type="search"],
384
+ input[type="url"],
385
+ select,
386
+ textarea {
387
+ background: #fff;
388
+ border: 1px solid #dee5ef;
389
+ border-radius: 3px;
390
+ box-shadow: none;
391
+ box-sizing: border-box;
392
+ color: #424b5f;
393
+ display: block;
394
+ font-size: 16px;
395
+ font-weight: normal;
396
+ line-height: 1.5;
397
+ max-width: 100%;
398
+ padding: 0.5em 15px;
399
+ width: 100%; }
400
+ input[type="text"]:focus,
401
+ input[type="password"]:focus,
402
+ input[type="email"]:focus,
403
+ input[type="tel"]:focus,
404
+ input[type="number"]:focus,
405
+ input[type="search"]:focus,
406
+ input[type="url"]:focus,
407
+ select:focus,
408
+ textarea:focus {
409
+ outline: 0; }
410
+
411
+ .form-group {
412
+ margin-bottom: 1em; }
413
+
414
+ .form-submit {
415
+ margin-top: 1.66667em; }
416
+
417
+ /* Buttons */
418
+ button,
419
+ input[type="submit"],
420
+ input[type="button"],
421
+ input[type="reset"],
422
+ .button {
423
+ background-color: #12db5d;
424
+ border: 2px solid #12db5d;
425
+ border-radius: 3px;
426
+ box-sizing: border-box;
427
+ color: #fff;
428
+ display: inline-block;
429
+ font-size: 14px;
430
+ font-weight: bold;
431
+ letter-spacing: 0.035em;
432
+ line-height: 1.2;
433
+ padding: 0.8em 2.75em;
434
+ text-align: center;
435
+ text-decoration: none;
436
+ -webkit-transition: .3s ease;
437
+ transition: .3s ease;
438
+ vertical-align: middle; }
439
+ button:hover, button:focus, button:active,
440
+ input[type="submit"]:hover,
441
+ input[type="submit"]:focus,
442
+ input[type="submit"]:active,
443
+ input[type="button"]:hover,
444
+ input[type="button"]:focus,
445
+ input[type="button"]:active,
446
+ input[type="reset"]:hover,
447
+ input[type="reset"]:focus,
448
+ input[type="reset"]:active,
449
+ .button:hover,
450
+ .button:focus,
451
+ .button:active {
452
+ background-color: transparent;
453
+ color: #12db5d;
454
+ outline: 0; }
455
+
456
+ .button-secondary {
457
+ background-color: transparent;
458
+ color: #12db5d; }
459
+ .button-secondary:hover, .button-secondary:focus, .button-secondary:active {
460
+ background-color: #12db5d;
461
+ color: #fff; }
462
+
463
+ .button-icon {
464
+ -webkit-box-align: center;
465
+ -ms-flex-align: center;
466
+ align-items: center;
467
+ background: 0;
468
+ border: 0;
469
+ color: inherit;
470
+ display: -webkit-inline-box;
471
+ display: -ms-inline-flexbox;
472
+ display: inline-flex;
473
+ font-size: 1em;
474
+ font-weight: normal;
475
+ -webkit-box-pack: center;
476
+ -ms-flex-pack: center;
477
+ justify-content: center;
478
+ letter-spacing: normal;
479
+ padding: 0.25em 0; }
480
+ .button-icon .icon {
481
+ height: 1em;
482
+ min-width: 1em;
483
+ text-align: center; }
484
+ .button-icon:hover, .button-icon:focus, .button-icon:active {
485
+ color: #12db5d; }
486
+
487
+ .has-gradient .button {
488
+ background-color: #fff;
489
+ border-color: #fff;
490
+ color: #12db5d; }
491
+ .has-gradient .button:hover, .has-gradient .button:focus, .has-gradient .button:active {
492
+ background-color: transparent;
493
+ color: #fff; }
494
+ .has-gradient .button-secondary {
495
+ background-color: transparent;
496
+ color: #fff; }
497
+ .has-gradient .button-secondary:hover, .has-gradient .button-secondary:focus, .has-gradient .button-secondary:active {
498
+ background-color: #fff;
499
+ color: #12db5d; }
500
+
501
+ #menu-open,
502
+ #menu-close,
503
+ .guides-nav .guides-nav-toggle,
504
+ .guides-nav .submenu-toggle {
505
+ background: 0;
506
+ border: 0;
507
+ border-radius: 0;
508
+ box-shadow: none;
509
+ color: inherit;
510
+ height: 30px;
511
+ padding: 0;
512
+ position: relative;
513
+ width: 30px; }
514
+
515
+ /* Placeholder text color */
516
+ ::-webkit-input-placeholder {
517
+ color: #67758d; }
518
+
519
+ ::-moz-placeholder {
520
+ color: #67758d;
521
+ opacity: 1; }
522
+
523
+ :-ms-input-placeholder {
524
+ color: #67758d; }
525
+
526
+ ::-ms-input-placeholder {
527
+ color: #67758d; }
528
+
529
+ ::placeholder {
530
+ color: #67758d; }
531
+
532
+ /* Videos, audios and embeds */
533
+ embed,
534
+ iframe,
535
+ object,
536
+ video {
537
+ max-width: 100%; }
538
+
539
+ .js-reframe {
540
+ margin: 0 0 1.875em; }
541
+
542
+ /* Images */
543
+ img {
544
+ height: auto;
545
+ max-width: 100%; }
546
+
547
+ /* Examples */
548
+ .example-container {
549
+ background: #424b5f;
550
+ box-shadow: 5px 5px 5px #999;
551
+ padding: 20px;
552
+ margin: 20px 0; }
553
+ .example-container::before {
554
+ content: 'Example';
555
+ color: #ffffff;
556
+ font-size: 1.2em;
557
+ text-transform: uppercase; }
558
+ .example-container :nth-child(1) {
559
+ margin-top: 10px; }
560
+ .example-container .result {
561
+ content: 'Result';
562
+ color: #ffffff;
563
+ font-size: 1.2em;
564
+ text-transform: uppercase;
565
+ margin-bottom: 1em; }
566
+ .example-container pre {
567
+ margin: 0; }
568
+
569
+ /* Notifications */
570
+ .alert {
571
+ border-radius: 5px;
572
+ color: #283040;
573
+ margin-bottom: 1.875em;
574
+ padding: 1em 1.125em; }
575
+ .alert.note {
576
+ background: #fff7e6;
577
+ border-left: 5px solid #fcb41d; }
578
+ .alert.success {
579
+ background: #bffad5;
580
+ border-left: 5px solid #12db5d; }
581
+ .alert.danger {
582
+ background: #ffe9e6;
583
+ border-left: 5px solid #fc381d; }
584
+ .alert.warning {
585
+ background: #fff7e6;
586
+ border-left: 5px solid #fcb41d; }
587
+ .alert.info {
588
+ background: #eaf5ff;
589
+ border-left: 5px solid #1E90FF; }
590
+
591
+ .important {
592
+ background: #ffe9e6;
593
+ border-left: 5px solid #fc381d;
594
+ border-radius: 5px;
595
+ color: #283040;
596
+ margin-bottom: 1.875em;
597
+ padding: 1em 1.125em; }
598
+
599
+ /* Background gradient */
600
+ .has-gradient {
601
+ background: #12db5d;
602
+ background: -webkit-linear-gradient(left, #11998e, #12db5d);
603
+ background: linear-gradient(to right, #11998e, #12db5d);
604
+ color: #fff;
605
+ position: relative; }
606
+
607
+ /* Background Image */
608
+ .bg-img {
609
+ -webkit-animation: fadeIn20 .75s ease-in-out;
610
+ animation: fadeIn20 .75s ease-in-out;
611
+ background-position: center;
612
+ background-size: cover;
613
+ bottom: 0;
614
+ left: 0;
615
+ opacity: 0.2;
616
+ position: absolute;
617
+ right: 0;
618
+ top: 0; }
619
+
620
+ /* Heading decoration */
621
+ .line-left {
622
+ position: relative; }
623
+ .line-left:before {
624
+ background: #12db5d;
625
+ content: "";
626
+ height: 100%;
627
+ left: -1px;
628
+ position: absolute;
629
+ top: 0;
630
+ width: 5px; }
631
+
632
+ /* Grid */
633
+ .grid {
634
+ display: -webkit-box;
635
+ display: -ms-flexbox;
636
+ display: flex;
637
+ -ms-flex-wrap: wrap;
638
+ flex-wrap: wrap;
639
+ margin-left: -0.9375em;
640
+ margin-right: -0.9375em; }
641
+
642
+ .grid-item {
643
+ box-sizing: border-box;
644
+ -webkit-box-flex: 0;
645
+ -ms-flex: 0 0 auto;
646
+ flex: 0 0 auto;
647
+ padding-left: 0.9375em;
648
+ padding-right: 0.9375em; }
649
+
650
+ .grid-col-2 .grid-item {
651
+ -ms-flex-preferred-size: 50%;
652
+ flex-basis: 50%;
653
+ max-width: 50%; }
654
+
655
+ .grid-col-3 .grid-item {
656
+ -ms-flex-preferred-size: 33.333%;
657
+ flex-basis: 33.333%;
658
+ max-width: 33.333%; }
659
+
660
+ .grid-swap {
661
+ -webkit-box-orient: horizontal;
662
+ -webkit-box-direction: reverse;
663
+ -ms-flex-direction: row-reverse;
664
+ flex-direction: row-reverse; }
665
+
666
+ .grid-middle {
667
+ -webkit-box-align: center;
668
+ -ms-flex-align: center;
669
+ align-items: center; }
670
+
671
+ .grid-center {
672
+ -webkit-box-pack: center;
673
+ -ms-flex-pack: center;
674
+ justify-content: center; }
675
+
676
+ /* Text meant only for screen readers */
677
+ .screen-reader-text {
678
+ border: 0;
679
+ clip: rect(1px, 1px, 1px, 1px);
680
+ height: 1px;
681
+ overflow: hidden;
682
+ padding: 0;
683
+ position: absolute !important;
684
+ width: 1px; }
685
+
686
+ /* Clearing floats */
687
+ .post-content:after {
688
+ clear: both; }
689
+ .post-content:before, .post-content:after {
690
+ content: "";
691
+ display: table; }
692
+
693
+ @media only screen and (max-width: 1000px) {
694
+ .grid {
695
+ margin-left: -1.5vw;
696
+ margin-right: -1.5vw; }
697
+
698
+ .grid-item {
699
+ padding-left: 1.5vw;
700
+ padding-right: 1.5vw; } }
701
+ @media only screen and (max-width: 760px) {
702
+ .grid-col-3 .grid-item {
703
+ -ms-flex-preferred-size: 100%;
704
+ flex-basis: 100%;
705
+ max-width: 100%; } }
706
+ @media only screen and (max-width: 640px) {
707
+ h1,
708
+ h2,
709
+ h3,
710
+ h4,
711
+ h5,
712
+ h6 {
713
+ margin: 1.875rem 0 0.9375rem; }
714
+
715
+ h1 {
716
+ font-size: 2em; }
717
+
718
+ h2 {
719
+ font-size: 1.75em; }
720
+
721
+ h3 {
722
+ font-size: 1.5em; }
723
+
724
+ h4 {
725
+ font-size: 1.25em; }
726
+
727
+ h5 {
728
+ font-size: 1.125em; }
729
+
730
+ h6 {
731
+ font-size: 1em; }
732
+
733
+ blockquote {
734
+ font-size: 1.25em;
735
+ line-height: 1.5; }
736
+
737
+ .grid-col-2 .grid-item {
738
+ -ms-flex-preferred-size: 100%;
739
+ flex-basis: 100%;
740
+ max-width: 100%; } }
741
+ /**
742
+ * Custom Icons
743
+ */
744
+ .icon-menu,
745
+ .icon-close {
746
+ background: currentColor;
747
+ border-radius: 1px;
748
+ color: inherit;
749
+ height: 2px;
750
+ margin-top: -1px;
751
+ margin-left: -12px;
752
+ position: absolute;
753
+ right: 0;
754
+ top: 50%;
755
+ width: 24px; }
756
+ .icon-menu:before, .icon-menu:after,
757
+ .icon-close:before,
758
+ .icon-close:after {
759
+ background: currentColor;
760
+ border-radius: 1px;
761
+ content: "";
762
+ height: 100%;
763
+ left: 0;
764
+ position: absolute;
765
+ width: 100%; }
766
+
767
+ .icon-menu:before {
768
+ top: -6px; }
769
+ .icon-menu:after {
770
+ bottom: -6px; }
771
+
772
+ .icon-close {
773
+ background: 0;
774
+ margin-left: -15px;
775
+ width: 30px; }
776
+ .icon-close:before {
777
+ top: 0;
778
+ -webkit-transform: rotate(45deg);
779
+ transform: rotate(45deg); }
780
+ .icon-close:after {
781
+ top: 0;
782
+ -webkit-transform: rotate(-45deg);
783
+ transform: rotate(-45deg); }
784
+
785
+ .icon-angle-right {
786
+ background: 0;
787
+ border-color: currentColor;
788
+ border-style: solid;
789
+ border-width: 1px 1px 0 0;
790
+ box-sizing: border-box;
791
+ height: 8px;
792
+ left: 50%;
793
+ margin-left: -4px;
794
+ margin-top: -4px;
795
+ position: absolute;
796
+ top: 50%;
797
+ width: 8px;
798
+ -webkit-transform: rotate(45deg);
799
+ transform: rotate(45deg); }
800
+
801
+ .guides-nav-toggle .icon-angle-right {
802
+ height: 12px;
803
+ left: auto;
804
+ margin-left: 0;
805
+ margin-right: 9px;
806
+ margin-top: -6px;
807
+ right: 0;
808
+ width: 12px; }
809
+
810
+ .guides-section-item .icon-angle-right {
811
+ left: auto;
812
+ margin-left: 0;
813
+ margin-right: 15px;
814
+ right: 0; }
815
+
816
+ /**
817
+ * Animations
818
+ */
819
+ @-webkit-keyframes fadeIn20 {
820
+ 0% {
821
+ opacity: 0; }
822
+ 100% {
823
+ opacity: 0.2; } }
824
+ @keyframes fadeIn20 {
825
+ 0% {
826
+ opacity: 0; }
827
+ 100% {
828
+ opacity: 0.2; } }
829
+ /**
830
+ * Structure
831
+ */
832
+ .outer {
833
+ padding-left: 3vw;
834
+ padding-right: 3vw; }
835
+
836
+ .inner {
837
+ margin-left: auto;
838
+ margin-right: auto;
839
+ max-width: 1200px; }
840
+
841
+ .inner-md {
842
+ margin-left: auto;
843
+ margin-right: auto;
844
+ max-width: 800px; }
845
+
846
+ .inner-sm {
847
+ margin-left: auto;
848
+ margin-right: auto;
849
+ max-width: 680px; }
850
+
851
+ .site {
852
+ display: -webkit-box;
853
+ display: -ms-flexbox;
854
+ display: flex;
855
+ -webkit-box-orient: vertical;
856
+ -webkit-box-direction: normal;
857
+ -ms-flex-direction: column;
858
+ flex-direction: column;
859
+ min-height: 100vh;
860
+ position: relative; }
861
+
862
+ .site-content {
863
+ -webkit-box-flex: 1;
864
+ -ms-flex-positive: 1;
865
+ flex-grow: 1;
866
+ width: 100%; }
867
+
868
+ /**
869
+ * Site Header
870
+ */
871
+ .site-header {
872
+ background: #fff;
873
+ padding-bottom: 1.25em;
874
+ padding-top: 1.125em; }
875
+
876
+ .site-header-inside {
877
+ -webkit-box-align: center;
878
+ -ms-flex-align: center;
879
+ align-items: center;
880
+ display: -webkit-box;
881
+ display: -ms-flexbox;
882
+ display: flex; }
883
+
884
+ .site-branding {
885
+ -webkit-box-flex: 0;
886
+ -ms-flex: 0 1 auto;
887
+ flex: 0 1 auto; }
888
+ .site-branding a {
889
+ border: 0;
890
+ color: inherit;
891
+ display: inline-block; }
892
+
893
+ .site-title {
894
+ color: #283040;
895
+ font-size: 1.75rem;
896
+ font-weight: bold;
897
+ line-height: 1.2;
898
+ margin: 0; }
899
+
900
+ .site-logo {
901
+ margin: 0; }
902
+ .site-logo img {
903
+ max-height: 36px; }
904
+
905
+ .site-navigation {
906
+ margin-left: auto; }
907
+
908
+ .menu,
909
+ .submenu {
910
+ list-style: none;
911
+ margin: 0;
912
+ padding: 0; }
913
+
914
+ .menu-item {
915
+ position: relative; }
916
+ .menu-item.current-menu-item {
917
+ color: #12db5d; }
918
+ .menu-item a:not(.button) {
919
+ border: 0;
920
+ color: inherit;
921
+ display: inline-block;
922
+ font-size: 14px;
923
+ line-height: 1.5; }
924
+ .menu-item a:not(.button):hover {
925
+ color: #12db5d; }
926
+
927
+ .menu-toggle {
928
+ display: none; }
929
+
930
+ @media only screen and (min-width: 801px) {
931
+ .menu {
932
+ -webkit-box-align: center;
933
+ -ms-flex-align: center;
934
+ align-items: center;
935
+ display: -webkit-box;
936
+ display: -ms-flexbox;
937
+ display: flex; }
938
+
939
+ .menu-item {
940
+ margin-left: 20px;
941
+ padding-bottom: 0.1875em;
942
+ padding-top: 0.1875em; }
943
+ .menu-item a {
944
+ padding-bottom: 0.5em;
945
+ padding-top: 0.5em; }
946
+ .menu-item a.button:not(.button-icon) {
947
+ padding-left: 1.25em;
948
+ padding-right: 1.25em; }
949
+ .menu-item.has-children > a {
950
+ padding-right: 15px;
951
+ position: relative; }
952
+ .menu-item.has-children > a:after {
953
+ background: 0;
954
+ border-color: currentColor;
955
+ border-style: solid;
956
+ border-width: 1px 1px 0 0;
957
+ box-sizing: border-box;
958
+ content: "";
959
+ height: 6px;
960
+ position: absolute;
961
+ right: 0;
962
+ top: 50%;
963
+ width: 6px;
964
+ -webkit-transform: translateY(-50%) rotate(135deg);
965
+ transform: translateY(-50%) rotate(135deg); }
966
+ .menu-item.has-children > a.button:not(.button-icon) {
967
+ padding-right: 2.25em; }
968
+ .menu-item.has-children > a.button:not(.button-icon):after {
969
+ right: 1.25em; }
970
+
971
+ .submenu {
972
+ background: #fff;
973
+ border: 1px solid #dee5ef;
974
+ border-radius: 3px;
975
+ left: 0;
976
+ min-width: 180px;
977
+ opacity: 0;
978
+ padding: 0.75em 0;
979
+ position: absolute;
980
+ text-align: left;
981
+ top: 100%;
982
+ -webkit-transition: opacity .2s, visibility 0s .2s;
983
+ transition: opacity .2s, visibility 0s .2s;
984
+ visibility: hidden;
985
+ width: 100%;
986
+ z-index: 99; }
987
+
988
+ .menu-item .submenu-toggle {
989
+ display: none; }
990
+ .menu-item.has-children:hover > .submenu {
991
+ opacity: 1;
992
+ -webkit-transition: margin .3s, opacity .2s;
993
+ transition: margin .3s, opacity .2s;
994
+ visibility: visible; }
995
+
996
+ .submenu .menu-item {
997
+ display: block;
998
+ margin: 0;
999
+ padding: 0 15px; }
1000
+ .submenu a:not(.button-icon) {
1001
+ display: block; }
1002
+ .submenu a.button:not(.button-icon) {
1003
+ margin: 0.5em 0; } }
1004
+ @media only screen and (max-width: 800px) {
1005
+ .site {
1006
+ overflow: hidden;
1007
+ position: relative; }
1008
+
1009
+ .site-branding {
1010
+ margin-right: 10px; }
1011
+
1012
+ .site-header:after {
1013
+ background: rgba(66, 75, 95, 0.6);
1014
+ content: "";
1015
+ height: 100vh;
1016
+ left: 0;
1017
+ opacity: 0;
1018
+ position: absolute;
1019
+ top: 0;
1020
+ -webkit-transition: opacity .15s ease-in-out,visibility 0s ease-in-out .15s;
1021
+ transition: opacity .15s ease-in-out,visibility 0s ease-in-out .15s;
1022
+ visibility: hidden;
1023
+ width: 100%;
1024
+ z-index: 998; }
1025
+
1026
+ #menu-open {
1027
+ display: block;
1028
+ margin-left: auto; }
1029
+
1030
+ .site-navigation {
1031
+ background: #fff;
1032
+ box-sizing: border-box;
1033
+ height: 100vh;
1034
+ margin: 0;
1035
+ max-width: 360px;
1036
+ -webkit-overflow-scrolling: touch;
1037
+ position: absolute;
1038
+ right: -100%;
1039
+ top: 0;
1040
+ -webkit-transition: right .3s ease-in-out, visibility 0s .3s ease-in-out;
1041
+ transition: right .3s ease-in-out, visibility 0s .3s ease-in-out;
1042
+ visibility: hidden;
1043
+ width: 100%;
1044
+ z-index: 999; }
1045
+
1046
+ .site-nav-inside {
1047
+ height: 100%;
1048
+ overflow: auto;
1049
+ -webkit-overflow-scrolling: touch;
1050
+ position: relative; }
1051
+
1052
+ .menu--opened .site {
1053
+ height: 100%;
1054
+ left: 0;
1055
+ overflow: hidden;
1056
+ position: fixed;
1057
+ top: 0;
1058
+ -webkit-transform: translate3d(0, 0, 0);
1059
+ transform: translate3d(0, 0, 0);
1060
+ width: 100%;
1061
+ z-index: 997; }
1062
+ .menu--opened .site-navigation {
1063
+ right: 0;
1064
+ -webkit-transition: right .3s ease-in-out;
1065
+ transition: right .3s ease-in-out;
1066
+ visibility: visible; }
1067
+ .menu--opened .site-header:after {
1068
+ opacity: 1;
1069
+ -webkit-transition-delay: 0s;
1070
+ transition-delay: 0s;
1071
+ visibility: visible; }
1072
+
1073
+ #menu-close {
1074
+ display: block;
1075
+ position: absolute;
1076
+ right: 3vw;
1077
+ top: 1.125rem; }
1078
+
1079
+ .menu {
1080
+ padding: 4.5rem 3vw 3rem; }
1081
+
1082
+ .submenu {
1083
+ border-top: 1px solid #dee5ef;
1084
+ display: none;
1085
+ padding-left: 15px; }
1086
+ .submenu.active {
1087
+ display: block; }
1088
+
1089
+ .menu-item {
1090
+ border-top: 1px solid #dee5ef;
1091
+ display: block;
1092
+ margin: 0; }
1093
+ .menu-item:not(.menu-button):last-child {
1094
+ border-bottom: 1px solid #dee5ef; }
1095
+ .menu-item a:not(.button), .menu-item a.button-icon {
1096
+ padding: 1em 0; }
1097
+ .menu-item a:not(.button-icon) {
1098
+ display: block; }
1099
+ .menu-item.has-children > a {
1100
+ margin-right: 30px; }
1101
+ .menu-item .menu-item:first-child {
1102
+ border-top: 0; }
1103
+ .menu-item .menu-item:last-child {
1104
+ border-bottom: 0; }
1105
+ .menu-item .submenu-toggle {
1106
+ background: 0;
1107
+ border: 0;
1108
+ border-radius: 0;
1109
+ color: #67758d;
1110
+ display: block;
1111
+ height: 48px;
1112
+ padding: 0;
1113
+ position: absolute;
1114
+ right: 0;
1115
+ top: 0;
1116
+ width: 30px; }
1117
+ .menu-item .submenu-toggle.active .icon-angle-right {
1118
+ -webkit-transform: rotate(135deg);
1119
+ transform: rotate(135deg); }
1120
+
1121
+ .menu-button > .button:not(.button-icon) {
1122
+ margin-bottom: 1em;
1123
+ margin-top: 1em; }
1124
+ .menu-button + .menu-button {
1125
+ border-top: 0; } }
1126
+ /**
1127
+ * Posts and Pages
1128
+ */
1129
+ .post {
1130
+ margin-bottom: 2.5em; }
1131
+
1132
+ .post-full:last-child {
1133
+ margin-bottom: 5em; }
1134
+
1135
+ .page-header,
1136
+ .post-full .post-header {
1137
+ color: #fff;
1138
+ padding-bottom: 9.5em;
1139
+ padding-top: 3.75em;
1140
+ position: relative;
1141
+ text-align: center; }
1142
+ .page-header .inner-sm,
1143
+ .post-full .post-header .inner-sm {
1144
+ position: relative; }
1145
+
1146
+ .page-title,
1147
+ .post-full .post-title {
1148
+ color: inherit;
1149
+ font-size: 3em;
1150
+ margin: 0;
1151
+ position: relative; }
1152
+
1153
+ .page-subtitle,
1154
+ .post-subtitle {
1155
+ font-size: 1.25em;
1156
+ line-height: 1.5;
1157
+ margin: 0.5em 0 0;
1158
+ position: relative; }
1159
+
1160
+ .post-title a {
1161
+ border: 0;
1162
+ color: inherit; }
1163
+ .post-title a:hover {
1164
+ color: #67758d; }
1165
+
1166
+ .post-meta {
1167
+ color: #67758d;
1168
+ font-size: 0.875em;
1169
+ margin: 0 0 0.5em; }
1170
+
1171
+ .post-thumbnail {
1172
+ border: 0;
1173
+ border-radius: 5px 5px 0 0;
1174
+ display: block;
1175
+ margin: 0; }
1176
+ .post-thumbnail img {
1177
+ border-radius: 5px 5px 0 0;
1178
+ width: 100%; }
1179
+
1180
+ .post-full .post-content,
1181
+ .post-feed {
1182
+ margin-top: -5em;
1183
+ position: relative; }
1184
+
1185
+ .post-full .post-content,
1186
+ .post-feed .post {
1187
+ background: #fff;
1188
+ border: 1px solid #dee5ef;
1189
+ border-radius: 5px;
1190
+ box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.08); }
1191
+
1192
+ .post-full .post-content {
1193
+ padding: 2.5em 7%; }
1194
+ .post-full .post-meta {
1195
+ color: inherit;
1196
+ font-size: 1.125rem; }
1197
+
1198
+ .post-feed:last-child {
1199
+ margin-bottom: 5em; }
1200
+ .post-feed .post {
1201
+ padding: 0 0 2.5em; }
1202
+ .post-feed .post-header {
1203
+ margin: 0 0 1.25em;
1204
+ padding-top: 1.875em; }
1205
+ .post-feed .post-meta,
1206
+ .post-feed .post-title,
1207
+ .post-feed .post-excerpt,
1208
+ .post-feed .read-more {
1209
+ padding-left: 7%;
1210
+ padding-right: 7%; }
1211
+ .post-feed .post-title {
1212
+ font-size: 1.5em;
1213
+ margin: 0; }
1214
+ .post-feed .post-excerpt {
1215
+ margin-bottom: 1.125em; }
1216
+ .post-feed .read-more {
1217
+ margin: 0; }
1218
+ .post-feed .read-more-link {
1219
+ border: 0;
1220
+ color: #12db5d; }
1221
+ .post-feed .read-more-link:after {
1222
+ font-size: 1.125em;
1223
+ content: "\2192";
1224
+ line-height: 1.5;
1225
+ margin-left: 5px; }
1226
+
1227
+ @media only screen and (max-width: 1000px) {
1228
+ .post {
1229
+ margin-bottom: 3vw; } }
1230
+ @media only screen and (max-width: 640px) {
1231
+ .page-title,
1232
+ .post-full .post-title {
1233
+ font-size: 2.25rem; }
1234
+
1235
+ .post-full .post-content,
1236
+ .post-feed .post-meta,
1237
+ .post-feed .post-title,
1238
+ .post-feed .post-excerpt,
1239
+ .post-feed .read-more {
1240
+ padding-left: 1.5rem;
1241
+ padding-right: 1.5rem; } }
1242
+ /**
1243
+ * Docs
1244
+ */
1245
+ .guides-content {
1246
+ padding-top: 2.5em; }
1247
+
1248
+ .post.type-guides {
1249
+ margin-bottom: 5.625em;
1250
+ max-width: 800px; }
1251
+ .post.type-guides h1 {
1252
+ font-size: 1.875rem; }
1253
+ .post.type-guides h2 {
1254
+ font-size: 1.5rem; }
1255
+ .post.type-guides h3 {
1256
+ font-size: 1.25rem; }
1257
+ .post.type-guides h4 {
1258
+ font-size: 1.125rem; }
1259
+ .post.type-guides h5,
1260
+ .post.type-guides h6 {
1261
+ font-size: 1rem; }
1262
+ .post.type-guides .hash-link {
1263
+ border: 0;
1264
+ color: #67758d;
1265
+ display: inline-block;
1266
+ margin-left: -21px;
1267
+ opacity: 0;
1268
+ padding-right: 5px;
1269
+ -webkit-transition: opacity .3s ease;
1270
+ transition: opacity .3s ease; }
1271
+ .post.type-guides .hash-link .icon-copy {
1272
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2367758d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-link'%3E%3Cpath d='M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71'%3E%3C/path%3E%3Cpath d='M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71'%3E%3C/path%3E%3C/svg%3E");
1273
+ display: inline-block;
1274
+ height: 16px;
1275
+ width: 16px; }
1276
+ .post.type-guides h2:hover .hash-link, .post.type-guides h2:focus .hash-link,
1277
+ .post.type-guides h3:hover .hash-link,
1278
+ .post.type-guides h3:focus .hash-link {
1279
+ opacity: 1; }
1280
+ .post.type-guides .post-inside {
1281
+ background: #fff;
1282
+ border: 1px solid #dee5ef;
1283
+ border-radius: 5px;
1284
+ box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.08);
1285
+ box-sizing: border-box;
1286
+ padding: 2.5em 0; }
1287
+ .post.type-guides .post-title {
1288
+ font-size: 1.875rem;
1289
+ margin: 0 0 2.5rem;
1290
+ padding: 0 7%; }
1291
+ .post.type-guides .post-content {
1292
+ padding: 0 7%; }
1293
+
1294
+ .guides-section-items {
1295
+ display: -ms-flexbox;
1296
+ display: -webkit-flex;
1297
+ display: flex;
1298
+ -webkit-flex-wrap: wrap;
1299
+ -ms-flex-wrap: wrap;
1300
+ flex-wrap: wrap;
1301
+ list-style: none;
1302
+ margin-left: -0.3125em;
1303
+ margin-right: -0.3125em;
1304
+ padding: 0; }
1305
+ .guides-section-items .guides-section-item {
1306
+ -webkit-flex: 1 1 240px;
1307
+ -ms-flex: 1 1 240px;
1308
+ flex: 1 1 240px;
1309
+ margin: 0 0.3125em 0.9375em; }
1310
+ .guides-section-items .guides-item-link {
1311
+ border: 1px solid #dee5ef;
1312
+ border-radius: 3px;
1313
+ color: #283040;
1314
+ display: block;
1315
+ font-weight: bold;
1316
+ padding: 0.9375em;
1317
+ position: relative; }
1318
+ .guides-section-items .guides-item-link:hover {
1319
+ border-color: #12db5d;
1320
+ color: #12db5d; }
1321
+
1322
+ .guides-nav {
1323
+ margin-bottom: 1.875em; }
1324
+ .guides-nav .guides-nav-toggle {
1325
+ color: #283040;
1326
+ font-size: 1.125rem;
1327
+ height: 30px;
1328
+ margin: 0;
1329
+ padding-right: 30px;
1330
+ position: relative;
1331
+ text-align: left;
1332
+ width: 100%; }
1333
+ .guides-nav .submenu-toggle {
1334
+ color: #67758d;
1335
+ height: 30px;
1336
+ position: absolute;
1337
+ right: 0;
1338
+ top: 0;
1339
+ width: 30px; }
1340
+
1341
+ .guides-toc {
1342
+ color: #283040;
1343
+ font-weight: bold;
1344
+ line-height: 1.5;
1345
+ list-style: none;
1346
+ margin: 0;
1347
+ padding: 0; }
1348
+ .guides-toc > .toc-item > a {
1349
+ padding: 0.1875rem 0; }
1350
+ .guides-toc a {
1351
+ border: 0;
1352
+ color: inherit;
1353
+ display: block; }
1354
+ .guides-toc a:hover, .guides-toc a:focus {
1355
+ color: #12db5d; }
1356
+
1357
+ .toc-submenu {
1358
+ border-left: 1px solid #dee5ef;
1359
+ color: #424b5f;
1360
+ display: none;
1361
+ font-size: 0.875rem;
1362
+ font-weight: normal;
1363
+ list-style: none;
1364
+ margin-top: 0.625rem;
1365
+ padding-left: 1.25rem; }
1366
+
1367
+ .toc-item {
1368
+ color: inherit;
1369
+ margin-bottom: 0.625rem; }
1370
+ .toc-item.current, .toc-item.current-parent {
1371
+ color: #12db5d; }
1372
+ .toc-item.has-children {
1373
+ padding-right: 30px;
1374
+ position: relative; }
1375
+ .toc-item.has-children.active .toc-submenu {
1376
+ display: block; }
1377
+ .toc-item.has-children.active > .submenu-toggle .icon-angle-right {
1378
+ -webkit-transform: rotate(135deg);
1379
+ transform: rotate(135deg); }
1380
+
1381
+ .page-nav {
1382
+ display: none; }
1383
+ .page-nav .page-nav-title {
1384
+ font-size: 1rem;
1385
+ margin: 0 0 0.625rem; }
1386
+ .page-nav .page-nav-title:only-child {
1387
+ display: none; }
1388
+ .page-nav ul {
1389
+ font-size: 0.8125rem;
1390
+ line-height: 1.5;
1391
+ list-style: none;
1392
+ padding: 0; }
1393
+ .page-nav ul ul {
1394
+ border-left: 1px solid #dee5ef;
1395
+ margin-top: 0.625rem;
1396
+ padding-left: 1.25rem; }
1397
+ .page-nav li {
1398
+ margin-bottom: 0.625rem; }
1399
+ .page-nav li.active > a {
1400
+ color: #12db5d; }
1401
+ .page-nav a {
1402
+ color: #424b5f;
1403
+ border: 0;
1404
+ display: block; }
1405
+ .page-nav a:hover, .page-nav a:focus {
1406
+ color: #12db5d; }
1407
+
1408
+ @media only screen and (min-width: 801px) {
1409
+ .guides-content {
1410
+ display: -webkit-box;
1411
+ display: -ms-flexbox;
1412
+ display: flex;
1413
+ padding-top: 3.75em; }
1414
+
1415
+ .post.type-guides {
1416
+ -webkit-flex: 1 1 auto;
1417
+ -ms-flex: 1 1 auto;
1418
+ flex: 1 1 auto;
1419
+ overflow: hidden; }
1420
+
1421
+ .guides-nav,
1422
+ .page-nav {
1423
+ -webkit-flex-shrink: 0;
1424
+ -ms-flex-negative: 0;
1425
+ flex-shrink: 0;
1426
+ margin-bottom: 5.625em; }
1427
+ .guides-nav .sticky,
1428
+ .page-nav .sticky {
1429
+ position: -webkit-sticky;
1430
+ position: sticky;
1431
+ top: 1.875rem; }
1432
+
1433
+ .guides-nav {
1434
+ padding-right: 1.5em;
1435
+ width: 12.5em; }
1436
+
1437
+ .page-nav {
1438
+ padding-left: 1.5em;
1439
+ width: 9.5em; }
1440
+
1441
+ .guides-nav-toggle {
1442
+ display: none; } }
1443
+ @media only screen and (min-width: 1091px) {
1444
+ .page-nav {
1445
+ display: block; } }
1446
+ @media only screen and (max-width: 800px) {
1447
+ .guides-nav {
1448
+ background: #fff;
1449
+ border: 1px solid #dee5ef;
1450
+ border-radius: 5px;
1451
+ box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.08);
1452
+ box-sizing: border-box;
1453
+ margin-bottom: 5%;
1454
+ padding: 0.75em 1em; }
1455
+
1456
+ .guides-toc-wrap {
1457
+ display: none; }
1458
+
1459
+ .toc--opened .guides-toc-wrap {
1460
+ display: block; }
1461
+ .toc--opened .guides-nav-toggle .icon-angle-right {
1462
+ -webkit-transform: rotate(135deg);
1463
+ transform: rotate(135deg); }
1464
+
1465
+ .guides-toc {
1466
+ border-top: 1px solid #dee5ef;
1467
+ margin-top: 1.25rem;
1468
+ padding-top: 1.25rem; } }
1469
+ @media only screen and (max-width: 640px) {
1470
+ .post.type-guides .post-title,
1471
+ .post.type-guides .post-content {
1472
+ padding: 0 2.25rem; } }
1473
+ /**
1474
+ * Sections
1475
+ */
1476
+ .block {
1477
+ padding-top: 3.75em; }
1478
+ .block:not(.block-hero) {
1479
+ background: #f7f9fb; }
1480
+ .block:last-child {
1481
+ padding-bottom: 3.75em; }
1482
+
1483
+ .block-header {
1484
+ margin-bottom: 1.5em; }
1485
+
1486
+ .block-title {
1487
+ font-size: 2.125em;
1488
+ margin: 0; }
1489
+
1490
+ .block-subtitle {
1491
+ color: #67758d;
1492
+ line-height: 1.5;
1493
+ margin-bottom: 0; }
1494
+ .block-subtitle:not(:first-child) {
1495
+ margin-top: 0.5em; }
1496
+
1497
+ .block-buttons,
1498
+ .grid-item-buttons {
1499
+ -webkit-box-align: center;
1500
+ -ms-flex-align: center;
1501
+ align-items: center;
1502
+ display: -webkit-box;
1503
+ display: -ms-flexbox;
1504
+ display: flex;
1505
+ -ms-flex-wrap: wrap;
1506
+ flex-wrap: wrap;
1507
+ margin-bottom: 0.9375em; }
1508
+ .block-buttons a,
1509
+ .grid-item-buttons a {
1510
+ margin-bottom: 1em;
1511
+ margin-right: 1em; }
1512
+
1513
+ .block-buttons a:not(.button) {
1514
+ border: 0;
1515
+ font-weight: bold; }
1516
+
1517
+ .has-gradient .block-title,
1518
+ .has-gradient .block-subtitle,
1519
+ .has-gradient .block-buttons a:not(.button) {
1520
+ color: inherit; }
1521
+
1522
+ /* Content section */
1523
+ .block-text .grid-item:only-child {
1524
+ -ms-flex-preferred-size: 100%;
1525
+ flex-basis: 100%;
1526
+ max-width: 680px;
1527
+ text-align: center; }
1528
+ .block-text .block-content {
1529
+ font-size: 1.125em; }
1530
+
1531
+ .block-image {
1532
+ -ms-flex-preferred-size: 50%;
1533
+ flex-basis: 50%;
1534
+ max-width: 50%;
1535
+ margin-bottom: 1.875rem; }
1536
+
1537
+ .block-body {
1538
+ -ms-flex-preferred-size: 50%;
1539
+ flex-basis: 50%;
1540
+ max-width: 50%; }
1541
+ .block-body:only-child .block-buttons {
1542
+ -webkit-box-pack: center;
1543
+ -ms-flex-pack: center;
1544
+ justify-content: center; }
1545
+ .block-body:only-child .block-buttons a {
1546
+ margin-left: 0.5em;
1547
+ margin-right: 0.5em; }
1548
+
1549
+ /* CTA section */
1550
+ .block-cta .has-gradient {
1551
+ border-radius: 5px;
1552
+ padding: 3.75em 5% 1.875em; }
1553
+ .block-cta .block-header {
1554
+ -ms-flex-preferred-size: 66.666%;
1555
+ flex-basis: 66.666%;
1556
+ max-width: 66.666%; }
1557
+ .block-cta .block-subtitle {
1558
+ font-size: 1.125em; }
1559
+ .block-cta .block-buttons a {
1560
+ margin-left: 0.5em;
1561
+ margin-right: 0.5em; }
1562
+
1563
+ /* Grid section */
1564
+ .block-grid:not(.has-header) {
1565
+ background: 0;
1566
+ padding-top: 0; }
1567
+ .block-grid .block-header {
1568
+ margin-bottom: 2em;
1569
+ text-align: center; }
1570
+ .block-grid .block-title {
1571
+ font-size: 1.875rem; }
1572
+ .block-grid .grid-item {
1573
+ display: -webkit-box;
1574
+ display: -ms-flexbox;
1575
+ display: flex;
1576
+ -webkit-box-orient: vertical;
1577
+ -webkit-box-direction: normal;
1578
+ -ms-flex-direction: column;
1579
+ flex-direction: column;
1580
+ margin-bottom: 1.875em; }
1581
+ .block-grid .grid-item-inside {
1582
+ background: #fff;
1583
+ border: 1px solid #dee5ef;
1584
+ border-radius: 3px;
1585
+ box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.08);
1586
+ -webkit-box-flex: 1;
1587
+ -ms-flex-positive: 1;
1588
+ flex-grow: 1;
1589
+ padding-bottom: 0.25em; }
1590
+
1591
+ .grid-item-image {
1592
+ border-radius: 3px 3px 0 0;
1593
+ display: block;
1594
+ width: 100%; }
1595
+ .grid-item-image img {
1596
+ border-radius: 3px 3px 0 0; }
1597
+
1598
+ .grid-item-title {
1599
+ font-size: 1.5em;
1600
+ margin-bottom: 0.75rem;
1601
+ margin-top: 1.5rem; }
1602
+ .grid-item-title:first-child {
1603
+ margin-top: 1.875rem; }
1604
+ .grid-item-title a {
1605
+ border: 0;
1606
+ color: inherit; }
1607
+ .grid-item-title a:hover, .grid-item-title a:focus {
1608
+ color: #67758d; }
1609
+
1610
+ .grid-item-content p {
1611
+ margin-bottom: 1.5em; }
1612
+
1613
+ .grid-item-buttons a:not(.button) {
1614
+ border: 0; }
1615
+ .grid-item-buttons a:not(.button):after {
1616
+ font-size: 1.125em;
1617
+ content: "\2192";
1618
+ line-height: 1.5;
1619
+ margin-left: 5px; }
1620
+
1621
+ .grid-item-title,
1622
+ .grid-item-content,
1623
+ .grid-item-buttons {
1624
+ padding-left: 1.875rem;
1625
+ padding-right: 1.875rem; }
1626
+
1627
+ /* Hero Section */
1628
+ .block-hero {
1629
+ color: #fff;
1630
+ padding-bottom: 7.5em;
1631
+ padding-top: 3.75em;
1632
+ position: relative;
1633
+ text-align: center; }
1634
+ .block-hero .inner-sm {
1635
+ position: relative; }
1636
+ .block-hero .block-header {
1637
+ margin-bottom: 0.75em; }
1638
+ .block-hero .block-title {
1639
+ font-size: 3em; }
1640
+ .block-hero .block-content {
1641
+ font-size: 1.25em;
1642
+ line-height: 1.5; }
1643
+ .block-hero .block-buttons {
1644
+ -webkit-box-pack: center;
1645
+ -ms-flex-pack: center;
1646
+ justify-content: center; }
1647
+ .block-hero .block-buttons a {
1648
+ font-size: 1em;
1649
+ margin-left: 0.5em;
1650
+ margin-right: 0.5em; }
1651
+ .block-hero + .block {
1652
+ margin-top: -5em;
1653
+ position: relative; }
1654
+
1655
+ @media only screen and (min-width: 1001px) {
1656
+ .block-image:not(:only-child) {
1657
+ padding-right: 45px; }
1658
+
1659
+ .grid-swap .block-image:not(:only-child) {
1660
+ padding-left: 45px;
1661
+ padding-right: 15px; } }
1662
+ @media only screen and (max-width: 1000px) {
1663
+ .block-grid .grid-item {
1664
+ margin-bottom: 3vw; }
1665
+ .block-grid .grid-item-title,
1666
+ .block-grid .grid-item-content,
1667
+ .block-grid .grid-item-buttons {
1668
+ padding-left: 1.5rem;
1669
+ padding-right: 1.5rem; } }
1670
+ @media only screen and (max-width: 800px) {
1671
+ .block-cta .has-gradient {
1672
+ padding-left: 3vw;
1673
+ padding-right: 3vw; }
1674
+
1675
+ .block-cta .grid-item,
1676
+ .block-text .grid-item {
1677
+ -ms-flex-preferred-size: 100%;
1678
+ flex-basis: 100%;
1679
+ max-width: 680px;
1680
+ text-align: center; }
1681
+ .block-cta .block-buttons,
1682
+ .block-text .block-buttons {
1683
+ -webkit-box-pack: center;
1684
+ -ms-flex-pack: center;
1685
+ justify-content: center; }
1686
+ .block-cta .block-buttons a,
1687
+ .block-text .block-buttons a {
1688
+ margin-left: 0.5em;
1689
+ margin-right: 0.5em; } }
1690
+ @media only screen and (max-width: 640px) {
1691
+ .block-title {
1692
+ font-size: 2em; }
1693
+
1694
+ .block-hero .block-title {
1695
+ font-size: 2.25em; }
1696
+ .block-hero .block-content {
1697
+ font-size: 1.125em; }
1698
+ .block-hero .block-buttons a {
1699
+ font-size: 14px; }
1700
+
1701
+ .block-text .block-content {
1702
+ font-size: 1em; } }
1703
+ /**
1704
+ * Site Footer
1705
+ */
1706
+ .site-footer {
1707
+ background-color: #fff;
1708
+ padding-bottom: 1.5em;
1709
+ padding-top: 1.5em; }
1710
+ .site-footer a:not(.button) {
1711
+ color: inherit; }
1712
+ .site-footer a:not(.button):hover, .site-footer a:not(.button):focus {
1713
+ color: #12db5d; }
1714
+
1715
+ .site-info,
1716
+ .social-links {
1717
+ -webkit-box-align: center;
1718
+ -ms-flex-align: center;
1719
+ align-items: center;
1720
+ display: -webkit-box;
1721
+ display: -ms-flexbox;
1722
+ display: flex;
1723
+ -ms-flex-wrap: wrap;
1724
+ flex-wrap: wrap;
1725
+ -webkit-box-pack: center;
1726
+ -ms-flex-pack: center;
1727
+ justify-content: center;
1728
+ font-size: 0.875em;
1729
+ line-height: 1.2; }
1730
+ .site-info .button:not(.button-icon),
1731
+ .social-links .button:not(.button-icon) {
1732
+ font-size: inherit;
1733
+ line-height: 1.2;
1734
+ padding: 0.3em 1em; }
1735
+
1736
+ .site-info {
1737
+ margin: 0.25em 0 0; }
1738
+ .site-info .copyright,
1739
+ .site-info a {
1740
+ margin: 0 8px 0.5em 0; }
1741
+
1742
+ .social-links {
1743
+ margin-top: 0.9375em; }
1744
+ .social-links a {
1745
+ margin: 0 15px 0.5em; }
1746
+ .social-links .icon {
1747
+ font-size: 18px; }
1748
+
1749
+ @media only screen and (min-width: 641px) {
1750
+ .site-footer-inside {
1751
+ -webkit-box-align: start;
1752
+ -ms-flex-align: start;
1753
+ align-items: flex-start;
1754
+ display: -webkit-box;
1755
+ display: -ms-flexbox;
1756
+ display: flex; }
1757
+
1758
+ .site-info,
1759
+ .social-links {
1760
+ -webkit-box-pack: start;
1761
+ -ms-flex-pack: start;
1762
+ justify-content: flex-start; }
1763
+
1764
+ .social-links {
1765
+ -webkit-box-flex: 0;
1766
+ -ms-flex: 0 0 auto;
1767
+ flex: 0 0 auto;
1768
+ -ms-flex-wrap: nowrap;
1769
+ flex-wrap: nowrap;
1770
+ margin-left: auto;
1771
+ margin-top: 0; }
1772
+ .social-links a {
1773
+ margin-left: 30px;
1774
+ margin-right: 0; } }
1775
+ /* PrismJS 1.16.0
1776
+ https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript&plugins=toolbar+copy-to-clipboard */
1777
+ /**
1778
+ * prism.js default theme for JavaScript, CSS and HTML
1779
+ * Based on dabblet (http://dabblet.com)
1780
+ * @author Lea Verou
1781
+ */
1782
+ code[class*="language-"],
1783
+ pre[class*="language-"] {
1784
+ color: #283040;
1785
+ background: none;
1786
+ font-family: Monaco, courier, monospace;
1787
+ font-size: 0.875rem;
1788
+ text-align: left;
1789
+ white-space: pre;
1790
+ word-spacing: normal;
1791
+ word-break: normal;
1792
+ word-wrap: normal;
1793
+ line-height: 1.5;
1794
+ -moz-tab-size: 4;
1795
+ -o-tab-size: 4;
1796
+ tab-size: 4;
1797
+ -webkit-hyphens: none;
1798
+ -moz-hyphens: none;
1799
+ -ms-hyphens: none;
1800
+ hyphens: none; }
1801
+
1802
+ /* Code blocks */
1803
+ pre[class*="language-"] {
1804
+ margin: 0 0 1.875rem;
1805
+ overflow: auto;
1806
+ padding: 1.5rem; }
1807
+
1808
+ :not(pre) > code[class*="language-"],
1809
+ pre[class*="language-"] {
1810
+ background: #f7f9fb; }
1811
+
1812
+ /* Inline code */
1813
+ :not(pre) > code[class*="language-"] {
1814
+ padding: .1em;
1815
+ border-radius: 3px;
1816
+ white-space: normal; }
1817
+
1818
+ .token.comment,
1819
+ .token.prolog,
1820
+ .token.doctype,
1821
+ .token.cdata {
1822
+ color: slategray; }
1823
+
1824
+ .token.punctuation {
1825
+ color: #999; }
1826
+
1827
+ .namespace {
1828
+ opacity: .7; }
1829
+
1830
+ .token.property,
1831
+ .token.tag,
1832
+ .token.boolean,
1833
+ .token.number,
1834
+ .token.constant,
1835
+ .token.symbol,
1836
+ .token.deleted {
1837
+ color: #905; }
1838
+
1839
+ .token.selector,
1840
+ .token.attr-name,
1841
+ .token.string,
1842
+ .token.char,
1843
+ .token.builtin,
1844
+ .token.inserted {
1845
+ color: #690; }
1846
+
1847
+ .token.operator,
1848
+ .token.entity,
1849
+ .token.url,
1850
+ .language-css .token.string,
1851
+ .style .token.string {
1852
+ color: #9a6e3a;
1853
+ background: rgba(255, 255, 255, 0.5); }
1854
+
1855
+ .token.atrule,
1856
+ .token.attr-value,
1857
+ .token.keyword {
1858
+ color: #07a; }
1859
+
1860
+ .token.function,
1861
+ .token.class-name {
1862
+ color: #DD4A68; }
1863
+
1864
+ .token.regex,
1865
+ .token.important,
1866
+ .token.variable {
1867
+ color: #e90; }
1868
+
1869
+ .token.important,
1870
+ .token.bold {
1871
+ font-weight: bold; }
1872
+
1873
+ .token.italic {
1874
+ font-style: italic; }
1875
+
1876
+ .token.entity {
1877
+ cursor: help; }
1878
+
1879
+ div.code-toolbar {
1880
+ position: relative; }
1881
+
1882
+ div.code-toolbar > .toolbar {
1883
+ position: absolute;
1884
+ top: 0;
1885
+ right: 0; }
1886
+
1887
+ div.code-toolbar > .toolbar .toolbar-item {
1888
+ display: block; }
1889
+
1890
+ div.code-toolbar > .toolbar a {
1891
+ border: 0;
1892
+ cursor: pointer; }
1893
+
1894
+ div.code-toolbar > .toolbar button {
1895
+ background: none;
1896
+ border: 0;
1897
+ border-radius: 0;
1898
+ box-shadow: none;
1899
+ color: inherit;
1900
+ font: inherit;
1901
+ line-height: normal;
1902
+ overflow: visible;
1903
+ padding: 0;
1904
+ -webkit-user-select: none;
1905
+ -moz-user-select: none;
1906
+ -ms-user-select: none; }
1907
+
1908
+ div.code-toolbar > .toolbar a,
1909
+ div.code-toolbar > .toolbar button,
1910
+ div.code-toolbar > .toolbar span {
1911
+ background: #dee5ef;
1912
+ color: #424b5f;
1913
+ display: block;
1914
+ font-size: .75em;
1915
+ line-height: 1.5;
1916
+ padding: .25em .5em; }
1917
+
1918
+ div.code-toolbar > .toolbar a:hover,
1919
+ div.code-toolbar > .toolbar a:focus,
1920
+ div.code-toolbar > .toolbar button:hover,
1921
+ div.code-toolbar > .toolbar button:focus,
1922
+ div.code-toolbar > .toolbar span:hover,
1923
+ div.code-toolbar > .toolbar span:focus {
1924
+ text-decoration: none; }