/*!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:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:initial}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:-.25em}sup{top:-.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:.35em .75em .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}*,*::before,*::after{box-sizing:border-box}:root{--sys-font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", "Droid Sans",
    "Helvetica Neue";--zh-font-family:"PingFang SC", "Hiragino Sans GB", "Droid Sans Fallback",
    "Microsoft YaHei";--base-font-family:var(--sys-font-family), var(--zh-font-family);--code-font-family:Menlo, Monaco, Consolas, "Courier New", monospace;--article-font-family:var(--base-font-family)}:root{--color-mode:light;--h1-color:#222222;--font-color:#495057;--heading-color:#444444;--background:#fafafa;--dark-font-color:#1b1d25;--medium-font-color:#60656c;--light-font-color:#858b93;--light-background:#ebedef;--light-background-hover:#e1e6ed;--border:#d6d9de;--link-color:#5183f5;--link-color-darker:#364fc7;--navbar-color:#1b1d25;--blockquote:#f9f9f9;--blockquote-left:#e3e6eb;--transparent-text:rgba(0, 0, 0, 0.7);--transparent-bg:rgba(0, 0, 0, 0.05);--light-transparent-bg:rgba(255, 255, 255, 0.1)}@media(prefers-color-scheme:dark){:root{--color-mode:dark}}[data-user-color-scheme=dark]{--h1-color:#fdb345;--font-color:#b3b9c5;--heading-color:#ffc345;--dark-font-color:#ced4da;--background:#1f2022;--medium-font-color:#dee2e6;--light-font-color:#868e96;--light-background:#2d2d31;--light-background-hover:#3b3b3e;--code-background-color:#2e2e30;--border:#404040;--link-color:#6ab0f3;--link-color-darker:#4a72a5;--link-hover-color:#e1a6f2;--navbar-color:#1d1d1d;--blockquote:#2b2b2b;--blockquote-left:#191919;--transparent-text:rgba(255, 255, 255, 0.7);--transparent-bg:rgba(0, 0, 0, 0.2);--light-transparent-bg:rgba(255, 255, 255, 0.05)}.flex{display:flex;align-items:center}.flex-row{display:flex;flex-direction:column}@media screen and (min-width:800px){.flex-row{flex-direction:row}}.flex-col{flex:1}.flex-two-thirds{flex:2}.justify-center{justify-content:center}html{font-family:var(--base-font-family);color:var(--font-color);font-weight:400;font-size:1rem;line-height:1.75;scroll-behavior:smooth}body{background:var(--background);margin:0;padding:0}section{margin:2rem 0}section:first-of-type{margin-top:0}section>h2{display:flex;align-items:center;font-size:1.6rem;margin-top:0;margin-bottom:.5rem}@media screen and (min-width:800px){section>h2{margin-bottom:2rem}}.index h2,section>h2{border-bottom-width:0}@media screen and (min-width:800px){.index h2,section>h2{border-bottom-width:4px}}a.section-button{font-weight:500;background:var(--light-background);color:var(--dark-font-color);padding:.4rem .6rem;font-size:.8rem;border-radius:.3rem;border-width:0!important;white-space:nowrap;line-height:1;margin-left:2rem;margin-top:.5rem}a.section-button:hover{background:var(--light-background-hover);color:var(--heading-color)}@media screen and (min-width:800px){section{margin:3.5rem 0}section>h2{font-size:2rem;margin:0 0 1rem}}.container{max-width:865px;padding:0 1.5rem;margin-left:auto;margin-right:auto}.container.page p{max-width:600px}@media screen and (min-width:800px){.container{padding:0 2rem}}img{display:inline-block;max-width:100%;height:auto;transition:transform .25s ease;transition-delay:.25s}img:hover{transform:scale(1.25)}p,ol,ul,dl,table,blockquote{font-size:1.05rem;margin:0 0 1.5rem}blockquote p{margin:0}ul{padding:0 1rem}@media screen and (min-width:800px){p,ol,ul,dl,table,blockquote{font-size:1.125rem}ul{padding:0 2rem}}ul li p{margin:0}ul li ul{padding-left:1rem;margin:0}ul li ul li{margin:0}ol li ol{margin-bottom:0}.task-list-item [type=checkbox]{margin-right:.5rem}blockquote{margin:2rem 0;padding:1rem;background:var(--blockquote);font-weight:400;border-left:5px solid var(--blockquote-left)}blockquote :not(pre)>code[class*=language-]{background:rgba(0,0,0,.1)!important}@media screen and (min-width:800px){blockquote{padding:2rem 0 2rem 2rem}}.verse{font-size:.9rem;margin:2rem 0;padding:0 1rem;background:var(--blockquote);border-left:5px solid var(--blockquote-left)}::selection{background:#3b5bdb;color:#fff}h2{color:var(--h1-color)}h3,h4{color:var(--heading-color)}h5,h6{color:var(--medium-font-color)}h2,h3,h4,h5,h6{margin:0 0 1.5rem;line-height:1.2;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h2 code,h3 code,h4 code,h5 code,h6 code{font-size:.9em!important}h2:not(:first-child),h3:not(:first-child),h4:not(:first-child),h5:not(:first-child){margin-top:3rem}h2{font-weight:600;font-size:2rem;line-height:1.1}h3{font-weight:500;font-size:1.75rem;padding-bottom:.5rem;border-bottom:4px solid var(--light-background)}h4{font-weight:400;font-size:1.5rem;color:var(--font-color);margin-bottom:1rem;border-bottom:2px solid var(--light-background)}h5{font-weight:400;font-size:1.4rem;color:var(--font-color);margin-bottom:1rem;padding-bottom:.25rem}h6{font-weight:400;font-size:1.2rem;margin-bottom:1rem}@media screen and (min-width:800px){h2{font-size:3rem}h3{font-size:1.9rem}h3 code{font-size:1.9rem!important}h4{font-size:1.7rem;color:var(--font-color)}h4 code{font-size:1.6rem!important}h5{font-size:1.4rem}}a.link{display:block;padding:.25rem 0;margin:.25rem 0;border-radius:.35rem;font-weight:600;color:var(--dark-font-color)}a.link:hover{color:var(--link-color)}a.button{display:inline-block;border:2px solid var(--link-color);padding:.3rem .6rem;margin-right:.75rem;font-weight:500;background:var(--link-color);color:#fff;border-radius:.35rem;font-size:.9rem}a.button.large{padding:.8rem 1rem;font-size:1.05rem}a.button.secondary{border:2px solid #edf2ff;background:#edf2ff;color:#3b5bdb}a.button:hover,a.button.secondary:hover{border:2px solid var(--link-color-darker);background:var(--link-color-darker);color:#fff}@media screen and (min-width:800px){a.button{font-size:.9rem}a.button.large{padding:1rem 1.5rem;font-size:1.1rem}}p.subtitle{color:var(--medium-font-color);font-size:1.3rem;font-weight:300;margin-bottom:0}@media screen and (min-width:800px){p.subtitle{font-size:1.5rem}}a{color:var(--dark-font-color);text-decoration:none}a.image-link{border-width:0}a code[class*=language-]{color:var(--link-color)!important}a code[class*=language-]:hover{background:var(--link-color)!important;color:#fff!important}main{margin-top:50px}@media screen and (min-width:800px){main{margin-top:0}}.emoji{margin:0 .4rem 0 .1rem}.navbar{width:100%;position:fixed;top:0;left:0;background:var(--navbar-color);box-shadow:0 3px 13px rgba(100,110,140,.1),0 2px 4px rgba(100,110,140,.15);z-index:2;padding:.5rem}.navbar .flex{justify-content:space-between}.navbar a{border-radius:.35rem;margin:0 .05rem;color:rgba(255,255,255,.65);font-weight:400;font-size:.85rem;border:1px solid transparent;padding:0 .3rem;background:0 0}.navbar a:first-of-type{margin-left:-1rem}.navbar a .emoji{display:none}.navbar a.brand{font-weight:500;color:#fff;white-space:nowrap;border:none;display:flex;align-items:center;line-height:1;background:0 0}.navbar a.brand .emoji{display:inline-block!important}.navbar a.brand img{height:22px;width:22px}.navbar button{font-size:1rem;margin-right:-1rem}@media screen and (min-width:500px){.navbar a{font-size:.95rem;padding:.5rem}}@media screen and (min-width:800px){.emoji{margin:0 .5rem 0 .1rem}.navbar{position:static;padding:1.5rem 0;background:0 0;box-shadow:none}.navbar .flex{justify-content:space-between}.navbar a{padding:.75rem 1.25rem;margin:0 .25rem;font-size:1.2rem;font-weight:400;color:var(--font-color)}.navbar a:first-of-type{margin-left:-1.5rem}.navbar a:hover,.navbar a[aria-current=page]{background:var(--light-background);color:var(--dark-font-color)}.navbar a.brand{font-size:1.3rem;margin-right:3rem;border:none;background:0 0!important;color:var(--dark-font-color)}.navbar a.brand:hover{background:var(--light-background)!important}.navbar a.brand img{height:26px;width:26px;margin-right:.25rem}#dark-mode-button:hover{background:var(--light-background)}}@media print{.navbar{display:none}}#dark-mode-button{display:flex;border:none;padding:.2rem .7rem .2rem .5rem;border-radius:.35rem;box-sizing:content-box;cursor:pointer;font-size:1.1rem;background:0 0}#dark-mode-button .dark{display:none}#dark-mode-button:focus{outline:none}[data-user-color-scheme=dark] #dark-mode-button .light{display:none}[data-user-color-scheme=dark] #dark-mode-button .dark{display:unset}@media screen and (min-width:800px){#dark-mode-button{padding:.95rem .75rem;font-size:1.2rem}}.my{padding-top:2rem}.my a{border:none;margin-right:1rem}.my a:hover{border:none}.post-row{display:flex;align-items:center;width:100%}.post-row time{display:block;flex:0 0 65px}.post-row h3{flex:1}.posts .post:last-of-type a{border-bottom-width:0}.post a{display:flex;align-items:center;justify-content:stretch;padding:1rem 0;border-bottom:2px solid var(--light-background)}.post a:hover{border-radius:.3rem}.post h3{margin-top:.1rem;margin-bottom:0;font-size:1.1rem;font-weight:600}@media screen and (min-width:800px){.posts{margin-left:-1rem;margin-right:-1rem}.post a{padding:.75rem 1rem;border-bottom-color:transparent}.post a:hover{background:var(--light-background)}.post h3{font-size:1.3rem}.post-row time{flex:0 0 80px}}.new-post,.popular-post{display:inline-block;color:#111;padding:.3rem .4rem;border-radius:.3rem;font-size:.85rem;margin-left:1rem}.new-post{background:#d3f9d8}.popular-post{background:#dce6fd;color:var(--heading-color)}@media screen and (min-width:800px){.new-post,.popular-post{margin-bottom:0}}.footer{padding:2rem 0}.footer>.flex{flex-direction:column;align-items:center;justify-content:center}.footer img{height:30px;width:30px}.footer a{border-radius:.35rem;margin:0 .05rem;font-weight:400;font-size:1rem;border:1px solid transparent;padding:.5rem;margin:0 .5rem;color:var(--light-font-color)}.footer a:hover{color:var(--heading-color);background:var(--light-background)}.footer a.img{display:flex;align-items:center;padding:0;margin:0 .75rem;background:0 0}.footer-links{display:flex;align-items:center;justify-content:center;flex-wrap:wrap}.flex nav{padding:1rem 0}@media screen and (min-width:800px){.footer>.flex{align-items:flex-start;margin-left:-1.5rem;margin-right:-1.5rem}.footer a{padding:.75rem}.footer a.img{padding:0 .5rem;margin:0 1rem}}@media print{.footer{display:none}}.small{max-width:600px}time,.meta{color:var(--light-font-color);font-size:.85rem;white-space:nowrap;font-weight:400}.meta{color:var(--medium-font-color);font-size:1rem}table{border-collapse:separate;border-spacing:0;width:100%;max-width:100%;overflow-x:auto}thead,tbody{white-space:nowrap}th{border-bottom:2px solid var(--border)}tfoot th{border-top:1px solid var(--border)}td{border-bottom:1px solid var(--border)}th,td{text-align:left;padding:.75rem;hyphens:auto}tbody tr:nth-child(even){background-color:var(--light-background)}@media screen and (min-width:800px){table{display:table;border:1px solid var(--border)}thead,tbody{white-space:normal}}.count{font-weight:700;color:var(--link-color)}.tags{display:flex!important;flex-wrap:wrap;align-items:center;margin-left:-.5rem;margin-right:-.5rem}.tags>a{display:block;font-weight:500;background:var(--light-background);color:var(--font-color);margin:.2rem;padding:.5rem .6rem;font-size:.8rem;border-radius:.3rem;border-bottom:0;white-space:nowrap;line-height:1}.tags>a:hover{background:var(--light-background-hover);color:var(--heading-color)}mark{background:#ffec99}.utterances{margin-left:-4px;margin-right:-4px}kbd{background-color:var(--light-background,#f7f7f7);border:2px solid var(--border,rgba(0,0,0,.3));border-radius:3px;box-shadow:0 1px 0 var(--light-transparent-bg,rgba(0,0,0,.2)),inset 0 0 0 2px var(--background,#fff);color:var(--font-color,#333);display:inline-block;font-family:Helvetica Neue,Inter,-apple-system,BlinkMacSystemFont,Helvetica,Arial,sans-serif;line-height:1.4;margin:0 .1em;padding:.1em .2em;text-shadow:0 1px 0 var(--background,#fff);font-size:.8em}#comments{margin-top:3rem}#comments h2{margin:0}@media print{.comments,#comments{display:none}}#search-query{padding:.8rem 1rem;background:var(--light-background);color:var(--input-color);border:2px solid var(--border);outline:none;width:100%;border-radius:.35rem;font-size:1rem;margin-left:auto;margin-right:auto;margin-bottom:4rem}#search-query:focus{border-color:#5183f5}#search-results{display:none}.filter-container{display:flex;justify-content:flex-start;margin-bottom:1.5rem;flex-wrap:wrap;padding-left:1rem}.filter-item{font-size:.85rem;padding:.5rem .75rem;background:var(--light-background);border-radius:4px;margin-right:.5rem;margin-bottom:.5rem;font-weight:600;cursor:pointer}.filter-item:hover{background:#d8e3fd;color:#3972f4}.filter-item:last-of-type{margin-right:0}.filter-item.active{background:#5183f5;color:#fff}.filter-item.active:hover{color:#fff;background:#2161f2}header{padding:1.5rem 0}header h1{font-size:2rem;display:inline-block;font-weight:600;margin-top:1rem}header u{display:inline-block;text-decoration:none;padding:.4rem 0}.article-header{padding-top:2rem;margin-bottom:.5rem}.article-header .container{padding-left:0;padding-right:0}.article-header .thumb{display:flex;flex-direction:column}.article-header h1{font-weight:700;font-size:1.8rem;margin:0}.article-header .description{font-size:1.2rem;color:var(--light-font-color);font-weight:300;margin-top:2rem;margin-bottom:0}.post-meta{margin-top:1rem;padding:0;color:var(--light-font-color);font-size:.9rem}.post-meta a{color:var(--font-color);border-width:0}.post-meta time{margin-top:.2rem;font-size:.9rem}.post-meta .tags{margin-top:.5rem}.post-meta .tags a{text-decoration:none}.article-post{margin-bottom:2rem;font-family:var(--article-font-family)}.article-post img{border-radius:5px;display:block;margin-left:auto;margin-right:auto}.article-post a{box-shadow:0 -1px rgba(159,168,173,.75)inset;transition:all .1s ease-in-out}.article-post a:hover{box-shadow:0 -1.5rem 1px rgba(159,168,173,.2)inset}.article-post .timestamp{font-style:italic;font-weight:800}.article-post .timestamp::after{content:":"}.article-post code{overflow-x:auto}.article-post h1 .anchor{stroke:var(--link-color);stroke-width:1px;fill:var(--link-color);font-weight:700;left:-.25rem;border-width:0;float:left;line-height:1;margin-left:-20px;padding-right:4px;box-shadow:none;transition:none}.article-post h1 .anchor .icon{visibility:hidden}.article-post h1:hover .anchor{box-shadow:none}.article-post h1:hover .anchor .icon{visibility:visible}.article-post h2 .anchor{stroke:var(--link-color);stroke-width:1px;fill:var(--link-color);font-weight:700;left:-.25rem;border-width:0;float:left;line-height:1;margin-left:-20px;padding-right:4px;box-shadow:none;transition:none}.article-post h2 .anchor .icon{visibility:hidden}.article-post h2:hover .anchor{box-shadow:none}.article-post h2:hover .anchor .icon{visibility:visible}.article-post h3 .anchor{stroke:var(--link-color);stroke-width:1px;fill:var(--link-color);font-weight:700;left:-.25rem;border-width:0;float:left;line-height:1;margin-left:-20px;padding-right:4px;box-shadow:none;transition:none}.article-post h3 .anchor .icon{visibility:hidden}.article-post h3:hover .anchor{box-shadow:none}.article-post h3:hover .anchor .icon{visibility:visible}.article-post h4 .anchor{stroke:var(--link-color);stroke-width:1px;fill:var(--link-color);font-weight:700;left:-.25rem;border-width:0;float:left;line-height:1;margin-left:-20px;padding-right:4px;box-shadow:none;transition:none}.article-post h4 .anchor .icon{visibility:hidden}.article-post h4:hover .anchor{box-shadow:none}.article-post h4:hover .anchor .icon{visibility:visible}.article-post h5 .anchor{stroke:var(--link-color);stroke-width:1px;fill:var(--link-color);font-weight:700;left:-.25rem;border-width:0;float:left;line-height:1;margin-left:-20px;padding-right:4px;box-shadow:none;transition:none}.article-post h5 .anchor .icon{visibility:hidden}.article-post h5:hover .anchor{box-shadow:none}.article-post h5:hover .anchor .icon{visibility:visible}.article-post h6 .anchor{stroke:var(--link-color);stroke-width:1px;fill:var(--link-color);font-weight:700;left:-.25rem;border-width:0;float:left;line-height:1;margin-left:-20px;padding-right:4px;box-shadow:none;transition:none}.article-post h6 .anchor .icon{visibility:hidden}.article-post h6:hover .anchor{box-shadow:none}.article-post h6:hover .anchor .icon{visibility:visible}.article-post .highlight{position:relative}.article-post .highlight:hover .copyCodeButton{opacity:1}.article-post .copyCodeButton{position:absolute;top:35px;right:5px;background:#424242;border:none;box-shadow:0 10px 20px rgba(0,0,0,4%),0 2px 6px rgba(0,0,0,4%),0 0 1px rgba(0,0,0,4%);border-radius:4px;padding:8px 16px;color:rgba(255,255,255,.9);cursor:pointer;font-size:14px;opacity:0;transition:opacity .3s ease}@media screen and (min-width:800px){.article-post{margin-bottom:3rem}.article-post h1,.article-post h2,.article-post h3,.article-post h4,.article-post h5{padding-top:1rem}.post-meta{margin-top:.5rem;padding:.5rem 0}header h1{font-size:3rem;margin-top:2rem}header u{background:linear-gradient(transparent 85%,#bac8ff 0)}.article-header{padding-top:3rem}.article-header h1{padding-top:0;font-size:2.5rem}.article-header .thumb{flex-direction:row}.article-header .description{font-size:1.8rem;line-height:1.5}}@media screen and (min-width:1100px){.article-header h1{font-size:2.5rem}}.post-thumbnail{display:block!important}.disqus-container{padding-top:2rem}#cusdis_thread{padding-top:2rem;height:auto;overflow:visible}#cusdis_thread iframe{height:auto;min-height:500px;width:100%;overflow:visible}.giscus{padding-top:2rem}[data-user-color-scheme=light] code,[data-user-color-scheme=light] pre{font-size:.9rem;font-family:var(--code-font-family);background:#fafafa}[data-user-color-scheme=light] :not(pre)>code{color:var(--dark-font-color);background:var(--light-background)}[data-user-color-scheme=light] code{padding:3px 5px;border-radius:4px;color:#4d4d4d}[data-user-color-scheme=light] pre>code{display:block}[data-user-color-scheme=light] .highlight>.chroma{position:relative;margin:0 0 2rem;border-width:0 1px 1px;border-radius:8px;border-style:solid;border-color:var(--light-background);box-shadow:4px 4px 6px rgba(0,0,0,.125);background:#fafafa;overflow-x:auto}[data-user-color-scheme=light] .highlight>.chroma code{padding:40px 10px 10px}[data-user-color-scheme=light] .highlight>.chroma code[data-lang]::before{position:absolute;top:0;right:0;left:0;padding:2px 10px;width:100%;height:30px;font-size:.9rem;line-height:1.9;font-weight:700;color:#b1b1b1;background:#f2f2f2;content:attr(data-lang)}[data-user-color-scheme=light] .highlight>.chroma table{position:relative;border:none}[data-user-color-scheme=light] .highlight>.chroma table code{padding:0}[data-user-color-scheme=light] .highlight>.chroma .lntd:first-child{width:10px}[data-user-color-scheme=light] .highlight>.chroma .lntd:first-child pre{margin:0;padding:40px 7px 10px}[data-user-color-scheme=light] .highlight>.chroma .lntd:last-child{vertical-align:top}[data-user-color-scheme=light] .highlight>.chroma .lntd:last-child pre{margin:0;padding:40px 10px 10px}[data-user-color-scheme=light] .highlight>.chroma table,[data-user-color-scheme=light] .highlight>.chroma tr,[data-user-color-scheme=light] .highlight>.chroma td{margin:0;padding:0;width:100%;border-collapse:collapse;border:none}[data-user-color-scheme=light] .highlight>.chroma .err{color:#a00;background-color:#faa}[data-user-color-scheme=light] .highlight>.chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}[data-user-color-scheme=light] .highlight>.chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}[data-user-color-scheme=light] .highlight>.chroma .hl{background-color:#ffc}[data-user-color-scheme=light] .highlight>.chroma .lnt{white-space:pre;user-select:none;margin-right:.4em;padding:0 .4em;color:#7f7f7f}[data-user-color-scheme=light] .highlight>.chroma .ln{white-space:pre;user-select:none;margin-right:.4em;padding:0 .4em;color:#7f7f7f}[data-user-color-scheme=light] .highlight>.chroma .line{display:flex}[data-user-color-scheme=light] .highlight>.chroma .k{color:#069;font-weight:700}[data-user-color-scheme=light] .highlight>.chroma .kc{color:#069;font-weight:700}[data-user-color-scheme=light] .highlight>.chroma .kd{color:#069;font-weight:700}[data-user-color-scheme=light] .highlight>.chroma .kn{color:#069;font-weight:700}[data-user-color-scheme=light] .highlight>.chroma .kp{color:#069}[data-user-color-scheme=light] .highlight>.chroma .kr{color:#069;font-weight:700}[data-user-color-scheme=light] .highlight>.chroma .kt{color:#078;font-weight:700}[data-user-color-scheme=light] .highlight>.chroma .na{color:#309}[data-user-color-scheme=light] .highlight>.chroma .nb{color:#386e7c;font-weight:700}[data-user-color-scheme=light] .highlight>.chroma .nc{color:#0a8;font-weight:700}[data-user-color-scheme=light] .highlight>.chroma .no{color:#360}[data-user-color-scheme=light] .highlight>.chroma .nd{color:#99f}[data-user-color-scheme=light] .highlight>.chroma .ni{color:#999;font-weight:700}[data-user-color-scheme=light] .highlight>.chroma .ne{color:#c00;font-weight:700}[data-user-color-scheme=light] .highlight>.chroma .nf{color:#c0f}[data-user-color-scheme=light] .highlight>.chroma .nl{color:#99f}[data-user-color-scheme=light] .highlight>.chroma .nn{color:#0cf;font-weight:700}[data-user-color-scheme=light] .highlight>.chroma .nt{color:#309;font-weight:700}[data-user-color-scheme=light] .highlight>.chroma .nv{color:teal}[data-user-color-scheme=light] .highlight>.chroma .s{color:#c30}[data-user-color-scheme=light] .highlight>.chroma .sa{color:#c30}[data-user-color-scheme=light] .highlight>.chroma .sb{color:#c30}[data-user-color-scheme=light] .highlight>.chroma .sc{color:#c30}[data-user-color-scheme=light] .highlight>.chroma .dl{color:#c30}[data-user-color-scheme=light] .highlight>.chroma .sd{color:#c30;font-style:italic}[data-user-color-scheme=light] .highlight>.chroma .s2{color:#c30}[data-user-color-scheme=light] .highlight>.chroma .se{color:#c30;font-weight:700}[data-user-color-scheme=light] .highlight>.chroma .sh{color:#c30}[data-user-color-scheme=light] .highlight>.chroma .si{color:#a00}[data-user-color-scheme=light] .highlight>.chroma .sx{color:#c30}[data-user-color-scheme=light] .highlight>.chroma .sr{color:#3aa}[data-user-color-scheme=light] .highlight>.chroma .s1{color:#c30}[data-user-color-scheme=light] .highlight>.chroma .ss{color:#ecb100}[data-user-color-scheme=light] .highlight>.chroma .m{color:#f60}[data-user-color-scheme=light] .highlight>.chroma .mb{color:#f60}[data-user-color-scheme=light] .highlight>.chroma .mf{color:#f60}[data-user-color-scheme=light] .highlight>.chroma .mh{color:#f60}[data-user-color-scheme=light] .highlight>.chroma .mi{color:#f60}[data-user-color-scheme=light] .highlight>.chroma .il{color:#f60}[data-user-color-scheme=light] .highlight>.chroma .mo{color:#f60}[data-user-color-scheme=light] .highlight>.chroma .o{color:#555}[data-user-color-scheme=light] .highlight>.chroma .ow{color:#000;font-weight:700}[data-user-color-scheme=light] .highlight>.chroma .c{color:#09f;font-style:italic}[data-user-color-scheme=light] .highlight>.chroma .ch{color:#09f;font-style:italic}[data-user-color-scheme=light] .highlight>.chroma .cm{color:#09f;font-style:italic}[data-user-color-scheme=light] .highlight>.chroma .c1{color:#09f;font-style:italic}[data-user-color-scheme=light] .highlight>.chroma .cs{color:#09f;font-weight:700;font-style:italic}[data-user-color-scheme=light] .highlight>.chroma .cp{color:#099}[data-user-color-scheme=light] .highlight>.chroma .cpf{color:#099}[data-user-color-scheme=light] .highlight>.chroma .gd{background-color:#fcc}[data-user-color-scheme=light] .highlight>.chroma .ge{font-style:italic}[data-user-color-scheme=light] .highlight>.chroma .gr{color:red}[data-user-color-scheme=light] .highlight>.chroma .gh{color:#030;font-weight:700}[data-user-color-scheme=light] .highlight>.chroma .gi{background-color:#cfc}[data-user-color-scheme=light] .highlight>.chroma .go{color:#aaa}[data-user-color-scheme=light] .highlight>.chroma .gp{color:#009;font-weight:700}[data-user-color-scheme=light] .highlight>.chroma .gs{font-weight:700}[data-user-color-scheme=light] .highlight>.chroma .gu{color:#030;font-weight:700}[data-user-color-scheme=light] .highlight>.chroma .gt{color:#9c6}[data-user-color-scheme=light] .highlight>.chroma .gl{text-decoration:underline}[data-user-color-scheme=light] .highlight>.chroma .w{color:#bbb}[data-user-color-scheme=dark] code,[data-user-color-scheme=dark] pre{font-size:.9rem;font-family:var(--code-font-family);background:#2d2d2d}[data-user-color-scheme=dark] :not(pre)>code{color:var(--dark-font-color);background:var(--light-background)}[data-user-color-scheme=dark] code{padding:3px 5px;border-radius:4px;color:#adb7b7}[data-user-color-scheme=dark] pre>code{display:block}[data-user-color-scheme=dark] .highlight>.chroma{position:relative;margin:0 0 2rem;border-width:0 1px 1px;border-radius:8px;border-style:solid;border-color:var(--light-background);box-shadow:2px 2px 10px var(--light-background-hover);background:#2d2d2d;overflow-x:auto}[data-user-color-scheme=dark] .highlight>.chroma code{padding:40px 10px 10px}[data-user-color-scheme=dark] .highlight>.chroma code[data-lang]::before{position:absolute;top:0;right:0;left:0;padding:2px 10px;width:100%;height:30px;font-size:.9rem;line-height:1.9;font-weight:700;color:#b1b1b1;background:#252525;content:attr(data-lang)}[data-user-color-scheme=dark] .highlight>.chroma table{position:relative;border:none}[data-user-color-scheme=dark] .highlight>.chroma table code{padding:0}[data-user-color-scheme=dark] .highlight>.chroma .lntd:first-child{width:10px}[data-user-color-scheme=dark] .highlight>.chroma .lntd:first-child pre{margin:0;padding:40px 7px 10px}[data-user-color-scheme=dark] .highlight>.chroma .lntd:last-child{vertical-align:top}[data-user-color-scheme=dark] .highlight>.chroma .lntd:last-child pre{margin:0;padding:40px 10px 10px}[data-user-color-scheme=dark] .highlight>.chroma table,[data-user-color-scheme=dark] .highlight>.chroma tr,[data-user-color-scheme=dark] .highlight>.chroma td{margin:0;padding:0;width:100%;border-collapse:collapse;border:none}[data-user-color-scheme=dark] .highlight>.chroma .x{color:#cb4b16}[data-user-color-scheme=dark] .highlight>.chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}[data-user-color-scheme=dark] .highlight>.chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}[data-user-color-scheme=dark] .highlight>.chroma .hl{background-color:#ffc}[data-user-color-scheme=dark] .highlight>.chroma .lnt{white-space:pre;user-select:none;margin-right:.4em;padding:0 .4em;color:#495050}[data-user-color-scheme=dark] .highlight>.chroma .ln{white-space:pre;user-select:none;margin-right:.4em;padding:0 .4em;color:#495050}[data-user-color-scheme=dark] .highlight>.chroma .line{display:flex}[data-user-color-scheme=dark] .highlight>.chroma .k{color:#719e07}[data-user-color-scheme=dark] .highlight>.chroma .kc{color:#cb4b16}[data-user-color-scheme=dark] .highlight>.chroma .kd{color:#268bd2}[data-user-color-scheme=dark] .highlight>.chroma .kn{color:#719e07}[data-user-color-scheme=dark] .highlight>.chroma .kp{color:#719e07}[data-user-color-scheme=dark] .highlight>.chroma .kr{color:#268bd2}[data-user-color-scheme=dark] .highlight>.chroma .kt{color:#dc322f}[data-user-color-scheme=dark] .highlight>.chroma .nb{color:#edb400}[data-user-color-scheme=dark] .highlight>.chroma .bp{color:#268bd2}[data-user-color-scheme=dark] .highlight>.chroma .nc{color:#268bd2}[data-user-color-scheme=dark] .highlight>.chroma .no{color:#cb4b16}[data-user-color-scheme=dark] .highlight>.chroma .nd{color:#268bd2}[data-user-color-scheme=dark] .highlight>.chroma .ni{color:#cb4b16}[data-user-color-scheme=dark] .highlight>.chroma .ne{color:#cb4b16}[data-user-color-scheme=dark] .highlight>.chroma .nf{color:#268bd2}[data-user-color-scheme=dark] .highlight>.chroma .nt{color:#268bd2}[data-user-color-scheme=dark] .highlight>.chroma .nv{color:#268bd2}[data-user-color-scheme=dark] .highlight>.chroma .s{color:#2aa198}[data-user-color-scheme=dark] .highlight>.chroma .sa{color:#2aa198}[data-user-color-scheme=dark] .highlight>.chroma .sb{color:#586e75}[data-user-color-scheme=dark] .highlight>.chroma .sc{color:#2aa198}[data-user-color-scheme=dark] .highlight>.chroma .dl{color:#2aa198}[data-user-color-scheme=dark] .highlight>.chroma .s2{color:#2aa198}[data-user-color-scheme=dark] .highlight>.chroma .se{color:#cb4b16}[data-user-color-scheme=dark] .highlight>.chroma .si{color:#2aa198}[data-user-color-scheme=dark] .highlight>.chroma .sx{color:#2aa198}[data-user-color-scheme=dark] .highlight>.chroma .sr{color:#dc322f}[data-user-color-scheme=dark] .highlight>.chroma .s1{color:#2aa198}[data-user-color-scheme=dark] .highlight>.chroma .ss{color:#2aa198}[data-user-color-scheme=dark] .highlight>.chroma .m{color:#2aa198}[data-user-color-scheme=dark] .highlight>.chroma .mb{color:#2aa198}[data-user-color-scheme=dark] .highlight>.chroma .mf{color:#2aa198}[data-user-color-scheme=dark] .highlight>.chroma .mh{color:#2aa198}[data-user-color-scheme=dark] .highlight>.chroma .mi{color:#2aa198}[data-user-color-scheme=dark] .highlight>.chroma .il{color:#2aa198}[data-user-color-scheme=dark] .highlight>.chroma .mo{color:#2aa198}[data-user-color-scheme=dark] .highlight>.chroma .o{color:#719e07}[data-user-color-scheme=dark] .highlight>.chroma .ow{color:#719e07}[data-user-color-scheme=dark] .highlight>.chroma .c{color:#586e75}[data-user-color-scheme=dark] .highlight>.chroma .ch{color:#586e75}[data-user-color-scheme=dark] .highlight>.chroma .cm{color:#586e75}[data-user-color-scheme=dark] .highlight>.chroma .c1{color:#586e75}[data-user-color-scheme=dark] .highlight>.chroma .cs{color:#719e07}[data-user-color-scheme=dark] .highlight>.chroma .cp{color:#719e07}[data-user-color-scheme=dark] .highlight>.chroma .cpf{color:#719e07}[data-user-color-scheme=dark] .highlight>.chroma .gd{color:#dc322f}[data-user-color-scheme=dark] .highlight>.chroma .ge{font-style:italic}[data-user-color-scheme=dark] .highlight>.chroma .gr{color:#dc322f;font-weight:700}[data-user-color-scheme=dark] .highlight>.chroma .gh{color:#cb4b16}[data-user-color-scheme=dark] .highlight>.chroma .gi{color:#719e07}[data-user-color-scheme=dark] .highlight>.chroma .gs{font-weight:700}[data-user-color-scheme=dark] .highlight>.chroma .gu{color:#268bd2}.side{width:270px;border-radius:7px;padding:7px;margin:.2em auto}.side p{margin:0}@media(max-width:1280px){.side{width:100%;padding:0 2em}}.side-right{float:right;clear:right;margin-right:calc(-270px - 2em);background-color:var(--background);transition:70ms ease}.side-right p{font-size:.9rem}@media(max-width:1280px){.side-right{float:none;clear:both;margin:1em auto;background:0 0}}.footnotes ol li p{margin:0}.footnotes hr{border:none;border-top:1px solid var(--border)}.footnote-ref{box-shadow:none!important}.footnote-backref{box-shadow:none!important}.note-ref{cursor:pointer;border:none;box-shadow:none!important}.note-ref:hover{box-shadow:none;border:none}@media(min-width:1280px){.note-ref:hover~.side{margin-right:calc(-270px - 1.5em);background:var(--light-background-hover)}}.bg-number{background:var(--light-background);font-size:.9rem;color:var(--font-color);text-decoration:none;padding:1px 5px;border-radius:5px}.suggested{flex-direction:column;align-items:stretch;margin-left:-1rem;margin-right:-1rem;padding:0}.suggested span{font-weight:400;display:block;font-size:.9rem;color:var(--transparent-text)}.suggested a{background:0 0;margin:.5rem 1rem;border-bottom:none;transition:all .2s ease;padding:1.5rem;border-radius:.35rem;background:var(--light-background);color:var(--heading-color)}.suggested a:hover{transform:translate3D(0,-1px,0);background:var(--light-background-hover)}@media screen and (min-width:800px){.suggested{flex-direction:row}.suggested a{flex:0 0 calc(50% - 2rem)}.suggested a:first-of-type{text-align:right}}.projects .project:last-of-type{border-bottom-width:0}.project{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0;border-bottom:2px solid var(--light-background)}.project .icon{font-size:1.5rem;width:40px}.project a{display:flex;align-items:center;margin-bottom:.25rem;border-width:0}.project a:hover h3{text-decoration:underline}.project a.button{margin-left:1.5rem;border-width:2px}.project h3{font-size:1.2rem;margin:0}.project .description{font-size:1.1rem;color:var(--light-font-color)}@media screen and (min-width:800px){.project{border-bottom-width:0}.project h3{font-size:1.3rem}.project .description{font-size:1rem}}.terms{display:flex;flex-wrap:wrap}.terms a{padding:.75rem 1.25rem;margin:.25rem;font-size:1.2rem;font-weight:400;color:var(--font-color);border-radius:.35rem}.terms a:hover{background:var(--light-background);color:var(--dark-font-color)}.row{display:flex;flex-flow:row nowrap}.column{flex:1;margin:0 .5rem;text-indent:.75rem}.column .container{padding-left:0}.column a{padding:.5rem 1rem;margin:.15rem;font-size:1rem;border-radius:.25rem}@media screen and (max-width:600px){.row{display:block}}.pagination{display:flex}.pagination .prev-page,.pagination .next-page{flex-grow:1;flex-shrink:1;display:flex}.pagination .next-page{justify-content:flex-end}.pagination a{border-radius:.35rem;padding:.75rem 1.25rem;margin:0 .25rem;font-size:1.2rem;font-weight:400;color:var(--font-color)}.pagination a:hover,.pagination a[aria-current=page]{background:var(--light-background);color:var(--dark-font-color)}.shortcode{display:flex;align-items:center;margin:12px 5px;border:1px;border-radius:7px;border-style:solid;border-color:var(--light-background-hover);box-shadow:4px 4px 2px var(--light-background-hover)}.shortcode-text{padding:1rem 1.5rem 1rem 0;text-align:justify}.icon svg{display:flex;height:1.5rem;margin:auto 1.2rem}.shortcode-alert svg path{fill:var(--link-color)}#TableOfContents-container{margin:0 0 24px;border-width:1px;border-radius:5px;border-style:solid;border-color:var(--light-background);box-shadow:2px 3px 6px var(--border)}#TableOfContents-header{font-family:sans;font-size:1.1rem;font-weight:700;padding:.8rem 1.2rem;background-color:var(--light-background)}#TableOfContents{padding:1.8rem 0 1.8px 3.7rem;line-height:2}.BackLinksDiv{margin:2rem 6rem;margin-top:3rem;border-width:3px;border-radius:8px;border-style:solid;border-color:var(--light-background);box-shadow:0 .125rem .25rem rgba(0,0,0,.1),0 .25rem .5rem rgba(0,0,0,.1),0 .5rem 1rem rgba(0,0,0,.1);background-color:var(--light-background);padding:.8rem 1.5rem;font-size:.85rem}@media(max-width:768px){.BackLinksDiv{margin-left:auto;margin-right:auto}}.BackLinksDiv h1{margin:5px auto;margin-bottom:10px}.BackLinksDiv p{margin:3px;padding-bottom:.5rem}#BackLinksList{margin-left:1rem;margin-bottom:1.2rem;padding-left:1rem;font-size:.95rem}.OthersInSeriesDiv p,ol,ul,dl,table,blockquote{font-size:.95rem}