html,body{margin:0;padding:0;overflow-x:hidden}body{font-family:'Raleway', sans-serif;color:#060606;position:relative;margin-top:50px}a{color:#1f648b;text-decoration:none}a.home{width:200px}a.home h1{font-size:32px;line-height:50px;margin:0}a:hover{text-decoration:underline;color:#69add3}button:focus,.navbar-dark .navbar-toggler:focus{outline:none;border:thin solid rgba(248,243,240,0.3)}.languages{white-space:nowrap;border-radius:2px;background:rgba(255,255,255,0.2);height:36px;padding:3px;margin-right:10px;margin-left:auto}.languages a{display:inline-block;padding:3px 7px;border-radius:2px;transition:all 0.2s;opacity:0.7}.languages a:hover{opacity:1;background:rgba(255,255,255,0.2)}.languages a img{margin:0}.languages a .add-language{background:rgba(255,255,255,0.6);border-radius:50%;color:#14751d;float:left;text-align:center;width:20px;height:20px;margin:2px;line-height:22px;display:inline-block;font-size:30px;font-weight:bold}.site-navbar{background:#314456;height:50px;font-size:1.1em}.site-navbar img{float:left;display:block;margin-right:20px}.site-navbar a{color:#fff;text-decoration:none}.navbar-brand{height:2.2em;margin-right:1em}.navbar-nav .nav-item{margin-left:0.6em;margin-right:0.6em;border-radius:0.4em}.navbar-nav .nav-item:hover,.navbar-nav .nav-item:active,.navbar-nav .nav-item.show{background-color:#455e7c}.navbar-toggler{transition:all 0.1s ease-in-out}.sidebar{position:fixed;top:50px;height:calc(100% - 50px);overflow-y:auto;overflow-x:hidden;left:0;bottom:0;z-index:4;padding:0 0 2em;background-color:#ecf5fe;border-right:1px solid #cbdff9}.sidebar::-webkit-scrollbar{display:none}@media screen and (max-width: 991px){.sidebar{left:-100%;transition:0.25s left ease-in-out}.sidebar.show{left:0}}.contents{padding:0.5em 0 0.5em 0.5em;font-size:1.2em;align-items:normal}.contents .nav .nav{margin-left:1em;font-size:0.9em}.contents .nav-link{padding:0.2em 0.7em}.contents .nav-link.active,.contents .nav-link.active a:hover,.contents .nav-link.active a:focus{font-weight:800}.edit-btn{float:right;margin-top:15px}.edit-btn.sticky-button{position:fixed;top:55px;right:1.3em}@media (min-width: 992px){.edit-btn.sticky-button{right:2em}}.main{padding:1.3em 1.3em 2.6em}.main p,.main li,.main td,.main th{font-weight:normal;font-size:1.1em;line-height:1.7em}.main blockquote{font-size:1.1em}.main li p,.main li li,.main li blockquote{font-size:1em}.main .chapter,.main .chapter .h1,.main .chapter .h2,.main .chapter .h3,.main .chapter h1,.main .chapter h2,.main .chapter h3{padding-top:60px;margin:-50px 0 0.7em}.main .chapter .header-anchor,.main .chapter .h1 .header-anchor,.main .chapter .h2 .header-anchor,.main .chapter .h3 .header-anchor,.main .chapter h1 .header-anchor,.main .chapter h2 .header-anchor,.main .chapter h3 .header-anchor{opacity:0;transition:all 0.2s}.main .chapter .h1:hover .header-anchor,.main .chapter .h2:hover .header-anchor,.main .chapter .h3:hover .header-anchor,.main .chapter h1:hover .header-anchor,.main .chapter h2:hover .header-anchor,.main .chapter h3:hover .header-anchor{opacity:1}.main .chapter .live-code{width:100%;border:none;margin:0}.main .chapter .live-code-resizer{height:1.1em;cursor:s-resize;position:relative}.main .h3,.main .h4,.main .h5,.main .h6,.main h3,.main h4,.main h5,.main h6{margin:0 0 0.7em}.main td{vertical-align:top;padding:0.3em 0}.main strong,.main th{font-weight:700}.main blockquote pre{background-color:#f8f3f0;color:#2f2625;border-radius:0.3em;padding:0.4em 0.6em}.main li{margin-bottom:0.6em}@media (min-width: 992px){.languages{margin-right:0}.main{padding-right:2em;padding-left:2em}}@media (min-width: 768px){.main p,.main li,.main td,.main th,.main blockquote{font-size:1.2em}}p,blockquote,table,.code-example{margin-bottom:1.1em}code,td code{white-space:nowrap;padding:2px 8px}pre code{white-space:pre}h2{font-weight:600}h3,h4,h2 time{font-weight:normal}code,a > code{background-color:#f8f3f0}code{color:#2f2625}textarea{position:absolute;left:-99999px}.code-example{background-color:#2f2625;padding:1em;border-radius:0.3em;margin-bottom:1em}.javascript-output-column{border-left:1px solid rgba(255,255,255,0.2)}.btn-primary{background-color:#69f0ae;color:#0b140f;border-color:#53d88f;transition:0.2s ease-in-out;min-width:3.125rem}.btn-primary:active,.btn-primary:focus,.btn-primary:hover,.btn-primary:active:hover,.btn-primary:active:focus{background-color:#61fea8;color:#060a08;border-color:#4de486;outline:0}.try-phug{position:fixed;top:50px;bottom:0;left:0;right:0;opacity:0;transition:opacity 0.15s ease-in-out;pointer-events:none;z-index:9999;background:rgba(49,68,86,0.7)}.try-phug.opened{pointer-events:all;opacity:1}.try-phug iframe{width:100%;height:calc(100% - 10px);border:none}.try-phug.show{opacity:1;z-index:1001}/* http://prismjs.com/download.html?themes=prism-solarizedlight&languages=markup+css+clike+javascript+php+php-extras+pug+yaml *//*
 Solarized Color Schemes originally by Ethan Schoonover
 http://ethanschoonover.com/solarized

 Ported for PrismJS by Hector Matos
 Website: https://krakendev.io
 Twitter Handle: https://twitter.com/allonsykraken)
*/code[class*="language-"],pre[class*="language-"]{color:#657b83;font-family:Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*="language-"]::-moz-selection,pre[class*="language-"] ::-moz-selection,code[class*="language-"]::-moz-selection,code[class*="language-"] ::-moz-selection{background:#073642}pre[class*="language-"]::selection,pre[class*="language-"] ::selection,code[class*="language-"]::selection,code[class*="language-"] ::selection{background:#073642}pre[class*="language-"]{padding:12px;margin:0 0 20px;overflow:auto;border-radius:3px}:not(pre) > code[class*="language-"],pre[class*="language-"]{background-color:#ffffff;border:1px solid #c0c0c0}:not(pre) > code[class*="language-"]{padding:12px;border-radius:3px}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:#93a1a1}.token.punctuation{color:#586e75}.namespace{opacity:.7}.token.property,.token.tag,.token.boolean,.token.number,.token.constant,.token.symbol,.token.deleted{color:#268bd2}.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.url,.token.inserted{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.function{color:#b58900}.token.regex,.token.important,.token.variable{color:#cb4b16}.token.important,.token.bold{font-weight:bold}.token.italic{font-style:italic}.token.entity{cursor:help}