*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;line-height:25px}html,body{color:rgba(255,255,255,0.81);margin:0;padding:0;background-color:#12151a}html{font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,"Apple Color Emoji",Arial,sans-serif,"Segoe UI Emoji","Segoe UI Symbol";font-size:14px;overflow-y:scroll}@media (min-width: 600px){html{font-size:16px}}body{-webkit-text-size-adjust:100%}h1,h2,h3,h4,h5,h6{color:rgba(255,255,255,0.81);font-family:"Helvetica Neue","Segoe UI",Helvetica,Arial,sans-serif;line-height:normal;margin-bottom:0.9rem;margin-top:1.5rem;word-break:keep-all}h1{margin-top:3.5rem;color:rgba(255,255,255,0.81)}h2{margin-top:3.5rem;color:rgba(98,191,255,0.7)}h3{margin-top:2rem}a{color:#4a9ae1;text-decoration:none}blockquote{border-left:0.25rem solid bisque;color:bisque;margin:0.8rem 0 1.5rem;padding:0.5rem 1rem;font-style:italic}blockquote p:last-child{margin-bottom:0}@media (min-width: 600px){blockquote{padding:0 5rem 0 1.25rem}}img{display:block;margin:0 0 1rem;max-width:100%;padding-bottom:0.5rem}@media (max-width: 630px){img{max-width:100%}}td{vertical-align:top}hr{border:none;border-bottom:1px solid rgba(255,255,255,0.07);margin-bottom:1.2rem}pre,code{font-family:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,Courier,monospace}code{background-color:#3f4447;border-radius:3px;color:#ed9d13;font-size:85%;padding:.25em .5em}code span{line-height:1.5}pre{margin:0 0 1rem}pre code{background-color:transparent;color:inherit;font-size:85%;padding:0;line-height:normal}.highlight{position:relative;background-color:rgba(255,255,255,0.03);border-radius:3px;line-height:normal;margin:0 0 1rem;padding:1rem}.highlight pre{margin-bottom:0;overflow-x:auto}.highlight .lineno{color:#aaa;display:inline-block;padding:0 .75rem 0 .25rem;-webkit-user-select:none;-moz-user-select:none;user-select:none}.post{position:relative;padding:2rem 0}.post-info{color:#aaa;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,"Apple Color Emoji",Arial,sans-serif,"Segoe UI Emoji","Segoe UI Symbol";letter-spacing:0.5px;text-align:right;font-size:0.8rem}.post-info span{font-style:italic}.post-info .category-tags{display:inline-block;margin:0;text-align:right}.post-info .category-tags a{background-color:#1c2671;border-radius:3px;font-family:Ubuntu;color:rgba(255,255,255,0.9);font-weight:600;font-size:85%;padding:0.25em 0.5em;margin-right:0.4rem;text-decoration:none !important}.post-info .category-tags a:hover,.post-info .category-tags a:focus{background-color:#4a9ae1}.post-title{color:rgba(255,255,255,0.81);font-family:"Helvetica Neue","Segoe UI",Helvetica,Arial,sans-serif;font-size:2.5rem;margin:1rem 0 2rem;word-break:keep-all}.post-tags{text-align:left;margin-bottom:2rem}.post-tags a{background-color:#1c2671;border-radius:3px;font-family:Ubuntu;color:rgba(255,255,255,0.81);font-weight:600;font-size:85%;padding:0.25em 0.5em;display:inline-block;margin-top:0.25rem}.post-tags a:hover,.post-tags a:focus{background-color:#4a9ae1}.post-line{border-top:0.4rem solid rgba(255,255,255,0.81);display:block;margin:0 auto 3rem;width:0}.post .callout{display:flex;padding:16px 16px 16px 12px;border-radius:3px;border-width:1px;border-style:solid;border-color:transparent;background:rgba(69,75,78,0.3)}.post .callout .emoji{display:block;margin-right:10px;width:1.2rem;height:1.2rem;margin-top:5px}.post .callout p{line-height:2;margin:0}.post p{margin:0 0 1rem;word-break:keep-all}.post ul,.post ol{padding-left:1.8rem;word-break:keep-all}.post li{padding-bottom:0.4rem}.post a:hover{text-decoration:underline}.post img{margin:1rem auto 0.5rem;border-radius:4px}.post .img-l{width:100%}.post .img-m{width:550px}.post .img-s{width:350px}.post .img-200x200{width:200px}.post img+em{color:#aaa;display:block;font-family:"Helvetica Neue","Segoe UI",Helvetica,Arial,sans-serif;font-size:0.9rem;font-style:normal;text-align:center}.post img.emoji{display:inline-block;left:0;transform:none;padding:0;margin:0;border-radius:0;margin-top:4px;width:1rem;height:1rem}.post table{width:100%;border-collapse:collapse}.post table th,.post table td{border:1px solid #555;padding:8px;text-align:left;font-size:small}.post table thead th{background-color:#0b0b0b;border-bottom:double #555}.post table tr:nth-child(odd){background-color:#12151a}.post table tr:nth-child(even){background-color:#2c2c2c}.post .yellow{color:#ffdc49;font-weight:500}.post .orange{color:#ed9d13;font-weight:500}.post .img-caption{display:block;width:100%;text-align:center;background-color:unset;margin-top:-15px;color:#979797}.post .img-caption-a{display:block;width:100%;font-size:85%;text-align:center;background-color:unset;margin-top:-15px;color:#4a9ae1}.post .youtube{display:flex;justify-content:center;margin:10px}.post .left-right{display:flex}.post .left-right .book{width:30%;margin:1rem 3.5rem 0 0.5rem}.post .left-right ul{list-style-type:disclosure-closed}.post .img-container{display:flex;gap:1rem;margin-bottom:0.5rem}.post .img-container .left-3{max-width:30%;flex:3;height:auto}.post .img-container .left-7{max-width:70%;flex:7;height:auto}.post .img-container .right-3{max-width:30%;flex:3;height:auto}.post .img-container .right-7{max-width:70%;flex:7;height:auto}.post div.highlight>.button-copy-code{position:absolute;z-index:1;right:5px;top:5px;border:0;background:unset;color:aliceblue}.post div.highlight>.button-copy-code:hover{background-color:#3f4447;border-radius:2px}.post div.highlight>.button-copy-code:focus{color:#148a25 !important;background:unset}.post .mermaid.center{text-align:center}@media (max-width: 800px){.left-right{display:flex;flex-direction:column}.left-right .book{width:40% !important;align-self:center;margin:1rem 0 0.5rem !important}.img-container{display:block}}@media (min-width: 1200px){.post-toc{position:fixed;width:200px;right:calc((100% - 800px) / 2 - 240px);top:30px;font-size:12px}.post-toc h2{color:rgba(255,255,255,0.81)}.post-toc ul{list-style-type:none;padding:10px;border-radius:4px;background-color:#212830}.post-toc a{color:rgba(255,255,255,0.81)}.post-toc a.active{font-weight:bold;transition:all 0.125s ease-in 0s;font-size:0.75rem;color:#ed9d13}}@media (max-width: 1200px){.post-toc{display:none}}/*! Github Dark (Native mod) theme; http://blog.favrik.com/2011/02/22/preview-all-pygments-styles-for-your-code-highlighting-needs/#stylesheetNavigator */.highlight,.highlight pre,.highlight table{background:#111 !important;color:#d0d0d0 !important}.highlight .hll{background-color:#404040 !important}.highlight .c{color:#3677a9 !important}.highlight .err{color:#a61717 !important;background-color:#311 !important}.highlight .g{color:#d0d0d0 !important}.highlight .k{color:#ccc !important}.highlight .l{color:#d0d0d0 !important}.highlight .n,.highlight .h{color:#ccc !important}.highlight .o{color:#777 !important}.highlight .x{color:#d0d0d0 !important}.highlight .p{color:#E9B96E !important}.highlight .cm{color:#3677a9 !important}.highlight .cp{color:#D2691E !important}.highlight .c1{color:#3677a9 !important}.highlight .cs{color:#e50808 !important;background-color:#520000 !important}.highlight .gd{color:#d22323 !important}.highlight .ge{color:#d0d0d0 !important}.highlight .gr{color:#d22323 !important}.highlight .gh{color:#ffffff !important}.highlight .gi{color:#589819 !important}.highlight .go{color:#cccccc !important}.highlight .gp{color:#aaaaaa !important}.highlight .gs{color:#d0d0d0 !important}.highlight .gu{color:#ffffff !important}.highlight .gt{color:#d22323 !important}.highlight .kc{color:#6ab825 !important}.highlight .kd{color:#6ab825 !important}.highlight .kn{color:#6ab825 !important}.highlight .kp{color:#6ab825 !important}.highlight .kr{color:#6ab825 !important}.highlight .kt{color:#6ab825 !important}.highlight .ld{color:#d0d0d0 !important}.highlight .m{color:#cd2828 !important}.highlight .s{color:#D2691E !important}.highlight .na{color:#bbbbbb !important}.highlight .nb{color:#24909d !important}.highlight .nc{color:#447fcf !important}.highlight .no{color:#4ca !important}.highlight .nd{color:#ffa500 !important}.highlight .ni{color:#d0d0d0 !important}.highlight .ne{color:#bbbbbb !important}.highlight .nf{color:#098 !important}.highlight .nl{color:#d0d0d0 !important}.highlight .nn{color:#447fcf !important}.highlight .nx{color:#d0d0d0 !important}.highlight .py{color:#d0d0d0 !important}.highlight .nt{color:#6ab825 !important}.highlight .nv{color:#4ca !important}.highlight .ow{color:#6ab825 !important}.highlight .w{color:#666666 !important}.highlight .mf{color:#cd2828 !important}.highlight .mh{color:#cd2828 !important}.highlight .mi{color:#cd2828 !important}.highlight .mo{color:#cd2828 !important}.highlight .sb{color:#D2691E !important}.highlight .sc{color:#D2691E !important}.highlight .sd{color:#D2691E !important}.highlight .s2{color:#D2691E !important}.highlight .se{color:#D2691E !important}.highlight .sh{color:#D2691E !important}.highlight .si{color:#D2691E !important}.highlight .sx{color:#ffa500 !important}.highlight .sr{color:#cd2828 !important}.highlight .s1{color:#D2691E !important}.highlight .ss{color:#D2691E !important}.highlight .bp{color:#24909d !important}.highlight .vc{color:#4ca !important}.highlight .vg{color:#4ca !important}.highlight .vi{color:#4ca !important}.highlight .il{color:#cd2828 !important}.file-name{margin-bottom:-0.5rem;padding:0.5em 1em;background-color:#111;color:rgba(255,255,255,0.81);border-radius:8px 8px 0 0;display:inline-block;font-size:85%}.container{margin:0 auto;max-width:800px;width:80%}main,footer,.nav-container{display:block;margin:0 auto;max-width:708px;width:80%}.nav{box-shadow:0 2px 2px -2px rgba(0,0,0,0.02);overflow:auto;background-color:#1c2671;position:sticky;top:0;z-index:9999}.nav-container{margin:0.5rem auto;position:relative;text-align:center}.nav-title{-webkit-transition:all 0.2s ease-out;-moz-transition:all 0.2s ease-out;transition:all 0.2s ease-out;color:rgba(255,255,255,0.81);display:inline-block;margin:0;padding-right:.2rem;font-family:Ubuntu}.nav-title:hover,.nav-title:focus{opacity:.6}.nav ul{list-style-type:none;margin:1rem 0 0;padding:0;text-align:center}.nav li{-webkit-transition:all 0.2s ease-out;-moz-transition:all 0.2s ease-out;transition:all 0.2s ease-out;color:rgba(255,255,255,0.81);font-family:Ubuntu;display:inline-block;opacity:.9;padding:0 2rem 0 0}.nav li:last-child{padding-right:0}.nav li:hover,.nav li:focus{opacity:0.6}.nav a{color:rgba(255,255,255,0.81);font-family:"Helvetica Neue","Segoe UI",Helvetica,Arial,sans-serif}@media (max-width: 600px){.nav h2{display:none}.catalogue-container a .img-container,.catalogue-container a .img-book-container{display:none}.catalogue-tags{justify-content:space-between !important}.catalogue-tags .small-tag{display:unset !important}}@media (min-width: 600px){.nav-container{text-align:left}.nav ul{bottom:0;position:absolute;right:0}}@media (max-width: 600px){.nav ul{position:relative}}footer{font-family:Ubuntu;padding:2rem 0;text-align:center}footer span{color:rgba(255,255,255,0.81);font-size:.8rem}.pagination{border-top:0.5px solid #212830;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,"Apple Color Emoji",Arial,sans-serif,"Segoe UI Emoji","Segoe UI Symbol";padding-top:2rem;position:relative;text-align:center}.pagination span{color:rgba(255,255,255,0.81);font-size:1.1rem}.pagination .top{-webkit-transition:all 0.3s ease-out;-moz-transition:all 0.3s ease-out;transition:all 0.3s ease-out;color:rgba(255,255,255,0.81);font-family:"Helvetica Neue","Segoe UI",Helvetica,Arial,sans-serif;font-size:1.1rem;opacity:.6}.pagination .top:hover{opacity:1;color:#4a9ae1}.pagination .arrow{-webkit-transition:all 0.3s ease-out;-moz-transition:all 0.3s ease-out;transition:all 0.3s ease-out;color:rgba(255,255,255,0.81);position:absolute}.pagination .arrow:hover,.pagination .arrow:focus{opacity:.6;text-decoration:none;color:#4a9ae1}.pagination .left{left:0}.pagination .right{right:0}.catalogue{padding-top:3rem}.catalogue-tags{margin-top:1rem;margin-bottom:0.5rem;display:flex;flex-direction:row;justify-content:right}.catalogue-tags .small-tag{display:none;font-size:12px;background:#1c2671;border-radius:5px;padding:0.2px 4px 0 4px;min-width:30px;text-align:center}.catalogue-tags .small-tag a{color:rgba(255,255,255,0.81);font-weight:500}.catalogue-item{border-bottom:1px solid #212830;color:rgba(255,255,255,0.81);display:block;padding:0 0 2rem 0}.catalogue-item:hover .catalogue-line,.catalogue-item:focus .catalogue-line{width:5rem}.catalogue-item:last-child{border:0}.catalogue-item:hover .catalogue-title{color:#4a9ae1}.catalogue-item .emoji{display:none}.catalogue-time{color:#aaa;font-family:Ubuntu;letter-spacing:0.5px;font-size:12px}.catalogue-title{color:rgba(255,255,255,0.81);display:block;font-family:"Helvetica Neue","Segoe UI",Helvetica,Arial,sans-serif;font-size:1.8rem;font-weight:700;margin:0.5rem 0}.catalogue-line{-webkit-transition:all 0.3s ease-out;-moz-transition:all 0.3s ease-out;transition:all 0.3s ease-out;border-top:0.2rem solid rgba(255,255,255,0.81);display:block;width:2rem}.catalogue-subtitle{font-size:0.9rem;color:#aaa}.catalogue-container{display:flex}.catalogue-container .img-container,.catalogue-container .img-book-container{display:inline-block;height:100px;width:100px;margin:0 20px 0 0;border-radius:10px;background-color:transparent;overflow:hidden;cursor:pointer;text-align:center}.catalogue-container .img-container img,.catalogue-container .img-book-container img{display:inline-block;height:100%}.catalogue-container .img-book-container{background-color:#fff !important}.catalogue-container .img-container:hover,.catalogue-container .img-book-container:hover{box-shadow:0 0 10px rgba(255,255,255,0.6)}.notfound{position:relative;text-align:center;margin:4rem 0}.notfound-error{font-size:4rem;margin:1rem 0}.notfound-line{border-top:0.4rem solid rgba(255,255,255,0.81);display:block;margin:0 auto 3rem;width:4rem}.notfound-message{max-width:25rem;margin:0 auto}.notfound h1,.notfound h2{color:rgba(255,255,255,0.81)}.tags-header-title{color:rgba(255,255,255,0.81);font-family:"Helvetica Neue","Segoe UI",Helvetica,Arial,sans-serif;font-size:3rem;margin:1rem 0;text-align:center}.tags-header-line{border-top:0.4rem solid rgba(255,255,255,0.81);display:block;margin:0 auto 3rem;width:4rem}.tags-clouds{text-align:center;font-family:Ubuntu}.tags-clouds a{display:inline-block;margin:0 0.1rem 0.5rem;padding:0.2rem 0.5rem;background:#1c2671;border-radius:5px;color:rgba(255,255,255,0.81);text-decoration:none}.tags-clouds a:hover,.tags-clouds a:active{background:#4a9ae1}.tags-item-icon{height:1rem;color:#4a9ae1}.tags-item-label{display:inline-block;margin:2rem 0 0.5rem;font-family:"Helvetica Neue","Segoe UI",Helvetica,Arial,sans-serif;color:rgba(255,255,255,0.81)}.tags-post{display:flex;justify-content:space-between;padding:5px 0}.tags-post:hover .tags-post-title,.tags-post:target .tags-post-title{color:#4a9ae1}.tags-post-title{color:rgba(255,255,255,0.81);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tags-post-line{-webkit-transition:all 0.3s ease-out;-moz-transition:all 0.3s ease-out;transition:all 0.3s ease-out;border-top:0.1rem solid rgba(255,255,255,0.81);display:block;width:0}.tags-post-meta{color:#aaa;text-align:right;white-space:nowrap;font-size:0.7rem}.tags-post:hover .tags-post-line,.tags-post:active .tags-post-line{width:3rem}.tags-post:hover .tags-post-meta,.tags-post:active .tags-post-meta{color:rgba(255,255,255,0.81)}@media (max-width: 385px){.tags .tags-post-meta{display:none}}.small-wrapper{width:700px;max-width:90%;margin:0 auto}.about-container{margin:50px 0 50px}.about-header{position:relative;text-align:center;padding-bottom:30px;margin-bottom:30px}.about-header:after{content:"";position:absolute;bottom:0;left:50%;transform:translateX(-50%);display:block;height:1px;width:80px;background-color:rgba(255,255,255,0.81)}.about-header .author-image-container{width:140px;height:140px;border-radius:100%;overflow:hidden;margin:0 auto 30px}.about-header .author-image-container img{width:100%}.about-header .subtitle{color:rgba(255,255,255,0.81);font-family:Ubuntu;font-weight:300;margin:0}.about-body .contact-list{margin:0;padding:0;list-style:none;text-align:center}.about-body .contact-list li{display:inline-block;margin-left:10px}.about-body .contact-list li:first-child{margin-left:0}.about-body .contact-list li a{display:block;color:rgba(255,255,255,0.81);font-size:21px;text-decoration:none;padding:5px;transition:all 350ms cubic-bezier(0.13, 0.43, 0.54, 1.82)}.about-body .contact-list li a:hover{color:#4a9ae1;transform:scale(1.3)}#search-wrap{width:100%;padding-top:5rem}#search-wrap-input{width:100%;padding:.5em;font-size:1.7em;border:none;border-bottom:1px solid #555}#search-wrap-result{margin:0;padding:1em 0 2rem;list-style:none}#search-wrap-result li{display:flex;align-items:center}#search-wrap-result li a{color:rgba(255,255,255,0.81);width:100%;padding:10px;overflow:hidden}#search-wrap-result li span a{margin:0 0.1rem 0.2rem;padding:0.25rem 1.5rem;background:#1c2671;border-radius:5px;color:rgba(255,255,255,0.81);font-family:Ubuntu;font-weight:600;text-decoration:none}#search-wrap-result li span a:hover,#search-wrap-result li span a:active{background:#4a9ae1}@media (max-width: 485px){#search-wrap-result li .tags-post-meta{display:none}}
