/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace, monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft Yahei,Segoe UI,Helvetica,Arial,sans-serif,Segoe UI Emoji}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background-color:#87878d}::-webkit-scrollbar-thumb:hover{background-color:#a9a9b3}::selection{background:rgba(38,139,211,0.2)}.dark-theme ::selection{background:rgba(38,139,211,0.3)}body{font-size:16px;font-weight:400;line-height:1.5rem;background-color:#fff;color:#161209}body::before{content:"";background-repeat:no-repeat;background-position:center;opacity:0.05;position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;-webkit-filter:grayscale(100%);-moz-filter:grayscale(100%);-ms-filter:grayscale(100%);-o-filter:grayscale(100%);filter:grayscale(100%);filter:gray}body.dark-theme{color:#a9a9b3;background-color:#292a2d}a{color:#161209;text-decoration:none;transition:color 0.2s ease, border-color 0.2s ease, background 0.2s ease, opacity 0.2s ease}a:hover{color:#2d96bd}.dark-theme a{color:#a9a9b3}.dark-theme a:hover{color:#fff}.wrapper{display:flex;flex-direction:column;min-height:97.5vh;width:100%}.wrapper main{flex:1 0 auto}.wrapper main .container{padding-left:1rem;padding-right:1rem}.footer{height:2rem;width:100%;text-align:center;line-height:1.5rem;padding-top:2rem}.home-intro{transform:translateY(25vh);text-align:center}.home-intro .home-avatar{padding:0.6rem}.home-intro .home-avatar img{width:8rem;height:auto;display:inline-block;-webkit-border-radius:100%;border-radius:100%;-webkit-box-shadow:0 0 0 0.3618em rgba(0,0,0,0.05);box-shadow:0 0 0 0.3618em rgba(0,0,0,0.05);margin:0 auto;-webkit-transition:all ease 0.4s;-moz-transition:all ease 0.4s;-o-transition:all ease 0.4s;transition:all ease 0.4s;cursor:pointer}.home-intro .home-avatar img:hover{position:relative;-webkit-transform:translateY(-0.75rem);-moz-transform:translateY(-0.75rem);-ms-transform:translateY(-0.75rem);-o-transform:translateY(-0.75rem);transform:translateY(-0.75rem);cursor:pointer}.home-intro .home-description{font-size:1rem;font-weight:normal;margin:0;padding:.4rem}.home-intro .home-social-links{padding-top:.6rem}.home-intro .home-social-links i{font-size:1.45rem}.home-intro .home-social-links img{width:1.5rem;height:1.5rem}.notfound{font-size:1.8rem;line-height:3rem;transform:translateY(30vh);text-align:center}.page{position:relative;width:100%;max-width:980px;margin:0 auto;padding-top:6rem}.page .post-title{margin:0 !important;font-size:1.8rem;line-height:3rem}.page .post-meta{font-size:.88rem;color:#a9a9b3}.page .post-meta span{display:inline-block}.dark-theme .page .post-meta{color:#87878d}.page .post-meta a{color:#2d96bd}.dark-theme .page .post-meta a{color:#eee}.page .post-meta a:hover{color:#ef3982}.dark-theme .page .post-meta a:hover{color:#2d96bd}.page .post-meta .author{font-size:1.05rem}.page .post-featured-image{padding-top:.6rem}.page .post-featured-image img{display:block;max-width:100%;height:auto;margin:0 auto;overflow:hidden}.page .post-toc{display:block;position:absolute;width:360px;margin-left:1000px;padding:0 .8rem;border-left:1px solid #dcdcdc;word-wrap:break-word;box-sizing:border-box;top:12rem}.dark-theme .page .post-toc{border-left:1px solid #4a4b50}.page .post-toc .post-toc-title{font-weight:400;margin:.8rem 0;text-transform:uppercase}.page .post-toc .post-toc-content.always-active ul{display:block}.page .post-toc .post-toc-content>nav>ul{margin:.625rem 0}.page .post-toc .post-toc-content ul{text-indent:-0.85rem;padding-left:.625rem;list-style:none}.page .post-toc .post-toc-content ul a::before{content:"|";font-weight:bolder;margin-right:.5rem;color:#2d96bd}.dark-theme .page .post-toc .post-toc-content ul a::before{color:#eee}.page .post-toc .post-toc-content ul ul{padding-left:1.25rem;display:none}.page .post-toc .post-toc-content ul .has-active>ul{display:block}.page .post-toc .post-toc-content .toc-link.active{font-weight:bold;color:#ef3982}.dark-theme .page .post-toc .post-toc-content .toc-link.active{color:#2d96bd}.page .post-toc .post-toc-content .toc-link.active::before{font-weight:bolder;color:#ef3982}.dark-theme .page .post-toc .post-toc-content .toc-link.active::before{color:#2d96bd}.page .post-toc-mobile{display:none;padding-top:.8rem}.page .post-toc-mobile details summary .post-toc-title{display:block;display:flex;justify-content:space-between;font-size:1.2em;font-weight:bold;line-height:2em;padding:0 .625rem;background:#f5f5f5}.page .post-toc-mobile details summary .post-toc-title i.details{line-height:2em}.dark-theme .page .post-toc-mobile details summary .post-toc-title{background:#272C34}.page .post-toc-mobile details summary::-webkit-details-marker{display:none}.page .post-toc-mobile details[open] i.details{transform:rotate(180deg)}.page .post-toc-mobile .post-toc-content{border:2px solid #f5f5f5}.page .post-toc-mobile .post-toc-content>nav>ul{margin:.625rem 0}.page .post-toc-mobile .post-toc-content ul{padding-left:.625rem;list-style:none}.page .post-toc-mobile .post-toc-content ul ul{padding-left:1.25rem}.dark-theme .page .post-toc-mobile .post-toc-content{border:2px solid #272C34}.page .post-content .post-dummy-target:target{display:inline-block;position:relative;top:-5.6rem;visibility:hidden}.page .post-content h2,.page .post-content h3,.page .post-content h4,.page .post-content h5,.page .post-content h6{padding-top:.8rem;padding-bottom:.3rem}.page .post-content h2::before{content:"#";margin-right:.3125rem;color:#2d96bd}.dark-theme .page .post-content h2::before{color:#eee}.page .post-content h3::before,.page .post-content h4::before,.page .post-content h5::before,.page .post-content h6::before{content:"|";margin-right:.3125rem;color:#2d96bd}.dark-theme .page .post-content h3::before,.dark-theme .page .post-content h4::before,.dark-theme .page .post-content h5::before,.dark-theme .page .post-content h6::before{color:#eee}.page .post-content p{font-size:1rem;margin:.5rem 0 .5rem 0}.page .post-content a{color:#2d96bd}.dark-theme .page .post-content a{color:#eee}.page .post-content a:hover{color:#ef3982}.dark-theme .page .post-content a:hover:hover{color:#2d96bd;font-weight:bold}.page .post-content ul{padding-left:2rem}.page .post-content ruby{background:#f5f5f5}.page .post-content ruby rt{color:#a9a9b3}.dark-theme .page .post-content ruby{background:#272C34}.dark-theme .page .post-content ruby rt{color:#87878d}.page .post-content .table-wrapper{overflow-x:auto}.page .post-content .table-wrapper::-webkit-scrollbar{background-color:#fff}.dark-theme .page .post-content .table-wrapper::-webkit-scrollbar{background-color:#272c34}.page .post-content .table-wrapper>table{width:100%;max-width:100%;margin:.625rem 0;border-spacing:0;background:#fff}.dark-theme .page .post-content .table-wrapper>table{background:#272c34}.page .post-content .table-wrapper>table thead{background:#ededed}.dark-theme .page .post-content .table-wrapper>table thead{background-color:#20252b}.page .post-content .table-wrapper>table th,.page .post-content .table-wrapper>table td{padding:.3rem 1rem;border:1px double #dcdcdc}.dark-theme .page .post-content .table-wrapper>table th,.dark-theme .page .post-content .table-wrapper>table td{border:1px double #4a4b50}.page .post-content figure{text-align:center}.page .post-content .image-caption:not(:empty){min-width:20%;max-width:80%;display:inline-block;padding:.625rem;margin:0 auto;border-bottom:1px solid #d9d9d9;font-size:.875rem;color:#969696;line-height:1.7}.page .post-content img{display:block;max-width:100%;height:auto;margin:0 auto;overflow:hidden}.page .post-content blockquote{font-size:1rem;display:block;border-width:1px 0;border-style:solid;border-color:#dcdcdc;padding:1.5em 1.2em 0.5em 1.2em;margin:0 0 2em 0;position:relative}.page .post-content blockquote::before{content:'\201C';position:absolute;top:0em;left:50%;transform:translate(-50%, -50%);width:3rem;height:2rem;font:6em/1.08em 'PT Sans', sans-serif;color:#2d96bd;text-align:center}.dark-theme .page .post-content blockquote::before{color:#eee}.page .post-content blockquote::after{content:"#blockquote" attr(cite);display:block;text-align:right;font-size:0.875em;color:#2d96bd}.dark-theme .page .post-content blockquote::after{color:#eee}.dark-theme .page .post-content blockquote{border-color:#4a4b50}.page .post-content .footnotes{color:#a9a9b3}.dark-theme .page .post-content .footnotes{color:#87878d}.page .post-content code,.page .post-content pre{font-size:13px;font-family:Source Code Pro,Menlo,Consolas,Monaco,monospace;color:#E74C3C;padding:5px;background:#f5f5f5}.dark-theme .page .post-content code,.dark-theme .page .post-content pre{color:#E5BF78;background:#272C34}.page .post-content .highlight>pre.chroma{padding:38px 7px 8px;overflow-x:auto}.page .post-content .highlight>.chroma{margin:1em 0;position:relative;font-family:Source Code Pro,Menlo,Consolas,Monaco,monospace}.page .post-content .highlight>.chroma code{padding:0}.page .post-content .highlight>.chroma pre{margin:0;padding:38px 7px 8px;overflow-x:visible}.page .post-content .highlight>.chroma::after{position:absolute;top:0;right:0;left:0;padding:2px 7px;font-size:13px;font-weight:bold;color:#b1b0b0;background:#ededed;content:'Code'}.dark-theme .page .post-content .highlight>.chroma::after{color:#b1b0b0;background:#20252b}.page .post-content .highlight>.chroma.language-bash::after{content:"Bash"}.page .post-content .highlight>.chroma.language-c::after{content:"C"}.page .post-content .highlight>.chroma.language-cs::after{content:"C#"}.page .post-content .highlight>.chroma.language-cpp::after{content:"C++"}.page .post-content .highlight>.chroma.language-css::after{content:"CSS"}.page .post-content .highlight>.chroma.language-coffeescript::after{content:"CoffeeScript"}.page .post-content .highlight>.chroma.language-html::after{content:"HTML"}.page .post-content .highlight>.chroma.language-xml::after{content:"XML"}.page .post-content .highlight>.chroma.language-http::after{content:"HTTP"}.page .post-content .highlight>.chroma.language-json::after{content:"JSON"}.page .post-content .highlight>.chroma.language-java::after{content:"Java"}.page .post-content .highlight>.chroma.language-js::after{content:"JavaScript"}.page .post-content .highlight>.chroma.language-javascript::after{content:"JavaScript"}.page .post-content .highlight>.chroma.language-makefile::after{content:"Makefile"}.page .post-content .highlight>.chroma.language-markdown::after{content:"Markdown"}.page .post-content .highlight>.chroma.language-objectivec::after{content:"Objective-C"}.page .post-content .highlight>.chroma.language-php::after{content:"PHP"}.page .post-content .highlight>.chroma.language-perl::after{content:"Perl"}.page .post-content .highlight>.chroma.language-python::after{content:"Python"}.page .post-content .highlight>.chroma.language-ruby::after{content:"Ruby"}.page .post-content .highlight>.chroma.language-sql::after{content:"SQL"}.page .post-content .highlight>.chroma.language-shell::after{content:"Shell"}.page .post-content .highlight>.chroma.language-erlang::after{content:"Erlang"}.page .post-content .highlight>.chroma.language-go::after{content:"Go"}.page .post-content .highlight>.chroma.language-go-html-template::after{content:"Go HTML Template"}.page .post-content .highlight>.chroma.language-groovy::after{content:"Groovy"}.page .post-content .highlight>.chroma.language-haskell::after{content:"Haskell"}.page .post-content .highlight>.chroma.language-kotlin::after{content:"Kotlin"}.page .post-content .highlight>.chroma.language-clojure::after{content:"Clojure"}.page .post-content .highlight>.chroma.language-less::after{content:"Less"}.page .post-content .highlight>.chroma.language-lisp::after{content:"Lisp"}.page .post-content .highlight>.chroma.language-lua::after{content:"Lua"}.page .post-content .highlight>.chroma.language-matlab::after{content:"Matlab"}.page .post-content .highlight>.chroma.language-rust::after{content:"Rust"}.page .post-content .highlight>.chroma.language-scss::after{content:"Scss"}.page .post-content .highlight>.chroma.language-scala::after{content:"Scala"}.page .post-content .highlight>.chroma.language-swift::after{content:"Swift"}.page .post-content .highlight>.chroma.language-typescript::after{content:"TypeScript"}.page .post-content .highlight>.chroma.language-yml::after{content:"YAML"}.page .post-content .highlight>.chroma.language-yaml::after{content:"YAML"}.page .post-content .highlight>.chroma.language-toml::after{content:"TOML"}.page .post-content .highlight>.chroma.language-diff::after{content:"Diff"}.page .post-content .highlight>.chroma .lntd{line-height:20px}.page .post-content .highlight>.chroma .lntd:first-child{width:10px}.page .post-content .highlight>.chroma .lntd:last-child{vertical-align:top}.page .post-content .highlight>.chroma table,.page .post-content .highlight>.chroma tr,.page .post-content .highlight>.chroma td{margin:0;padding:0;width:100%;border-collapse:collapse;border-color:#f5f5f5}.dark-theme .page .post-content .highlight>.chroma table,.dark-theme .page .post-content .highlight>.chroma tr,.dark-theme .page .post-content .highlight>.chroma td{border-color:#272C34}.page .post-content .highlight>.chroma .lnt{color:#b1b0b0}.page .post-content .highlight>.chroma .hl{display:block;background-color:#e8e8e8}.dark-theme .page .post-content .highlight>.chroma .hl{background-color:#1c2025}.page .post-content .highlight .p{color:#A9A9B3}.page .post-content .highlight .k{color:#859900}.page .post-content .highlight .kc{color:#859900;font-weight:bold}.page .post-content .highlight .kd{color:#859900}.page .post-content .highlight .kn{color:#dc322f;font-weight:bold}.page .post-content .highlight .kp{color:#859900}.page .post-content .highlight .kr{color:#859900}.page .post-content .highlight .kt{color:#859900;font-weight:bold}.page .post-content .highlight .n{color:#268bd2}.page .post-content .highlight .na{color:#268bd2}.page .post-content .highlight .nb{color:#cb4b16}.page .post-content .highlight .bp{color:#268bd2}.page .post-content .highlight .nc{color:#cb4b16}.page .post-content .highlight .no{color:#268bd2}.page .post-content .highlight .nd{color:#268bd2}.page .post-content .highlight .ni{color:#268bd2}.page .post-content .highlight .ne{color:#268bd2}.page .post-content .highlight .nf{color:#268bd2}.page .post-content .highlight .fm{color:#268bd2}.page .post-content .highlight .nl{color:#268bd2}.page .post-content .highlight .nn{color:#268bd2}.page .post-content .highlight .nx{color:#268bd2}.page .post-content .highlight .py{color:#268bd2}.page .post-content .highlight .nt{color:#268bd2;font-weight:bold}.page .post-content .highlight .nv{color:#268bd2}.page .post-content .highlight .vc{color:#268bd2}.page .post-content .highlight .vg{color:#268bd2}.page .post-content .highlight .vi{color:#268bd2}.page .post-content .highlight .vm{color:#268bd2}.page .post-content .highlight .l{color:#2aa198}.page .post-content .highlight .ld{color:#2aa198}.page .post-content .highlight .s{color:#2aa198}.page .post-content .highlight .sa{color:#2aa198}.page .post-content .highlight .sb{color:#2aa198}.page .post-content .highlight .sc{color:#2aa198}.page .post-content .highlight .dl{color:#2aa198}.page .post-content .highlight .sd{color:#2aa198}.page .post-content .highlight .s2{color:#2aa198}.page .post-content .highlight .se{color:#2aa198}.page .post-content .highlight .sh{color:#2aa198}.page .post-content .highlight .si{color:#2aa198}.page .post-content .highlight .sx{color:#2aa198}.page .post-content .highlight .sr{color:#2aa198}.page .post-content .highlight .s1{color:#2aa198}.page .post-content .highlight .ss{color:#2aa198}.page .post-content .highlight .m{color:#2aa198;font-weight:bold}.page .post-content .highlight .mb{color:#2aa198;font-weight:bold}.page .post-content .highlight .mf{color:#2aa198;font-weight:bold}.page .post-content .highlight .mh{color:#2aa198;font-weight:bold}.page .post-content .highlight .mi{color:#2aa198;font-weight:bold}.page .post-content .highlight .il{color:#2aa198;font-weight:bold}.page .post-content .highlight .mo{color:#2aa198;font-weight:bold}.page .post-content .highlight .ow{color:#859900}.page .post-content .highlight .c{color:#93a1a1;font-style:italic}.page .post-content .highlight .ch{color:#93a1a1;font-style:italic}.page .post-content .highlight .cm{color:#93a1a1;font-style:italic}.page .post-content .highlight .c1{color:#93a1a1;font-style:italic}.page .post-content .highlight .cs{color:#93a1a1;font-style:italic}.page .post-content .highlight .cp{color:#93a1a1;font-style:italic}.page .post-content .highlight .cpf{color:#93a1a1;font-style:italic}.page .post-content .highlight .g{color:#d33682}.page .post-content .highlight .gd{color:#b58900}.page .post-content .highlight .ge{color:#d33682}.page .post-content .highlight .gr{color:#d33682}.page .post-content .highlight .gh{color:#d33682}.page .post-content .highlight .gi{color:#859900}.page .post-content .highlight .go{color:#d33682}.page .post-content .highlight .gp{color:#d33682}.page .post-content .highlight .gs{color:#d33682}.page .post-content .highlight .gu{color:#d33682}.page .post-content .highlight .gt{color:#d33682}.dark-theme .page .post-content .highlight{background:#272C34}.dark-theme .page .post-content .highlight .p{color:#A9A9B3}.dark-theme .page .post-content .highlight .k{color:#D371E3}.dark-theme .page .post-content .highlight .kc{color:#D371E3}.dark-theme .page .post-content .highlight .kd{color:#D371E3}.dark-theme .page .post-content .highlight .kn{color:#D371E3}.dark-theme .page .post-content .highlight .kp{color:#D371E3}.dark-theme .page .post-content .highlight .kr{color:#D371E3}.dark-theme .page .post-content .highlight .kt{color:#8be9fd}.dark-theme .page .post-content .highlight .na{color:#41B1F5}.dark-theme .page .post-content .highlight .nb{color:#8be9fd;font-style:italic}.dark-theme .page .post-content .highlight .nc{color:#E5BF78}.dark-theme .page .post-content .highlight .nf{color:#19B8C0}.dark-theme .page .post-content .highlight .nx{color:#F16473}.dark-theme .page .post-content .highlight .nl{color:#8be9fd;font-style:italic}.dark-theme .page .post-content .highlight .nt{color:#D371E3}.dark-theme .page .post-content .highlight .nv{color:#8be9fd;font-style:italic}.dark-theme .page .post-content .highlight .vc{color:#8be9fd;font-style:italic}.dark-theme .page .post-content .highlight .vg{color:#8be9fd;font-style:italic}.dark-theme .page .post-content .highlight .vi{color:#8be9fd;font-style:italic}.dark-theme .page .post-content .highlight .s{color:#8BC56F}.dark-theme .page .post-content .highlight .sa{color:#8BC56F}.dark-theme .page .post-content .highlight .sb{color:#8BC56F}.dark-theme .page .post-content .highlight .sc{color:#8BC56F}.dark-theme .page .post-content .highlight .dl{color:#8BC56F}.dark-theme .page .post-content .highlight .sd{color:#8BC56F}.dark-theme .page .post-content .highlight .s2{color:#8BC56F}.dark-theme .page .post-content .highlight .se{color:#8BC56F}.dark-theme .page .post-content .highlight .sh{color:#8BC56F}.dark-theme .page .post-content .highlight .si{color:#8BC56F}.dark-theme .page .post-content .highlight .sx{color:#8BC56F}.dark-theme .page .post-content .highlight .sr{color:#8BC56F}.dark-theme .page .post-content .highlight .s1{color:#8BC56F}.dark-theme .page .post-content .highlight .ss{color:#8BC56F}.dark-theme .page .post-content .highlight .m{color:#bd93f9}.dark-theme .page .post-content .highlight .mb{color:#bd93f9}.dark-theme .page .post-content .highlight .mf{color:#bd93f9}.dark-theme .page .post-content .highlight .mh{color:#bd93f9}.dark-theme .page .post-content .highlight .mi{color:#bd93f9}.dark-theme .page .post-content .highlight .il{color:#bd93f9}.dark-theme .page .post-content .highlight .mo{color:#bd93f9}.dark-theme .page .post-content .highlight .o{color:#D371E3}.dark-theme .page .post-content .highlight .ow{color:#D371E3}.dark-theme .page .post-content .highlight .c{color:#7E848F}.dark-theme .page .post-content .highlight .ch{color:#7E848F}.dark-theme .page .post-content .highlight .cm{color:#7E848F}.dark-theme .page .post-content .highlight .c1{color:#7E848F}.dark-theme .page .post-content .highlight .cs{color:#7E848F}.dark-theme .page .post-content .highlight .cp{color:#D371E3}.dark-theme .page .post-content .highlight .cpf{color:#D371E3}.dark-theme .page .post-content .highlight .gd{color:#8b080b}.dark-theme .page .post-content .highlight .ge{text-decoration:underline}.dark-theme .page .post-content .highlight .gh{font-weight:bold}.dark-theme .page .post-content .highlight .gi{font-weight:bold}.dark-theme .page .post-content .highlight .go{color:#44475a}.dark-theme .page .post-content .highlight .gu{font-weight:bold}.dark-theme .page .post-content .highlight .gl{text-decoration:underline}.page .post-content .admonition{position:relative;margin:.9765em 0;padding:0 .75rem;background-color:rgba(68,138,255,0.1);border-left:0.25rem solid #448aff;overflow:auto}.page .post-content .admonition .admonition-title{margin:0 -0.75rem;padding:.5rem .75rem .5rem 2.5rem;border-bottom:0.1rem solid rgba(68,138,255,0.1);background-color:rgba(68,138,255,0.1);font-weight:700}.page .post-content .admonition i.icon{font-size:16px;color:#448aff;cursor:auto;position:absolute;left:.75rem;top:.75rem}.page .post-content .admonition.note{border-left-color:#448aff}.page .post-content .admonition.note i.icon{color:#448aff}.page .post-content .admonition.abstract{border-left-color:#00b0ff}.page .post-content .admonition.abstract i.icon{color:#00b0ff}.page .post-content .admonition.info{border-left-color:#00b8d4}.page .post-content .admonition.info i.icon{color:#00b8d4}.page .post-content .admonition.tip{border-left-color:#00bfa5}.page .post-content .admonition.tip i.icon{color:#00bfa5}.page .post-content .admonition.success{border-left-color:#00c853}.page .post-content .admonition.success i.icon{color:#00c853}.page .post-content .admonition.question{border-left-color:#64dd17}.page .post-content .admonition.question i.icon{color:#64dd17}.page .post-content .admonition.warning{border-left-color:#ff9100}.page .post-content .admonition.warning i.icon{color:#ff9100}.page .post-content .admonition.failure{border-left-color:#ff5252}.page .post-content .admonition.failure i.icon{color:#ff5252}.page .post-content .admonition.danger{border-left-color:#ff1744}.page .post-content .admonition.danger i.icon{color:#ff1744}.page .post-content .admonition.bug{border-left-color:#f50057}.page .post-content .admonition.bug i.icon{color:#f50057}.page .post-content .admonition.example{border-left-color:#651fff}.page .post-content .admonition.example i.icon{color:#651fff}.page .post-content .admonition.quote{border-left-color:#9e9e9e}.page .post-content .admonition.quote i.icon{color:#9e9e9e}.page .post-content .admonition.note{background-color:rgba(68,138,255,0.1)}.page .post-content .admonition.note .admonition-title{border-bottom-color:rgba(68,138,255,0.1);background-color:rgba(68,138,255,0.1)}.page .post-content .admonition.abstract{background-color:rgba(0,176,255,0.1)}.page .post-content .admonition.abstract .admonition-title{border-bottom-color:rgba(0,176,255,0.1);background-color:rgba(0,176,255,0.1)}.page .post-content .admonition.info{background-color:rgba(0,184,212,0.1)}.page .post-content .admonition.info .admonition-title{border-bottom-color:rgba(0,184,212,0.1);background-color:rgba(0,184,212,0.1)}.page .post-content .admonition.tip{background-color:rgba(0,191,165,0.1)}.page .post-content .admonition.tip .admonition-title{border-bottom-color:rgba(0,191,165,0.1);background-color:rgba(0,191,165,0.1)}.page .post-content .admonition.success{background-color:rgba(0,200,83,0.1)}.page .post-content .admonition.success .admonition-title{border-bottom-color:rgba(0,200,83,0.1);background-color:rgba(0,200,83,0.1)}.page .post-content .admonition.question{background-color:rgba(100,221,23,0.1)}.page .post-content .admonition.question .admonition-title{border-bottom-color:rgba(100,221,23,0.1);background-color:rgba(100,221,23,0.1)}.page .post-content .admonition.warning{background-color:rgba(255,145,0,0.1)}.page .post-content .admonition.warning .admonition-title{border-bottom-color:rgba(255,145,0,0.1);background-color:rgba(255,145,0,0.1)}.page .post-content .admonition.failure{background-color:rgba(255,82,82,0.1)}.page .post-content .admonition.failure .admonition-title{border-bottom-color:rgba(255,82,82,0.1);background-color:rgba(255,82,82,0.1)}.page .post-content .admonition.danger{background-color:rgba(255,23,68,0.1)}.page .post-content .admonition.danger .admonition-title{border-bottom-color:rgba(255,23,68,0.1);background-color:rgba(255,23,68,0.1)}.page .post-content .admonition.bug{background-color:rgba(245,0,87,0.1)}.page .post-content .admonition.bug .admonition-title{border-bottom-color:rgba(245,0,87,0.1);background-color:rgba(245,0,87,0.1)}.page .post-content .admonition.example{background-color:rgba(101,31,255,0.1)}.page .post-content .admonition.example .admonition-title{border-bottom-color:rgba(101,31,255,0.1);background-color:rgba(101,31,255,0.1)}.page .post-content .admonition.quote{background-color:rgba(158,158,158,0.1)}.page .post-content .admonition.quote .admonition-title{border-bottom-color:rgba(158,158,158,0.1);background-color:rgba(158,158,158,0.1)}.page .post-content .admonition:last-child{margin-bottom:.75rem}.page .post-content details.admonition summary{display:block;outline:none;cursor:pointer}.page .post-content details.admonition summary::-webkit-details-marker{display:none}.page .post-content details.admonition summary i.details{position:absolute;top:.75rem;right:.75rem;color:#161209}.dark-theme .page .post-content details.admonition summary i.details{color:#a9a9b3}.page .post-content details.admonition[open] i.details{transform:rotate(180deg)}.page .post-content .mermaid{width:100%;margin:3% auto;text-align:center}.page .post-content .mermaid .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);color:#333}.page .post-content .mermaid .label text{fill:#333}.page .post-content .mermaid .node rect,.page .post-content .mermaid .node circle,.page .post-content .mermaid .node ellipse,.page .post-content .mermaid .node polygon{fill:#eee;stroke:#999;stroke-width:1px}.page .post-content .mermaid .node .label{text-align:center}.page .post-content .mermaid .node.clickable{cursor:pointer}.page .post-content .mermaid .arrowheadPath{fill:#333}.page .post-content .mermaid .edgePath .path{stroke:#666;stroke-width:1.5px}.page .post-content .mermaid .edgeLabel{background-color:#fff;text-align:center}.page .post-content .mermaid .cluster rect{fill:#eaf2fb;stroke:#26a;stroke-width:1px}.page .post-content .mermaid .cluster text{fill:#333}.page .post-content .mermaid div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:12px;background:#eaf2fb;border:1px solid #26a;border-radius:2px;pointer-events:none;z-index:100}.page .post-content .mermaid .actor{stroke:#999;fill:#eee}.page .post-content .mermaid text.actor{fill:#333;stroke:none}.page .post-content .mermaid .actor-line{stroke:#666}.page .post-content .mermaid .messageLine0{stroke-width:1.5;stroke-dasharray:'2 2';stroke:#333}.page .post-content .mermaid .messageLine1{stroke-width:1.5;stroke-dasharray:'2 2';stroke:#333}.page .post-content .mermaid #arrowhead{fill:#333}.page .post-content .mermaid .sequenceNumber{fill:#fff}.page .post-content .mermaid #sequencenumber{fill:#333}.page .post-content .mermaid #crosshead path{fill:#333 !important;stroke:#333 !important}.page .post-content .mermaid .messageText{fill:#333;stroke:none}.page .post-content .mermaid .labelBox{stroke:#999;fill:#eee}.page .post-content .mermaid .labelText{fill:#333;stroke:none}.page .post-content .mermaid .loopText{fill:#333;stroke:none}.page .post-content .mermaid .loopLine{stroke-width:2;stroke-dasharray:'2 2';stroke:#999}.page .post-content .mermaid .note{stroke:#770;fill:#ffa}.page .post-content .mermaid .noteText{fill:black;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:14px}.page .post-content .mermaid .activation0{fill:#f4f4f4;stroke:#666}.page .post-content .mermaid .activation1{fill:#f4f4f4;stroke:#666}.page .post-content .mermaid .activation2{fill:#f4f4f4;stroke:#666}.page .post-content .mermaid .mermaid-main-font{font-family:"trebuchet ms", verdana, arial;font-family:var(--mermaid-font-family)}.page .post-content .mermaid .section{stroke:none;opacity:0.2}.page .post-content .mermaid .section0{fill:#80b3e6}.page .post-content .mermaid .section2{fill:#80b3e6}.page .post-content .mermaid .section1,.page .post-content .mermaid .section3{fill:#fff;opacity:0.2}.page .post-content .mermaid .sectionTitle0{fill:#333}.page .post-content .mermaid .sectionTitle1{fill:#333}.page .post-content .mermaid .sectionTitle2{fill:#333}.page .post-content .mermaid .sectionTitle3{fill:#333}.page .post-content .mermaid .sectionTitle{text-anchor:start;font-size:11px;text-height:14px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.page .post-content .mermaid .grid .tick{stroke:#e6e5e5;opacity:0.3;shape-rendering:crispEdges}.page .post-content .mermaid .grid .tick text{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.page .post-content .mermaid .grid path{stroke-width:0}.page .post-content .mermaid .today{fill:none;stroke:#d42;stroke-width:2px}.page .post-content .mermaid .task{stroke-width:2}.page .post-content .mermaid .taskText{text-anchor:middle;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.page .post-content .mermaid .taskText:not([font-size]){font-size:11px}.page .post-content .mermaid .taskTextOutsideRight{fill:#333;text-anchor:start;font-size:11px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.page .post-content .mermaid .taskTextOutsideLeft{fill:#333;text-anchor:end;font-size:11px}.page .post-content .mermaid .task.clickable{cursor:pointer}.page .post-content .mermaid .taskText.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}.page .post-content .mermaid .taskTextOutsideLeft.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}.page .post-content .mermaid .taskTextOutsideRight.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}.page .post-content .mermaid .taskText0,.page .post-content .mermaid .taskText1,.page .post-content .mermaid .taskText2,.page .post-content .mermaid .taskText3{fill:#fff}.page .post-content .mermaid .task0,.page .post-content .mermaid .task1,.page .post-content .mermaid .task2,.page .post-content .mermaid .task3{fill:#26a;stroke:#1a4d80}.page .post-content .mermaid .taskTextOutside0,.page .post-content .mermaid .taskTextOutside2{fill:#333}.page .post-content .mermaid .taskTextOutside1,.page .post-content .mermaid .taskTextOutside3{fill:#333}.page .post-content .mermaid .active0,.page .post-content .mermaid .active1,.page .post-content .mermaid .active2,.page .post-content .mermaid .active3{fill:#eee;stroke:#1a4d80}.page .post-content .mermaid .activeText0,.page .post-content .mermaid .activeText1,.page .post-content .mermaid .activeText2,.page .post-content .mermaid .activeText3{fill:#333 !important}.page .post-content .mermaid .done0,.page .post-content .mermaid .done1,.page .post-content .mermaid .done2,.page .post-content .mermaid .done3{stroke:#666;fill:#bbb;stroke-width:2}.page .post-content .mermaid .doneText0,.page .post-content .mermaid .doneText1,.page .post-content .mermaid .doneText2,.page .post-content .mermaid .doneText3{fill:#333 !important}.page .post-content .mermaid .crit0,.page .post-content .mermaid .crit1,.page .post-content .mermaid .crit2,.page .post-content .mermaid .crit3{stroke:#b1361b;fill:#d42;stroke-width:2}.page .post-content .mermaid .activeCrit0,.page .post-content .mermaid .activeCrit1,.page .post-content .mermaid .activeCrit2,.page .post-content .mermaid .activeCrit3{stroke:#b1361b;fill:#eee;stroke-width:2}.page .post-content .mermaid .doneCrit0,.page .post-content .mermaid .doneCrit1,.page .post-content .mermaid .doneCrit2,.page .post-content .mermaid .doneCrit3{stroke:#b1361b;fill:#bbb;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}.page .post-content .mermaid .milestone{transform:rotate(45deg) scale(0.8, 0.8)}.page .post-content .mermaid .milestoneText{font-style:italic}.page .post-content .mermaid .doneCritText0,.page .post-content .mermaid .doneCritText1,.page .post-content .mermaid .doneCritText2,.page .post-content .mermaid .doneCritText3{fill:#333 !important}.page .post-content .mermaid .activeCritText0,.page .post-content .mermaid .activeCritText1,.page .post-content .mermaid .activeCritText2,.page .post-content .mermaid .activeCritText3{fill:#333 !important}.page .post-content .mermaid .titleText{text-anchor:middle;font-size:18px;fill:#333;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.page .post-content .mermaid g.classGroup text{fill:#999;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:10px}.page .post-content .mermaid g.classGroup text .title{font-weight:bolder}.page .post-content .mermaid g.classGroup rect{fill:#eee;stroke:#999}.page .post-content .mermaid g.classGroup line{stroke:#999;stroke-width:1}.page .post-content .mermaid .classLabel .box{stroke:none;stroke-width:0;fill:#eee;opacity:0.5}.page .post-content .mermaid .classLabel .label{fill:#999;font-size:10px}.page .post-content .mermaid .relation{stroke:#999;stroke-width:1;fill:none}.page .post-content .mermaid #compositionStart{fill:#999;stroke:#999;stroke-width:1}.page .post-content .mermaid #compositionEnd{fill:#999;stroke:#999;stroke-width:1}.page .post-content .mermaid #aggregationStart{fill:#eee;stroke:#999;stroke-width:1}.page .post-content .mermaid #aggregationEnd{fill:#eee;stroke:#999;stroke-width:1}.page .post-content .mermaid #dependencyStart{fill:#999;stroke:#999;stroke-width:1}.page .post-content .mermaid #dependencyEnd{fill:#999;stroke:#999;stroke-width:1}.page .post-content .mermaid #extensionStart{fill:#999;stroke:#999;stroke-width:1}.page .post-content .mermaid #extensionEnd{fill:#999;stroke:#999;stroke-width:1}.page .post-content .mermaid .commit-id,.page .post-content .mermaid .commit-msg,.page .post-content .mermaid .branch-label{fill:lightgrey;color:lightgrey;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.page .post-content .mermaid .pieTitleText{text-anchor:middle;font-size:25px;fill:#333;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.page .post-content .mermaid .slice{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.page .post-content .mermaid g.stateGroup text{fill:#999;stroke:none;font-size:10px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.page .post-content .mermaid g.stateGroup text{fill:#999;stroke:none;font-size:10px}.page .post-content .mermaid g.stateGroup .state-title{font-weight:bolder;fill:#000}.page .post-content .mermaid g.stateGroup rect{fill:#eee;stroke:#999}.page .post-content .mermaid g.stateGroup line{stroke:#999;stroke-width:1}.page .post-content .mermaid .transition{stroke:#999;stroke-width:1;fill:none}.page .post-content .mermaid .stateGroup .composit{fill:white;border-bottom:1px}.page .post-content .mermaid .state-note{stroke:#770;fill:#ffa}.page .post-content .mermaid .state-note text{fill:black;stroke:none;font-size:10px}.page .post-content .mermaid .stateLabel .box{stroke:none;stroke-width:0;fill:#eee;opacity:0.5}.page .post-content .mermaid .stateLabel text{fill:#000;font-size:10px;font-weight:bold;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.page .post-content .mermaid :root{--mermaid-font-family: '"trebuchet ms", verdana, arial';--mermaid-font-family: "Comic Sans MS", "Comic Sans", cursive}.dark-theme .page .post-content .mermaid .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);color:#333}.dark-theme .page .post-content .mermaid .label text{fill:#333}.dark-theme .page .post-content .mermaid .node rect,.dark-theme .page .post-content .mermaid .node circle,.dark-theme .page .post-content .mermaid .node ellipse,.dark-theme .page .post-content .mermaid .node polygon{fill:#BDD5EA;stroke:purple;stroke-width:1px}.dark-theme .page .post-content .mermaid .node .label{text-align:center}.dark-theme .page .post-content .mermaid .node.clickable{cursor:pointer}.dark-theme .page .post-content .mermaid .arrowheadPath{fill:#d3d3d3}.dark-theme .page .post-content .mermaid .edgePath .path{stroke:#d3d3d3;stroke-width:1.5px}.dark-theme .page .post-content .mermaid .edgeLabel{background-color:#e8e8e8;text-align:center}.dark-theme .page .post-content .mermaid .cluster rect{fill:#6D6D65;stroke:rgba(255,255,255,0.25);stroke-width:1px}.dark-theme .page .post-content .mermaid .cluster text{fill:#F9FFFE}.dark-theme .page .post-content .mermaid div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:12px;background:#6D6D65;border:1px solid rgba(255,255,255,0.25);border-radius:2px;pointer-events:none;z-index:100}.dark-theme .page .post-content .mermaid .actor{stroke:#81B1DB;fill:#BDD5EA}.dark-theme .page .post-content .mermaid text.actor{fill:#000;stroke:none}.dark-theme .page .post-content .mermaid .actor-line{stroke:#d3d3d3}.dark-theme .page .post-content .mermaid .messageLine0{stroke-width:1.5;stroke-dasharray:'2 2';stroke:#d3d3d3}.dark-theme .page .post-content .mermaid .messageLine1{stroke-width:1.5;stroke-dasharray:'2 2';stroke:#d3d3d3}.dark-theme .page .post-content .mermaid #arrowhead{fill:#d3d3d3}.dark-theme .page .post-content .mermaid .sequenceNumber{fill:#fff}.dark-theme .page .post-content .mermaid #sequencenumber{fill:#d3d3d3}.dark-theme .page .post-content .mermaid #crosshead path{fill:#d3d3d3 !important;stroke:#d3d3d3 !important}.dark-theme .page .post-content .mermaid .messageText{fill:#d3d3d3;stroke:none}.dark-theme .page .post-content .mermaid .labelBox{stroke:#81B1DB;fill:#BDD5EA}.dark-theme .page .post-content .mermaid .labelText{fill:#323D47;stroke:none}.dark-theme .page .post-content .mermaid .loopText{fill:#d3d3d3;stroke:none}.dark-theme .page .post-content .mermaid .loopLine{stroke-width:2;stroke-dasharray:'2 2';stroke:#81B1DB}.dark-theme .page .post-content .mermaid .note{stroke:rgba(255,255,255,0.25);fill:#fff5ad}.dark-theme .page .post-content .mermaid .noteText{fill:black;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:14px}.dark-theme .page .post-content .mermaid .activation0{fill:#f4f4f4;stroke:#666}.dark-theme .page .post-content .mermaid .activation1{fill:#f4f4f4;stroke:#666}.dark-theme .page .post-content .mermaid .activation2{fill:#f4f4f4;stroke:#666}.dark-theme .page .post-content .mermaid .mermaid-main-font{font-family:"trebuchet ms", verdana, arial;font-family:var(--mermaid-font-family)}.dark-theme .page .post-content .mermaid .section{stroke:none;opacity:0.2}.dark-theme .page .post-content .mermaid .section0{fill:rgba(255,255,255,0.3)}.dark-theme .page .post-content .mermaid .section2{fill:#EAE8B9}.dark-theme .page .post-content .mermaid .section1,.dark-theme .page .post-content .mermaid .section3{fill:#fff;opacity:0.2}.dark-theme .page .post-content .mermaid .sectionTitle0{fill:#F9FFFE}.dark-theme .page .post-content .mermaid .sectionTitle1{fill:#F9FFFE}.dark-theme .page .post-content .mermaid .sectionTitle2{fill:#F9FFFE}.dark-theme .page .post-content .mermaid .sectionTitle3{fill:#F9FFFE}.dark-theme .page .post-content .mermaid .sectionTitle{text-anchor:start;font-size:11px;text-height:14px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.dark-theme .page .post-content .mermaid .grid .tick{stroke:#d3d3d3;opacity:0.3;shape-rendering:crispEdges}.dark-theme .page .post-content .mermaid .grid .tick text{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.dark-theme .page .post-content .mermaid .grid path{stroke-width:0}.dark-theme .page .post-content .mermaid .today{fill:none;stroke:#DB5757;stroke-width:2px}.dark-theme .page .post-content .mermaid .task{stroke-width:2}.dark-theme .page .post-content .mermaid .taskText{text-anchor:middle;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.dark-theme .page .post-content .mermaid .taskText:not([font-size]){font-size:11px}.dark-theme .page .post-content .mermaid .taskTextOutsideRight{fill:#323D47;text-anchor:start;font-size:11px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.dark-theme .page .post-content .mermaid .taskTextOutsideLeft{fill:#323D47;text-anchor:end;font-size:11px}.dark-theme .page .post-content .mermaid .task.clickable{cursor:pointer}.dark-theme .page .post-content .mermaid .taskText.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}.dark-theme .page .post-content .mermaid .taskTextOutsideLeft.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}.dark-theme .page .post-content .mermaid .taskTextOutsideRight.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}.dark-theme .page .post-content .mermaid .taskText0,.dark-theme .page .post-content .mermaid .taskText1,.dark-theme .page .post-content .mermaid .taskText2,.dark-theme .page .post-content .mermaid .taskText3{fill:#323D47}.dark-theme .page .post-content .mermaid .task0,.dark-theme .page .post-content .mermaid .task1,.dark-theme .page .post-content .mermaid .task2,.dark-theme .page .post-content .mermaid .task3{fill:#BDD5EA;stroke:rgba(255,255,255,0.5)}.dark-theme .page .post-content .mermaid .taskTextOutside0,.dark-theme .page .post-content .mermaid .taskTextOutside2{fill:#d3d3d3}.dark-theme .page .post-content .mermaid .taskTextOutside1,.dark-theme .page .post-content .mermaid .taskTextOutside3{fill:#d3d3d3}.dark-theme .page .post-content .mermaid .active0,.dark-theme .page .post-content .mermaid .active1,.dark-theme .page .post-content .mermaid .active2,.dark-theme .page .post-content .mermaid .active3{fill:#81B1DB;stroke:rgba(255,255,255,0.5)}.dark-theme .page .post-content .mermaid .activeText0,.dark-theme .page .post-content .mermaid .activeText1,.dark-theme .page .post-content .mermaid .activeText2,.dark-theme .page .post-content .mermaid .activeText3{fill:#323D47 !important}.dark-theme .page .post-content .mermaid .done0,.dark-theme .page .post-content .mermaid .done1,.dark-theme .page .post-content .mermaid .done2,.dark-theme .page .post-content .mermaid .done3{stroke:grey;fill:#d3d3d3;stroke-width:2}.dark-theme .page .post-content .mermaid .doneText0,.dark-theme .page .post-content .mermaid .doneText1,.dark-theme .page .post-content .mermaid .doneText2,.dark-theme .page .post-content .mermaid .doneText3{fill:#323D47 !important}.dark-theme .page .post-content .mermaid .crit0,.dark-theme .page .post-content .mermaid .crit1,.dark-theme .page .post-content .mermaid .crit2,.dark-theme .page .post-content .mermaid .crit3{stroke:#E83737;fill:#E83737;stroke-width:2}.dark-theme .page .post-content .mermaid .activeCrit0,.dark-theme .page .post-content .mermaid .activeCrit1,.dark-theme .page .post-content .mermaid .activeCrit2,.dark-theme .page .post-content .mermaid .activeCrit3{stroke:#E83737;fill:#81B1DB;stroke-width:2}.dark-theme .page .post-content .mermaid .doneCrit0,.dark-theme .page .post-content .mermaid .doneCrit1,.dark-theme .page .post-content .mermaid .doneCrit2,.dark-theme .page .post-content .mermaid .doneCrit3{stroke:#E83737;fill:#d3d3d3;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}.dark-theme .page .post-content .mermaid .milestone{transform:rotate(45deg) scale(0.8, 0.8)}.dark-theme .page .post-content .mermaid .milestoneText{font-style:italic}.dark-theme .page .post-content .mermaid .doneCritText0,.dark-theme .page .post-content .mermaid .doneCritText1,.dark-theme .page .post-content .mermaid .doneCritText2,.dark-theme .page .post-content .mermaid .doneCritText3{fill:#323D47 !important}.dark-theme .page .post-content .mermaid .activeCritText0,.dark-theme .page .post-content .mermaid .activeCritText1,.dark-theme .page .post-content .mermaid .activeCritText2,.dark-theme .page .post-content .mermaid .activeCritText3{fill:#323D47 !important}.dark-theme .page .post-content .mermaid .titleText{text-anchor:middle;font-size:18px;fill:#323D47;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.dark-theme .page .post-content .mermaid g.classGroup text{fill:purple;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:10px}.dark-theme .page .post-content .mermaid g.classGroup text .title{font-weight:bolder}.dark-theme .page .post-content .mermaid g.classGroup rect{fill:#BDD5EA;stroke:purple}.dark-theme .page .post-content .mermaid g.classGroup line{stroke:purple;stroke-width:1}.dark-theme .page .post-content .mermaid .classLabel .box{stroke:none;stroke-width:0;fill:#BDD5EA;opacity:0.5}.dark-theme .page .post-content .mermaid .classLabel .label{fill:purple;font-size:10px}.dark-theme .page .post-content .mermaid .relation{stroke:purple;stroke-width:1;fill:none}.dark-theme .page .post-content .mermaid #compositionStart{fill:purple;stroke:purple;stroke-width:1}.dark-theme .page .post-content .mermaid #compositionEnd{fill:purple;stroke:purple;stroke-width:1}.dark-theme .page .post-content .mermaid #aggregationStart{fill:#BDD5EA;stroke:purple;stroke-width:1}.dark-theme .page .post-content .mermaid #aggregationEnd{fill:#BDD5EA;stroke:purple;stroke-width:1}.dark-theme .page .post-content .mermaid #dependencyStart{fill:purple;stroke:purple;stroke-width:1}.dark-theme .page .post-content .mermaid #dependencyEnd{fill:purple;stroke:purple;stroke-width:1}.dark-theme .page .post-content .mermaid #extensionStart{fill:purple;stroke:purple;stroke-width:1}.dark-theme .page .post-content .mermaid #extensionEnd{fill:purple;stroke:purple;stroke-width:1}.dark-theme .page .post-content .mermaid .commit-id,.dark-theme .page .post-content .mermaid .commit-msg,.dark-theme .page .post-content .mermaid .branch-label{fill:lightgrey;color:lightgrey;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.dark-theme .page .post-content .mermaid .pieTitleText{text-anchor:middle;font-size:25px;fill:#323D47;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.dark-theme .page .post-content .mermaid .slice{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.dark-theme .page .post-content .mermaid g.stateGroup text{fill:purple;stroke:none;font-size:10px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.dark-theme .page .post-content .mermaid g.stateGroup text{fill:purple;stroke:none;font-size:10px}.dark-theme .page .post-content .mermaid g.stateGroup .state-title{font-weight:bolder;fill:#000}.dark-theme .page .post-content .mermaid g.stateGroup rect{fill:#BDD5EA;stroke:purple}.dark-theme .page .post-content .mermaid g.stateGroup line{stroke:purple;stroke-width:1}.dark-theme .page .post-content .mermaid .transition{stroke:purple;stroke-width:1;fill:none}.dark-theme .page .post-content .mermaid .stateGroup .composit{fill:white;border-bottom:1px}.dark-theme .page .post-content .mermaid .state-note{stroke:rgba(255,255,255,0.25);fill:#fff5ad}.dark-theme .page .post-content .mermaid .state-note text{fill:black;stroke:none;font-size:10px}.dark-theme .page .post-content .mermaid .stateLabel .box{stroke:none;stroke-width:0;fill:#BDD5EA;opacity:0.5}.dark-theme .page .post-content .mermaid .stateLabel text{fill:#000;font-size:10px;font-weight:bold;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.dark-theme .page .post-content .mermaid :root{--mermaid-font-family: '"trebuchet ms", verdana, arial';--mermaid-font-family: "Comic Sans MS", "Comic Sans", cursive}.dark-theme .page .post-content .aplayer{background:#212121}.dark-theme .page .post-content .aplayer.aplayer-withlist .aplayer-info{border-bottom-color:#5c5c5c}.dark-theme .page .post-content .aplayer.aplayer-fixed .aplayer-list{border-color:#5c5c5c}.dark-theme .page .post-content .aplayer .aplayer-body{background-color:#212121}.dark-theme .page .post-content .aplayer .aplayer-info{border-top-color:#212121}.dark-theme .page .post-content .aplayer .aplayer-info .aplayer-music .aplayer-title{color:#fff}.dark-theme .page .post-content .aplayer .aplayer-info .aplayer-music .aplayer-author{color:#fff}.dark-theme .page .post-content .aplayer .aplayer-info .aplayer-controller .aplayer-time{color:#eee}.dark-theme .page .post-content .aplayer .aplayer-info .aplayer-controller .aplayer-time .aplayer-icon path{fill:#eee}.dark-theme .page .post-content .aplayer .aplayer-list{background-color:#212121}.dark-theme .page .post-content .aplayer .aplayer-list::-webkit-scrollbar-thumb{background-color:#999}.dark-theme .page .post-content .aplayer .aplayer-list::-webkit-scrollbar-thumb:hover{background-color:#bbb}.dark-theme .page .post-content .aplayer .aplayer-list li{color:#fff;border-top-color:#666}.dark-theme .page .post-content .aplayer .aplayer-list li:hover{background:#4e4e4e}.dark-theme .page .post-content .aplayer .aplayer-list li.aplayer-list-light{background:#6c6c6c}.dark-theme .page .post-content .aplayer .aplayer-list li .aplayer-list-index{color:#ddd}.dark-theme .page .post-content .aplayer .aplayer-list li .aplayer-list-author{color:#ddd}.dark-theme .page .post-content .aplayer .aplayer-lrc{text-shadow:-1px -1px 0 #666}.dark-theme .page .post-content .aplayer .aplayer-lrc:before{background:-moz-linear-gradient(top, #212121 0%, rgba(33,33,33,0) 100%);background:-webkit-linear-gradient(top, #212121 0%, rgba(33,33,33,0) 100%);background:linear-gradient(to bottom, #212121 0%, rgba(33,33,33,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#212121', endColorstr='#00212121',GradientType=0 )}.dark-theme .page .post-content .aplayer .aplayer-lrc:after{background:-moz-linear-gradient(top, rgba(33,33,33,0) 0%, rgba(33,33,33,0.8) 100%);background:-webkit-linear-gradient(top, rgba(33,33,33,0) 0%, rgba(33,33,33,0.8) 100%);background:linear-gradient(to bottom, rgba(33,33,33,0) 0%, rgba(33,33,33,0.8) 100%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#00212121', endColorstr='#cc212121',GradientType=0 )}.dark-theme .page .post-content .aplayer .aplayer-lrc p{color:#fff}.dark-theme .page .post-content .aplayer .aplayer-miniswitcher{background:#484848}.dark-theme .page .post-content .aplayer .aplayer-miniswitcher .aplayer-icon path{fill:#eee}.page .post-content .echarts{width:100%;height:30rem;margin:3% auto;text-align:center}.page .post-content .bilibili{position:relative;width:100%;height:0;padding-bottom:75%;margin:3% auto;text-align:center}.page .post-content .bilibili iframe{position:absolute;width:100%;height:100%;left:0;top:0}.page .post-content hr{margin:1rem 0;position:relative;border-top:1px dashed #dcdcdc;border-bottom:none}.dark-theme .page .post-content hr{border-top:1px dashed #4a4b50}.page .post-content kbd{display:inline-block;padding:.25em;background-color:#fff;border:1px solid #dcdcdc;border-bottom-color:#dcdcdc;border-radius:3px;-webkit-box-shadow:inset 0 -1px 0 #dcdcdc;box-shadow:inset 0 -1px 0 #dcdcdc;font-size:.8em;line-height:1.25rem;font-family:Source Code Pro,Menlo,Consolas,Monaco,monospace;color:#E74C3C}.dark-theme .page .post-content kbd{background-color:#292a2d;border:1px solid #4a4b50;border-bottom-color:#4a4b50;-webkit-box-shadow:inset 0 -1px 0 #4a4b50;box-shadow:inset 0 -1px 0 #4a4b50;color:#E5BF78}.page .post-content .typeit .code{padding:.375rem;font-size:.875rem;font-family:Source Code Pro,Menlo,Consolas,Monaco,monospace;font-weight:bold;word-break:break-all}.page .post-content .align-left{text-align:left}.page .post-content .align-center{text-align:center}.page .post-content .align-right{text-align:right}.page .post-content .float-left{float:left}.page .post-content .float-right{float:right}.page .post-footer{margin-top:3rem}.page .post-footer .post-info{border-bottom:1px solid #dcdcdc;padding:1rem 0 0.3rem}.dark-theme .page .post-footer .post-info{border-bottom:1px solid #4a4b50}.page .post-footer .post-info .post-info-line{display:flex;justify-content:space-between}.page .post-footer .post-info .post-info-line .post-info-mod{font-size:0.8em;color:#a9a9b3}.dark-theme .page .post-footer .post-info .post-info-line .post-info-mod{color:#87878d}.page .post-footer .post-info .post-info-line .post-info-license{font-size:0.8em;color:#a9a9b3}.dark-theme .page .post-footer .post-info .post-info-line .post-info-license{color:#87878d}.page .post-footer .post-info .post-info-line .post-info-md a{font-size:0.8em;color:#2d96bd}.dark-theme .page .post-footer .post-info .post-info-line .post-info-md a{color:#eee}.page .post-footer .post-info .post-info-line .post-info-md a:hover{color:#ef3982}.dark-theme .page .post-footer .post-info .post-info-line .post-info-md a:hover{color:#2d96bd}.page .post-footer .post-info-more{padding:0.3rem 0 1rem;display:flex;justify-content:space-between;font-size:0.9rem}.page .post-footer .post-nav::before,.page .post-footer .post-nav::after{content:' ';display:table}.page .post-footer .post-nav a.prev,.page .post-footer .post-nav a.next{font-size:1rem;font-weight:600;transition-duration:.3s;transition-property:transform;transition-timing-function:ease-out}.page .post-footer .post-nav a.prev{float:left}.page .post-footer .post-nav a.prev:hover{transform:translateX(-4px)}.page .post-footer .post-nav a.next{float:right}.page .post-footer .post-nav a.next:hover{transform:translateX(4px)}.page .post-comment{padding:4rem 0}.page .home-intro{transform:translateY(0);padding:2rem 0 2rem 0}.page .home-intro .home-avatar img{width:6rem}.page .post{padding-top:1rem;padding-bottom:.8rem;color:#161209;border-bottom:1px dashed #dcdcdc}.dark-theme .page .post{color:#a9a9b3;border-bottom:1px dashed #4a4b50}.page .post .post-featured-image-preview{width:100%;padding:30% 0 0;position:relative;margin:0.6rem auto}.page .post .post-featured-image-preview img{position:absolute;width:100%;height:100%;left:0;top:0;object-fit:cover}.page .post .post-list-title{font-size:1.6rem}.page .post .post-meta{font-size:.875rem !important}.page .post .post-meta a{color:#a9a9b3 !important}.dark-theme .page .post .post-meta a{color:#87878d !important}.page .post .post-meta a:hover{color:#2d96bd !important}.dark-theme .page .post .post-meta a:hover{color:#fff !important}.page .post .post-content{padding-top:.2rem;font-size:.9rem;width:100%;max-height:7rem;overflow:hidden}.page .post .post-content h2,.page .post .post-content h3,.page .post .post-content h4,.page .post .post-content h5,.page .post .post-content h6{font-size:1rem;line-height:1rem;padding-top:.3rem;padding-bottom:.3rem}.page .post .post-content p{margin:0;padding-top:.3rem;padding-bottom:.3rem}.page .post .post-footer{margin-top:.5rem;display:flex;justify-content:space-between;align-items:center;font-size:.875rem !important}.page .post .post-footer a{color:#2d96bd !important}.dark-theme .page .post .post-footer a{color:#eee !important}.page .post .post-footer a:hover{color:#ef3982 !important}.dark-theme .page .post .post-footer a:hover{color:#2d96bd !important}.page .post .post-footer .post-tags{padding:0}.page .post .post-footer .post-tags a{color:#161209 !important}.dark-theme .page .post .post-footer .post-tags a{color:#a9a9b3 !important}.page .post .post-footer .post-tags a:hover{color:#2d96bd !important}.dark-theme .page .post .post-footer .post-tags a:hover{color:#fff !important}.archive .post-title{text-align:right;padding-bottom:2rem}.archive .archive-item{margin-left:2rem}.archive .categories-card{margin:0 auto;margin-top:3rem;display:flex;align-items:center;justify-content:space-between;flex-direction:row;flex-wrap:wrap;padding:0 2.5rem;line-height:1.6rem}.archive .categories-card .card-item{font-size:.875rem;text-align:left;width:45%;display:flex;align-items:flex-start;margin-top:2rem;min-height:10rem;padding:0 2%;position:relative}.archive .categories-card .card-item .card-item-wrapper{width:100%;overflow:hidden}.archive .categories-card .card-item .card-item-wrapper .card-item-title{font-size:1.2rem;font-weight:bold;display:inline-block}.archive .categories-card .card-item .card-item-wrapper span{float:right;padding-right:1rem}.archive .archive-item-link{display:inline-block;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:95%}.archive .archive-item-link:hover{color:#2d96bd;background-color:transparent}.dark-theme .archive .archive-item-link{color:#a9a9b3;text-decoration:none;transition:color 0.2s ease, border-color 0.2s ease, background 0.2s ease, opacity 0.2s ease}.dark-theme .archive .archive-item-link:hover{color:#fff;text-decoration:none;transition:color 0.2s ease, border-color 0.2s ease, background 0.2s ease, opacity 0.2s ease}.archive .archive-item-date{float:right;text-align:right;color:#a9a9b3}.dark-theme .archive .archive-item-date{color:#87878d}.archive .more-post{text-align:right}.archive .tag-cloud-tags{margin:10px 0}.archive .tag-cloud-tags a{display:inline-block;position:relative;margin:5px 10px;word-wrap:break-word;transition-duration:.3s;transition-property:transform;transition-timing-function:ease-out}.archive .tag-cloud-tags a:active,.archive .tag-cloud-tags a:focus,.archive .tag-cloud-tags a:hover{color:#2d96bd;transform:scale(1.1)}.dark-theme .archive .tag-cloud-tags a:active,.dark-theme .archive .tag-cloud-tags a:focus,.dark-theme .archive .tag-cloud-tags a:hover{color:#fff}.archive .tag-cloud-tags a small{color:#a9a9b3}.dark-theme .archive .tag-cloud-tags a small{color:#fff}.single .post-title{text-align:right;padding-bottom:2rem}.navbar{display:block;position:fixed;width:100%;z-index:100;height:4rem;line-height:4rem;background-color:#fafafa}.dark-theme .navbar{background-color:#252627}.navbar .navbar-container{width:auto;text-align:center;margin:0 4rem;display:flex;justify-content:space-between}.navbar .navbar-container .navbar-header a{padding:0 8px;font-size:20px}.navbar .navbar-container .navbar-header a i{line-height:2em}.navbar .navbar-container .navbar-menu a{padding:0 8px}.navbar .navbar-container .navbar-menu a.active{font-weight:900;color:#161209}.dark-theme .navbar .navbar-container .navbar-menu a.active{color:#fff}.navbar-mobile{display:none;position:fixed;width:100%;z-index:100;transition:all 0.3s ease 0s}.navbar-mobile .navbar-container{padding:0;margin:0;height:4.5em;line-height:4.5em;background:#fff}.navbar-mobile .navbar-container .navbar-header{display:flex;justify-content:space-between;align-items:center;width:100%;font-size:18px;padding-right:1em;padding-left:1em;box-sizing:border-box}.navbar-mobile .navbar-container .navbar-header .navbar-header-title{font-size:20px}.navbar-mobile .navbar-container .navbar-header .menu-toggle{cursor:pointer;line-height:4.5em}.navbar-mobile .navbar-container .navbar-header .menu-toggle span{display:block;background:#000;width:24px;height:2px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-transition:.2s margin .2s, .2s transform;-moz-transition:.2s margin .2s, .2s transform;transition:.2s margin .2s, .2s transform}.dark-theme .navbar-mobile .navbar-container .navbar-header .menu-toggle span{background:#a9a9b3}.navbar-mobile .navbar-container .navbar-header .menu-toggle span:nth-child(1){margin-bottom:8px}.navbar-mobile .navbar-container .navbar-header .menu-toggle span:nth-child(3){margin-top:8px}.navbar-mobile .navbar-container .navbar-header .menu-toggle.active span{-webkit-transition:.2s margin, .2s transform .2s;-moz-transition:.2s margin, .2s transform .2s;transition:.2s margin, .2s transform .2s}.navbar-mobile .navbar-container .navbar-header .menu-toggle.active span:nth-child(1){-moz-transform:rotate(45deg) translate(4px, 6px);-ms-transform:rotate(45deg) translate(4px, 6px);-webkit-transform:rotate(45deg) translate(4px, 6px);transform:rotate(45deg) translate(4px, 6px)}.navbar-mobile .navbar-container .navbar-header .menu-toggle.active span:nth-child(2){opacity:0}.navbar-mobile .navbar-container .navbar-header .menu-toggle.active span:nth-child(3){-moz-transform:rotate(-45deg) translate(8px, -10px);-ms-transform:rotate(-45deg) translate(8px, -10px);-webkit-transform:rotate(-45deg) translate(8px, -10px);transform:rotate(-45deg) translate(8px, -10px)}.navbar-mobile .navbar-container .navbar-menu{text-align:center;background:#fff;border-top:2px solid #161209;display:none;box-shadow:0px 2px 4px rgba(0,0,0,0.1),0px 4px 8px rgba(0,0,0,0.1)}.navbar-mobile .navbar-container .navbar-menu a{display:block;line-height:2.5em}.navbar-mobile .navbar-container .navbar-menu.active{display:block}.dark-theme .navbar-mobile .navbar-container .navbar-menu{background:#292a2d;border-top:2px solid #a9a9b3}.dark-theme .navbar-mobile .navbar-container{background:#292a2d}.copyright{font-size:.875rem}.copyright .copyright-line{width:100%}.dynamic-to-top{display:none;overflow:hidden;width:auto;z-index:90;position:fixed;bottom:2rem;right:2rem;top:auto;left:auto;font-family:sans-serif;font-size:1rem;color:#fff;text-decoration:none;text-shadow:0 1px 0 #333;font-weight:bold;padding:1rem 1rem;border:1px solid #dcdcdc;background:#222;outline:none}.dynamic-to-top:hover{background:#000;cursor:pointer}.dynamic-to-top:active{background:#000;outline:none}.dynamic-to-top:focus,.dynamic-to-top:hover{outline:none}.dynamic-to-top span{display:block;overflow:hidden;width:.875rem;height:.75rem;background:url("data:image/png;base64, ") no-repeat center center}.dark-theme .dynamic-to-top{border:1px solid #4a4b50}.pagination{display:flex;flex-direction:row;justify-content:center;list-style:none;white-space:nowrap;width:100%;padding-top:1rem}.pagination a{-webkit-font-smoothing:antialiased;font-size:.8rem;color:#bfbfbf;letter-spacing:.1rem;font-weight:700;padding:5px 5px;text-decoration:none;transition:0.3s}.pagination li{padding-bottom:3px;margin:0 20px;box-sizing:border-box;position:relative;display:inline}.pagination li.disabled{display:none}.pagination li:hover a{color:#000}.dark-theme .pagination li:hover a{color:#fff}.pagination li:before,.pagination li:after{position:absolute;content:"";width:0;height:3px;background:#000;transition:0.3s;bottom:0px}.dark-theme .pagination li:before,.dark-theme .pagination li:after{background:#fff}.pagination li:before .active,.pagination li:after .active{width:100%}.pagination li:before{left:50%}.pagination li:after{right:50%}.pagination li:hover:before,.pagination li:hover:after{width:50%}.pagination li.active a{color:#000}.dark-theme .pagination li.active a{color:#fff}.pagination li.active:before,.pagination li.active:after{width:60%}@media only screen and (max-width: 1800px){.page{max-width:780px}.page .post-toc{width:300px;margin-left:800px}}@media only screen and (max-width: 1440px){.page{max-width:680px}.page .post-toc{width:240px;margin-left:700px}}@media only screen and (max-width: 1200px){.page{max-width:560px}.page .post-toc{width:180px;margin-left:580px}}@media only screen and (max-width: 960px){.navbar .navbar-container{margin:0 1rem}.page{max-width:80%}.page .post-toc{display:none}.page .post-toc-mobile{display:block}}@media only screen and (max-width: 560px){.navbar{display:none}.navbar-mobile{display:block}.page{max-width:100%}.page .categories-card .card-item{width:100%}.dynamic-to-top{display:none !important}}

/*# sourceMappingURL=style.min.css.map */