*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html,body{margin:0;padding:0}html{font-family:helvetica neue,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5}@media(min-width:38em){html{font-size:20px}}body{color:#515151;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a{color:var(--link-color);text-decoration:none}a:hover,a:focus{text-decoration:underline}h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;font-weight:400;line-height:1.25;color:#313131;text-rendering:optimizeLegibility}h1{font-size:2rem}h2{margin-top:1rem;font-size:1.5rem}h3{margin-top:1.5rem;font-size:1.25rem}h4,h5,h6{margin-top:1rem;font-size:1rem}p{margin-top:0;margin-bottom:1rem}strong{color:#303030}ul,ol,dl{margin-top:0;margin-bottom:1rem}dt{font-weight:700}dd{margin-bottom:.5rem}hr{position:relative;margin:1.5rem 0;border:0;border-top:2px solid #ccc;border-bottom:1px solid #fff}abbr{font-size:85%;font-weight:700;color:#555;text-transform:uppercase}abbr[title]{cursor:help;border-bottom:1px dotted #e5e5e5}code,pre{font-family:Menlo,Monaco,courier new,monospace}code{padding:.25em .5em;font-size:85%;color:#bf616a;background-color:#f9f9f9;border-radius:3px}pre{display:block;margin-top:0;margin-bottom:1rem;padding:1rem;font-size:.8rem;line-height:1.4;white-space:pre;white-space:pre-wrap;word-break:break-all;word-wrap:break-word;background-color:#f9f9f9}pre code{padding:0;font-size:100%;color:inherit;background-color:transparent}.highlight{margin-bottom:1rem;border-radius:4px}.highlight pre{margin-bottom:0}blockquote{padding:.5rem 1rem;margin:.8rem 0;color:#7a7a7a;border-left:.25rem solid #e5e5e5}blockquote p:last-child{margin-bottom:0}@media(min-width:30em){blockquote{padding-right:5rem;padding-left:1.25rem}.container{margin-right:auto}}img{display:block;margin:0 0 1rem;border-radius:5px;max-width:100%;height:auto}.lead{font-size:1.25rem;font-weight:300}.message{margin-bottom:1rem;padding:1rem;color:#717171;background-color:#f9f9f9}.container{max-width:38rem;padding-left:1rem;padding-right:1rem}.masthead{padding-top:1rem;padding-bottom:1rem;margin-bottom:3rem}.masthead-title{margin-top:0;margin-bottom:0;color:#505050}.masthead-title a{color:#505050}.masthead-title small{font-size:75%;font-weight:400;color:silver;letter-spacing:0}.page,.post{margin-bottom:4em}.page-title,.post-title,.post-title a{color:#303030}.page-title,.post-title{margin-top:0}.post-date{display:block;margin-top:-.5rem;margin-bottom:1rem;color:#9a9a9a}.related{padding-top:2rem;padding-bottom:2rem;border-top:1px solid #eee}.related-posts{padding-left:0;list-style:none}.related-posts h3{margin-top:0}.related-posts li small{font-size:75%;color:#999}.related-posts li a:hover{color:#268bd2;text-decoration:none}.related-posts li a:hover small{color:inherit}.comments{margin-top:3em}.pagination{overflow:hidden;margin-left:-1rem;margin-right:-1rem;font-family:pt sans,Helvetica,Arial,sans-serif;color:#ccc;text-align:center}.pagination-item{display:block;padding:1rem;border:1px solid #eee}.pagination-item:first-child{margin-bottom:-1px}a.pagination-item:hover{background-color:#f5f5f5}@media(min-width:30em){.pagination{margin:3rem 0}.pagination-item{float:left;width:50%}.pagination-item:first-child{margin-bottom:0;border-top-left-radius:4px;border-bottom-left-radius:4px}.pagination-item:last-child{margin-left:-1px;border-top-right-radius:4px;border-bottom-right-radius:4px}}.copy-success{background:0 0;border:none;background-image:url(/icons/copy_success.svg);width:24px;height:24px;background-size:contain;background-repeat:no-repeat;background-position:50%;position:absolute;top:0;right:0;z-index:10}.copy-button{background:0 0;border:none;width:24px;height:24px;background-image:url(/icons/copy_content.svg);background-size:contain;background-repeat:no-repeat;background-position:50%;position:absolute;top:0;right:0;z-index:10;padding:10px;cursor:pointer;transition:opacity .3s ease}.copy-button:hover{opacity:.8}.copy-button:active{transform:scale(.95);opacity:.7}.code-container{position:relative;display:inline-block;width:100%}.hll{background-color:#ffc}.c{color:#999}.err{color:#a00;background-color:#faa}.k{color:#069}.o{color:#555}.cm{color:#09f;font-style:italic}.cp{color:#099}.c1{color:#999}.cs{color:#999}.gd{background-color:#fcc;border:1px solid #c00}.ge{font-style:italic}.gr{color:red}.gh{color:#030}.gi{background-color:#cfc;border:1px solid #0c0}.go{color:#aaa}.gp{color:#009}.gs{}.gu{color:#030}.gt{color:#9c6}.kc{color:#069}.kd{color:#069}.kn{color:#069}.kp{color:#069}.kr{color:#069}.kt{color:#078}.m{color:#f60}.s{color:#d44950}.na{color:#4f9fcf}.nb{color:#366}.nc{color:#0a8}.no{color:#360}.nd{color:#99f}.ni{color:#999}.ne{color:#c00}.nf{color:#c0f}.nl{color:#99f}.nn{color:#0cf}.nt{color:#2f6f9f}.nv{color:#033}.ow{color:#000}.w{color:#bbb}.mf{color:#f60}.mh{color:#f60}.mi{color:#f60}.mo{color:#f60}.sb{color:#c30}.sc{color:#c30}.sd{color:#c30;font-style:italic}.s2{color:#c30}.se{color:#c30}.sh{color:#c30}.si{color:#a00}.sx{color:#c30}.sr{color:#3aa}.s1{color:#c30}.ss{color:#fc3}.bp{color:#366}.vc{color:#033}.vg{color:#033}.vi{color:#033}.il{color:#f60}.css .o,.css .o+.nt,.css .nt+.nt{color:#999}html{font-family:fira sans,sans-serif;font-weight:300}@media(min-width:48em){html{font-size:16px}}@media(min-width:58em){html{font-size:20px}}pre{tab-size:4}.sidebar{text-align:center;padding:2rem 1rem;color:rgba(255,255,255,.5);flex-shrink:0}@media(min-width:48em){.sidebar{top:0;left:0;bottom:0;width:18rem;text-align:left;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#464646 auto}::-webkit-scrollbar{width:7px}::-webkit-scrollbar-track{background:0 0;border-radius:10px}::-webkit-scrollbar-thumb{background-color:#464646;border-radius:10px}::-webkit-scrollbar-thumb:hover{background-color:#969696}}.sidebar a,li{color:var(--sidebar-a-color)}.sidebar-about{text-align:center;color:var(--sidebar-p-color)}.sidebar-about h1{color:var(--sidebar-h1-color);margin-top:0;font-weight:300;font-size:1.5em;font-family:abril fatface,serif}.sidebar-nav{margin-top:2rem;margin-bottom:2rem;padding-left:0;list-style:none}.subnav{list-style:none;padding-left:0}.sidebar-nav-item{display:block}a.sidebar-nav-item:hover,a.sidebar-nav-item:focus{text-decoration:underline}.sidebar-nav-item.active{font-weight:700}@media(min-width:48em){.sidebar-sticky{top:1rem;width:16rem}}.content{padding-top:2rem;padding-bottom:2rem}@media(min-width:48em){.content{max-width:38rem;margin-left:2rem;margin-right:1.75rem}}@media(min-width:64em){.content{max-width:44rem;margin-left:2rem;margin-right:1.75rem}}.footnote{font-size:.7em;margin-top:.5rem;color:var(--sidebar-p-color)}.go{color:#444}.badge{display:inline;vertical-align:bottom}.badges{float:right}.brand{font-size:4em;margin-bottom:0}@media(min-width:48em){.content{max-width:38rem;margin-left:1.75rem;margin-right:2rem}}@media(min-width:64em){.content{max-width:44rem;margin-left:1.75rem;margin-right:2rem}}.theme-base-08 .sidebar{background-color:#ac4142}.theme-base-08 .content a,.theme-base-08 .related-posts li a:hover{color:#ac4142}.theme-base-09 .sidebar{background-color:#d28445}.theme-base-09 .content a,.theme-base-09 .related-posts li a:hover{color:#d28445}.theme-base-0a .sidebar{background-color:#f4bf75}.theme-base-0a .content a,.theme-base-0a .related-posts li a:hover{color:#f4bf75}.theme-base-0b .sidebar{background-color:#90a959}.theme-base-0b .content a,.theme-base-0b .related-posts li a:hover{color:#90a959}.theme-base-0c .sidebar{background-color:#75b5aa}.theme-base-0c .content a,.theme-base-0c .related-posts li a:hover{color:#75b5aa}.theme-base-0d .sidebar{background-color:#6a9fb5}.theme-base-0d .content a,.theme-base-0d .related-posts li a:hover{color:#6a9fb5}.theme-base-0e .sidebar{background-color:#aa759f}.theme-base-0e .content a,.theme-base-0e .related-posts li a:hover{color:#aa759f}.theme-base-0f .sidebar{background-color:#8f5536}.theme-base-0f .content a,.theme-base-0f .related-posts li a:hover{color:#8f5536}body.layout-reverse .container.content{direction:rtl}body.layout-reverse .wrapper{justify-content:flex-end;flex-direction:row-reverse}.sub-heading{color:var(--sidebar-p-color)}@media(min-width:48em){.bullet{margin-left:1em;text-decoration-line:underline;text-decoration-style:dotted;text-decoration-thickness:1%}.sub-heading{margin-left:1em}.btn-light-dark svg{margin:auto;width:20px;height:20px;color:#000}.container.content{overflow-y:auto;padding-right:2rem;flex-grow:1}}@media(max-width:48em){body>.wrapper,body.layout-reverse .wrapper{flex-direction:column}body{overflow:auto !important;height:auto !important}.heading{font-weight:400}.entries{padding-left:0}.btn-light-dark svg{margin:auto;width:20px;height:20px;color:#000}}h1,h2,h3,h4,h5,strong{color:var(--text-color)}.content div,p,table{color:var(--text-color)}.page-title,.post-title,.post-title a{color:var(--post-title-color)}.content li,li>p{color:var(--list-color)}.content code{color:var(--code-color);background-color:var(--code-background-color) !important}.content a code{color:var(--link-color)}.content pre{color:var(--code-block-color);background-color:var(--code-block-background-color) !important}.content pre code{color:var(--code-block-color);background-color:transparent !important}.btn-light-dark .moon{color:var(--moon-sun-color)}.btn-light-dark .sun{color:var(--moon-sun-color)}.btn-light-dark{padding:0;margin:1em;border-radius:50%;border:none;cursor:pointer;text-align:center;width:40px;height:40px;background-color:var(--moon-sun-background-color)}body{overflow:hidden;height:100vh}body>.wrapper{display:flex;height:100%}.container.content{overflow-y:auto;flex-grow:1}.layout-reverse .container.content{padding-right:0;padding-left:2rem}.container.content::-webkit-scrollbar{width:3px}.container.content::-webkit-scrollbar-thumb{border-radius:1.5px}.container.content::-webkit-scrollbar-track{margin:5.5em 0}.sidebar{background-color:var(--sidebar-bg-color)}.lead{text-align:center;color:var(--sidebar-p-color)}.sidebar-about img{margin-left:auto;margin-right:auto;text-align:center;border:2px solid var(--sidebar-img-border-color);border-radius:50%;height:180px;width:180px}.social{margin-right:.5em;text-decoration:none !important;color:var(--sidebar-socials-color) !important}.heading{margin-top:1em}.post-date{display:inline-block;color:var(--date-color)}.info span{display:inline-block}.info ul{display:inline-block;float:right}.info ul li{margin-left:.5em}.headline{display:flex;justify-content:space-between;align-items:center;align-content:center}.reading-time{color:gray;font-style:italic}.newsletters .help-block-for-success{display:none;margin:.25rem 1rem .25rem 0;text-align:center;color:green}.newsletters .help-block-for-error{display:none;margin:.25rem 1rem .25rem 0;text-align:center;color:#de0928}.newsletters .help-block-show{display:block}.newsletters form{display:flex;align-content:center;justify-content:center;flex-flow:row wrap}.newsletters .email-subscription-form-hide{display:none}.newsletters label{margin:.25rem 1rem .25rem 0;text-align:center}.newsletters input{margin:.25rem 1rem .25rem 0;font-size:.75rem;padding:.25rem .5rem;border:1px solid var(--text-color);border-radius:.25rem}.newsletters input:focus-visible{outline:none}.newsletters button{background-color:transparent;color:var(--text-color);padding:.25rem .5rem;border-radius:.25rem;border:1px solid var(--text-color);font-family:inherit;font-size:.85rem;cursor:pointer;margin:.25rem 0}.tags{padding-left:0}.tags li{display:inline;text-decoration:none}.tags li a{color:var(--table-stripe-color);display:inline-block;padding:0 .7em;text-align:center;font-size:.7em;background-color:var(--list-color);border-radius:.2em}table{margin-bottom:1rem;width:100%;border:1px solid var(--table-border-color);border-collapse:collapse}td,th{padding:.25rem .5rem;border:1px solid var(--table-border-color)}tbody tr:nth-child(odd) td,tbody tr:nth-child(odd) th{background-color:var(--table-stripe-color)}.entries li{display:flex}.entries li .title{order:1}.entries li .published{order:3}.entries li::after{background-image:radial-gradient(circle,currentcolor 1px,transparent 1.5px);background-position:bottom;background-size:1ex 3.5px;background-repeat:space no-repeat;content:"";flex-grow:1;height:1.1em;order:2}.article-toc{display:none;font-size:.9em;width:20em;margin-top:5em;overflow-y:auto;line-height:1.4em;max-height:85%}.article-toc .toc-wrapper{position:fixed}.article-toc nav{margin-left:1em}.article-toc h4{margin-left:0}.article-toc ul{margin-bottom:0;padding:0}.article-toc li{list-style:none;margin-left:20px;margin-top:2px}.article-toc li a{color:var(--text-color);text-decoration:none}.article-toc li.active{font-weight:700}.article-toc li.inactive{font-weight:300}@media screen and (min-width:100em){.article-toc{display:block}}.next-post{text-align:right;float:right}.previous-post{float:left}.content pre code{white-space:pre}div.highlight pre{overflow-x:auto}#page-nav{text-align:center}#page-nav a{margin:0 .2em}#page-nav span{margin:0 .2em}.next{float:right;display:inline}.prev{float:left;display:inline}.current{color:var(--text-color)}@font-face{font-family:fira sans;font-style:normal;font-weight:300;src:local(''),url(/fonts/fira-sans-v16-latin-300.woff2)format('woff2'),url(/fonts/fira-sans-v16-latin-300.woff)format('woff')}@font-face{font-family:fira sans;font-style:italic;font-weight:300;src:local(''),url(/fonts/fira-sans-v16-latin-300italic.woff2)format('woff2'),url(/fonts/fira-sans-v16-latin-300italic.woff)format('woff')}@font-face{font-family:fira sans;font-style:normal;font-weight:400;src:local(''),url(/fonts/fira-sans-v16-latin-regular.woff2)format('woff2'),url(/fonts/fira-sans-v16-latin-regular.woff)format('woff')}@font-face{font-family:fira sans;font-style:italic;font-weight:400;src:local(''),url(/fonts/fira-sans-v16-latin-italic.woff2)format('woff2'),url(/fonts/fira-sans-v16-latin-italic.woff)format('woff')}@font-face{font-family:pt sans;font-style:normal;font-weight:400;src:local(''),url(/fonts/pt-sans-v17-latin-regular.woff2)format('woff2'),url(/fonts/pt-sans-v17-latin-regular.woff)format('woff')}@font-face{font-family:pt sans;font-style:italic;font-weight:400;src:local(''),url(/fonts/pt-sans-v17-latin-italic.woff2)format('woff2'),url(/fonts/pt-sans-v17-latin-italic.woff)format('woff')}@font-face{font-family:pt sans;font-style:normal;font-weight:700;src:local(''),url(/fonts/pt-sans-v17-latin-700.woff2)format('woff2'),url(/fonts/pt-sans-v17-latin-700.woff)format('woff')}@font-face{font-family:pt sans;font-style:italic;font-weight:700;src:local(''),url(/fonts/pt-sans-v17-latin-700italic.woff2)format('woff2'),url(/fonts/pt-sans-v17-latin-700italic.woff)format('woff')}@font-face{font-family:abril fatface;font-style:normal;font-weight:400;src:local(''),url(/fonts/abril-fatface-v19-latin-regular.woff2)format('woff2'),url(/fonts/abril-fatface-v19-latin-regular.woff)format('woff')}@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(fonts/KaTeX_AMS-Regular.woff2)format("woff2"),url(fonts/KaTeX_AMS-Regular.woff)format("woff"),url(fonts/KaTeX_AMS-Regular.ttf)format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Caligraphic-Bold.woff2)format("woff2"),url(fonts/KaTeX_Caligraphic-Bold.woff)format("woff"),url(fonts/KaTeX_Caligraphic-Bold.ttf)format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Caligraphic-Regular.woff2)format("woff2"),url(fonts/KaTeX_Caligraphic-Regular.woff)format("woff"),url(fonts/KaTeX_Caligraphic-Regular.ttf)format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Fraktur-Bold.woff2)format("woff2"),url(fonts/KaTeX_Fraktur-Bold.woff)format("woff"),url(fonts/KaTeX_Fraktur-Bold.ttf)format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Fraktur-Regular.woff2)format("woff2"),url(fonts/KaTeX_Fraktur-Regular.woff)format("woff"),url(fonts/KaTeX_Fraktur-Regular.ttf)format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Main-Bold.woff2)format("woff2"),url(fonts/KaTeX_Main-Bold.woff)format("woff"),url(fonts/KaTeX_Main-Bold.ttf)format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(fonts/KaTeX_Main-BoldItalic.woff2)format("woff2"),url(fonts/KaTeX_Main-BoldItalic.woff)format("woff"),url(fonts/KaTeX_Main-BoldItalic.ttf)format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(fonts/KaTeX_Main-Italic.woff2)format("woff2"),url(fonts/KaTeX_Main-Italic.woff)format("woff"),url(fonts/KaTeX_Main-Italic.ttf)format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Main-Regular.woff2)format("woff2"),url(fonts/KaTeX_Main-Regular.woff)format("woff"),url(fonts/KaTeX_Main-Regular.ttf)format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(fonts/KaTeX_Math-BoldItalic.woff2)format("woff2"),url(fonts/KaTeX_Math-BoldItalic.woff)format("woff"),url(fonts/KaTeX_Math-BoldItalic.ttf)format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(fonts/KaTeX_Math-Italic.woff2)format("woff2"),url(fonts/KaTeX_Math-Italic.woff)format("woff"),url(fonts/KaTeX_Math-Italic.ttf)format("truetype")}@font-face{font-family:katex_sansserif;font-style:normal;font-weight:700;src:url(fonts/KaTeX_SansSerif-Bold.woff2)format("woff2"),url(fonts/KaTeX_SansSerif-Bold.woff)format("woff"),url(fonts/KaTeX_SansSerif-Bold.ttf)format("truetype")}@font-face{font-family:katex_sansserif;font-style:italic;font-weight:400;src:url(fonts/KaTeX_SansSerif-Italic.woff2)format("woff2"),url(fonts/KaTeX_SansSerif-Italic.woff)format("woff"),url(fonts/KaTeX_SansSerif-Italic.ttf)format("truetype")}@font-face{font-family:katex_sansserif;font-style:normal;font-weight:400;src:url(fonts/KaTeX_SansSerif-Regular.woff2)format("woff2"),url(fonts/KaTeX_SansSerif-Regular.woff)format("woff"),url(fonts/KaTeX_SansSerif-Regular.ttf)format("truetype")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Script-Regular.woff2)format("woff2"),url(fonts/KaTeX_Script-Regular.woff)format("woff"),url(fonts/KaTeX_Script-Regular.ttf)format("truetype")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size1-Regular.woff2)format("woff2"),url(fonts/KaTeX_Size1-Regular.woff)format("woff"),url(fonts/KaTeX_Size1-Regular.ttf)format("truetype")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size2-Regular.woff2)format("woff2"),url(fonts/KaTeX_Size2-Regular.woff)format("woff"),url(fonts/KaTeX_Size2-Regular.ttf)format("truetype")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size3-Regular.woff2)format("woff2"),url(fonts/KaTeX_Size3-Regular.woff)format("woff"),url(fonts/KaTeX_Size3-Regular.ttf)format("truetype")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size4-Regular.woff2)format("woff2"),url(fonts/KaTeX_Size4-Regular.woff)format("woff"),url(fonts/KaTeX_Size4-Regular.ttf)format("truetype")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Typewriter-Regular.woff2)format("woff2"),url(fonts/KaTeX_Typewriter-Regular.woff)format("woff"),url(fonts/KaTeX_Typewriter-Regular.ttf)format("truetype")}.katex{text-rendering:auto;font:1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0}.katex *{-ms-high-contrast-adjust:none !important;border-color:initial}.katex .katex-version:after{content:"0.16.3"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.27777778em;margin-right:-.55555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.83333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.16666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.33333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.66666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.45666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.14666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.71428571em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.85714286em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.14285714em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.28571429em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.42857143em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.71428571em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.05714286em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.46857143em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.96285714em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.55428571em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.55555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.66666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.77777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.88888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.11111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.33333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.30444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.76444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.41666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.58333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.66666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.83333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.72833333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.07333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.34722222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.41666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.48611111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.55555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.69444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.83333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.44027778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.72777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.28935185em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.34722222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.40509259em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.46296296em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.52083333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.69444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.83333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.20023148em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.43981481em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.24108004em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.28929605em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.33751205em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.38572806em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.43394407em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.48216008em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.57859209em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.69431051em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.83317261em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.19961427em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.20096463em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.24115756em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.28135048em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.32154341em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.36173633em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.40192926em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.48231511em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.57877814em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.69453376em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.83360129em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo)")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo)")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.tabs{overflow:hidden;border-bottom:1px solid var(--text-color)}@media(min-width:48em){.tabs button{font-family:Menlo,Monaco,courier new,monospace;font-size:.8em;background-color:var(--bkg-color);color:var(--text-color);float:left;border-top:1px solid var(--text-color);border-right:1px solid var(--text-color);border-bottom:none;border-left:1px solid var(--text-color);border-radius:5px 5px 0 0;margin:0 .2em 0 0;outline:none;cursor:pointer;padding:.5em 1em;transition:.3s}}@media(max-width:48em){.tabs button{font-family:Menlo,Monaco,courier new,monospace;font-size:.8em;background-color:var(--bkg-color);color:var(--text-color);float:left;border-top:1px solid var(--text-color);border-right:1px solid var(--text-color);border-bottom:none;border-left:1px solid var(--text-color);border-radius:5px 5px 0 0;margin:0 .2em 0 0;outline:none;cursor:pointer;padding:.7em 1.3em;transition:.3s}}.tabs button:hover{background-color:#ddd;color:var(--dark-gray)}.tabs button.active{background-color:#ccc;color:#000}.tabcontent{display:none;padding-top:.2em}code,pre{font-family:JetBrains Mono,Menlo,Monaco,courier new,monospace}@font-face{font-display:swap;font-family:fjalla one;font-style:normal;font-weight:400;src:url(../fonts/fjalla-one-v15-latin-regular.woff2)format("woff2")}@font-face{font-display:swap;font-family:jetbrains mono;font-style:normal;font-weight:400;src:url(../fonts/jetbrains-mono-v20-latin-regular.woff2)format("woff2")}body,p,div,span,li,a:not(.sidebar-nav-item||.post-title||.page-title){font-family:inter,sans-serif}html{font-family:inter,sans-serif}h1,h2,h3,h4,h5,h6,.post-title,.page-title,.masthead-title{font-family:quicksand,sans-serif !important;font-weight:600 !important}.sidebar-about h1{font-family:quicksand,sans-serif !important;font-weight:600;text-shadow:0 2px 4px rgba(0,0,0,.3);color:var(--sidebar-h1-color) !important;transition:color .2s ease;transform:translateZ(0);will-change:color}.sidebar,.sidebar *,.sidebar-about,.sidebar-about *,.sidebar-nav,.sidebar-nav *,.sidebar-nav-item,.sidebar-nav a,.lead,.social{font-family:quicksand,sans-serif !important;font-weight:500 !important}.sidebar-about h1{font-weight:600 !important}.sidebar-about p,.lead{font-weight:400 !important}.collapsible-header{cursor:pointer !important;user-select:none !important;transition:all .3s ease !important;display:flex !important;align-items:center !important}.collapsible-header:hover{background:rgba(255,255,255,.1) !important;border-radius:4px !important;padding:4px 8px !important;margin:-4px -8px !important}.toggle-icon{display:inline-block !important;margin-right:8px !important;transition:all .3s ease !important;font-size:.8em !important;font-family:monospace !important;color:var(--sidebar-p-color) !important}.collapsible-content{overflow:hidden !important;transition:all .3s ease !important;list-style:none !important;padding:0 !important;margin:0 !important}.collapsible-content.collapsed{max-height:0 !important;opacity:0 !important}.collapsible-content.expanded{max-height:500px !important;opacity:1 !important;margin-top:4px !important}.collapsible-content .posts-list{list-style:none !important;padding:0 !important;margin:0 !important}.collapsible-content .bullet{margin-left:16px !important;padding:2px 0 !important;list-style:none !important}.sidebar-about img{box-shadow:0 8px 32px rgba(0,0,0,.2);transition:transform .2s ease,box-shadow .2s ease;transform:translateZ(0);will-change:transform,box-shadow}.sidebar-about img:hover{transform:translateY(-2px)translateZ(0);box-shadow:0 12px 40px rgba(0,0,0,.3)}.sidebar-nav-item{transition:all .2s ease;border-radius:8px;margin-bottom:4px;padding:8px 12px;transform:translateZ(0);will-change:transform,background-color,box-shadow}.sidebar-nav-item:hover{background:rgba(255,255,255,.1);transform:translateX(4px)translateZ(0);box-shadow:0 4px 12px rgba(0,0,0,.15)}body.dark-theme .sidebar-nav-item:hover{background:rgba(255,255,255,5%)}.post-title,.page-title{background:linear-gradient( 135deg,var(--post-title-color),var(--list-color) );-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:none}.content pre{border-radius:12px;box-shadow:0 4px 16px rgba(0,0,0,.2);border:1px solid rgba(255,255,255,.1)}:where(h1,h2,h3,h4,h5,h6),:where(.post-title,.page-title,.masthead-title){font-family:quicksand,sans-serif !important;font-weight:600 !important}body.dark-theme .content pre{box-shadow:0 4px 20px rgba(0,0,0,.4)}.content code{border-radius:6px;padding:2px 6px;box-shadow:inset 0 1px 3px rgba(0,0,0,.1)}.content a{background:linear-gradient(135deg,var(--link-color),transparent);background-size:0% 2px;background-repeat:no-repeat;background-position:0 100%;transition:background-size .3s ease}.content a:hover{background-size:100% 2px;text-shadow:0 1px 2px rgba(0,0,0,.1)}table{border-radius:12px;overflow:hidden;box-shadow:0 4px 16px rgba(0,0,0,.1)}body.dark-theme table{box-shadow:0 4px 20px rgba(0,0,0,.3)}blockquote{border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,5%);background:linear-gradient( 90deg,transparent,rgba(255,255,255,.5),transparent )}body.dark-theme blockquote{background:linear-gradient( 90deg,transparent,rgba(255,255,255,5%),transparent );box-shadow:0 2px 12px rgba(0,0,0,.2)}.btn-light-dark{background:linear-gradient( 135deg,var(--moon-sun-background-color),rgba(88,91,112,.8) ) !important;border:2px solid rgba(255,255,255,.2) !important;transition:all .3s ease !important;box-shadow:0 4px 12px rgba(0,0,0,.15) !important}.btn-light-dark:hover{transform:translateY(-2px) !important;box-shadow:0 6px 20px rgba(0,0,0,.25) !important;background:linear-gradient( 135deg,rgba(88,91,112,.9),var(--moon-sun-background-color) ) !important}body.dark-theme .btn-light-dark{background:linear-gradient( 135deg,var(--moon-sun-background-color),rgba(69,71,90,.9) ) !important;border:2px solid rgba(255,255,255,.1) !important}input,select,textarea{background:linear-gradient( 135deg,rgba(255,255,255,.9),rgba(239,241,245,.9) ) !important;border:1px solid rgba(172,176,190,.3) !important;border-radius:8px !important;transition:all .3s ease !important;box-shadow:0 2px 8px rgba(0,0,0,5%) !important;padding:8px 12px !important}input:focus,select:focus,textarea:focus{border-color:var(--link-color) !important;box-shadow:0 0 0 3px rgba(30,102,245,.1),0 4px 12px rgba(0,0,0,.1) !important;outline:none !important}body.dark-theme input,body.dark-theme select,body.dark-theme textarea{background:linear-gradient( 135deg,rgba(49,50,68,.9),rgba(24,24,37,.9) ) !important;border:1px solid rgba(88,91,112,.3) !important;color:var(--text-color) !important}body.dark-theme input:focus,body.dark-theme select:focus,body.dark-theme textarea:focus{border-color:var(--link-color) !important;box-shadow:0 0 0 3px rgba(137,180,250,.1),0 4px 12px rgba(0,0,0,.2) !important}.pagination-item{background:linear-gradient( 135deg,rgba(255,255,255,.9),rgba(239,241,245,.8) ) !important;border-radius:8px !important;transition:all .3s ease !important;box-shadow:0 2px 8px rgba(0,0,0,5%) !important;margin:4px !important}.pagination-item:hover{transform:translateY(-1px) !important;box-shadow:0 4px 16px rgba(0,0,0,.1) !important;background:linear-gradient( 135deg,var(--link-color),rgba(30,102,245,.8) ) !important;color:#fff !important}body.dark-theme .pagination-item{background:linear-gradient( 135deg,rgba(49,50,68,.9),rgba(24,24,37,.8) ) !important;color:var(--text-color) !important}body.dark-theme .pagination-item:hover{background:linear-gradient( 135deg,var(--link-color),rgba(137,180,250,.8) ) !important}.social{transition:all .2s ease !important;padding:8px !important;border-radius:50% !important;background:rgba(255,255,255,.1) !important;transform:translateZ(0) !important;will-change:transform,background-color,box-shadow !important}.social:hover{transform:translateY(-2px)scale(1.1)translateZ(0) !important;background:linear-gradient( 135deg,var(--sidebar-socials-color),rgba(245,224,220,.8) ) !important;box-shadow:0 4px 16px rgba(0,0,0,.2) !important}.bl,.gl,.rl,.ol,.cr,.sl{box-shadow:0 2px 8px rgba(0,0,0,.2) !important;color:#fff !important;transition:all .3s ease !important;position:relative !important;overflow:hidden !important}.bl::before,.gl::before,.rl::before,.ol::before,.cr::before,.sl::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,transparent,rgba(255,255,255,.2));pointer-events:none}.bl:hover,.gl:hover,.rl:hover,.ol:hover,.cr:hover,.sl:hover{transform:translateY(-1px) !important;box-shadow:0 4px 16px rgba(0,0,0,.3) !important}.fullscreen-icon{background-image:url(/images/icon-fullscreen.svg)}.fullscreen-icon.leaflet-fullscreen-on{background-position:0 -26px}.leaflet-touch .fullscreen-icon{background-position:2px 2px}.leaflet-touch .fullscreen-icon.leaflet-fullscreen-on{background-position:2px -24px}.leaflet-container:-webkit-full-screen,.leaflet-container:fullscreen{width:100% !important;height:100% !important;z-index:99999}.leaflet-pseudo-fullscreen{position:fixed !important;width:100% !important;height:100% !important;top:0 !important;left:0 !important;z-index:99999}.leaflet-zoom-animated canvas{height:100% !important}.easy-button-button{font-size:large}.noselect{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.bl{background-color:#2f5da6 !important;color:#fff;font-weight:700;padding:5px}.gl{background-color:#008150 !important;color:#fff;font-weight:700;padding:5px}.rl{background-color:#fa2d27 !important;color:#000;font-weight:700;padding:5px}.ol{background-color:#fd8a03 !important;color:#000;font-weight:700;padding:5px}.cr{background-color:#7b388c !important;color:#fff;font-weight:700;padding:5px}.sl{background-color:#9a9c9d !important;color:#000;font-weight:700;padding:5px}.ci{display:flex;justify-content:center;padding-bottom:20px}.alert-body{font-size:16px}.line{width:auto;height:50%;margin:auto;display:block}#refresh-controls{margin:1rem 0}#predictions-container{margin-top:1rem}.confidence-high{color:#16a34a;font-weight:500;opacity:.9}.confidence-medium{color:#ea580c;font-weight:500;opacity:.9}.confidence-low{color:#f87171;font-weight:500;opacity:.9}.platform-prediction{font-weight:500;padding:.25rem .5rem;border-radius:.375rem;background-color:var(--light-badge-bg,#f8fafc);color:var(--text-color);border:1px solid var(--light-border-color,#e2e8f0);transition:all .2s ease}body.dark-theme .platform-prediction{background-color:var(--dark-badge-bg,#334155);border-color:var(--dark-border-color,#475569)}.route-badge{display:inline-block;padding:.25rem .5rem;border-radius:.375rem;text-align:center;font-weight:500;font-size:.875rem;color:#fff;background-color:#7b388c;box-shadow:0 1px 2px rgba(0,0,0,5%)}.stop-name{font-weight:400}.destination{font-weight:700}.departure-time{font-family:monospace;font-size:.875rem}.last-updated{font-size:.75rem;color:var(--muted-text-color,#6b7280)}body.dark-theme .last-updated{color:var(--dark-muted-text,#9ca3af)}.loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:rgba(10,10,10,.4);display:flex;align-items:center;justify-content:center;z-index:1000;border-radius:.5rem}.map-loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient( 135deg,rgba(123,56,140,.9),rgba(47,93,166,.9) );backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:2000;border-radius:8px;transition:opacity .3s ease}.map-loading-spinner{text-align:center;color:#fff;font-family:quicksand,sans-serif}.map-loading-spinner p{margin-top:1rem;font-weight:600;font-size:1.1rem;text-shadow:0 2px 4px rgba(0,0,0,.3);letter-spacing:.5px}.map-spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.3);border-top:4px solid #fff;border-radius:50%;animation:mapSpin 1.2s linear infinite;margin:0 auto;box-shadow:0 4px 12px rgba(0,0,0,.2)}@keyframes mapSpin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}body.dark-theme .map-loading-overlay{background:linear-gradient( 135deg,rgba(123,56,140,.95),rgba(47,93,166,.95) )}@media(max-width:768px){.map-loading-spinner p{font-size:1rem}.map-spinner{width:40px;height:40px}}.loading-spinner{text-align:center;color:var(--muted-text-color,#6b7280)}body.dark-theme .loading-spinner{color:var(--dark-muted-text,#9ca3af)}.loading-spinner p{margin-top:1rem;font-weight:500;font-size:.875rem}.spinner{width:40px;height:40px;border:4px solid #f3f4f6;border-top:4px solid #7b388c;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto}@keyframes spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}@media(max-width:768px){#predictions-container{overflow-x:auto;-webkit-overflow-scrolling:touch}#predictions-table{font-size:.875rem;min-width:600px}#predictions-table th,#predictions-table td{white-space:nowrap}.route-badge{font-size:.75rem;padding:.125rem .375rem}.departure-time{font-size:.75rem}}@media(max-width:480px){#predictions-table{font-size:.75rem;min-width:500px}.route-badge{font-size:.625rem;padding:.125rem .25rem}.departure-time{font-size:.625rem}.platform-prediction{padding:.125rem .25rem;font-size:.75rem}}.content.container{max-width:100% !important}.article-toc{width:0% !important}.left-align-column{text-align:left !important}#predictions-table{background:var(--bkg-color);border-radius:8px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.1)}body.dark-theme #predictions-table{background:var(--content-bg-color);box-shadow:0 2px 8px rgba(0,0,0,.3)}.leaflet-control-zoom-fullscreen{background-image:url(/images/icons/fullscreen.svg) !important;background-size:50% !important}.leaflet-control-layers-toggle{background-image:url(/images/icons/layers.svg) !important;background-position:0 !important;background-size:20px !important;background-repeat:no-repeat !important;padding-left:20px !important;width:40px !important;height:40px !important;line-height:40px !important;background-position:50% !important;background-repeat:no-repeat !important}#predictions-table th,#predictions-table td{text-align:center;color:var(--text-color);border-color:var(--light-border-color,#dee2e6)}body.dark-theme #predictions-table th,body.dark-theme #predictions-table td{border-color:var(--dark-border-color,#444)}#predictions-table thead th{background:var(--light-header-bg,#f8f9fa)}body.dark-theme #predictions-table thead th{background:var(--dark-header-bg,#2a2a2a)}#predictions-table tbody tr:nth-child(even){background:var(--light-alt-row,rgba(248,249,250,.5))}body.dark-theme #predictions-table tbody tr:nth-child(even){background:var(--dark-alt-row,rgba(42,42,42,.5))}#predictions-table tbody tr:hover{background:var(--light-hover-row,#e9ecef)}body.dark-theme #predictions-table tbody tr:hover{background:var(--dark-hover-row,#3a3a3a)}#map{width:100%;min-height:600px;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,.1);margin-bottom:1rem;position:relative}.controls-section{margin:1rem 0;padding:1rem;background:var(--bkg-color);border-radius:6px;border:1px solid var(--light-border-color,#e9ecef)}body.dark-theme .controls-section{background:var(--content-bg-color);border-color:var(--dark-border-color,#444)}#map.leaflet-container img.leaflet-tile{mix-blend-mode:normal !important}.controls-section label{font-weight:600;margin-right:.5rem;color:var(--text-color)}#refresh-rate{padding:.375rem .75rem;border:1px solid var(--light-border-color,#ced4da);border-radius:4px;background-color:var(--bkg-color);color:var(--text-color);font-size:.9rem}body.dark-theme #refresh-rate{border-color:var(--dark-border-color,#555);background-color:var(--content-bg-color)}#vehicle-table{width:100%;border-collapse:collapse;margin:1rem 0;background:var(--bkg-color);border-radius:8px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.1)}body.dark-theme #vehicle-table{background:var(--content-bg-color);box-shadow:0 2px 8px rgba(0,0,0,.3)}#vehicle-table td{padding:.75rem .5rem;text-align:center;border:1px solid var(--light-border-color,#dee2e6);vertical-align:middle;color:var(--text-color)}body.dark-theme #vehicle-table td{border-color:var(--dark-border-color,#444)}#vehicle-table tr:first-child td{background:var(--light-header-bg,#f8f9fa);font-weight:600;color:var(--text-color)}body.dark-theme #vehicle-table tr:first-child td{background:var(--dark-header-bg,#2a2a2a)}#vehicle-table tr:last-child td{background:var(--light-header-bg,#f8f9fa);font-weight:600}body.dark-theme #vehicle-table tr:last-child td{background:var(--dark-header-bg,#2a2a2a)}#alerts{margin:2rem 0;width:100%}.info-links{margin:2rem 0;padding:1rem;background:var(--light-info-bg,#f8f9fa);border-radius:6px;border-left:4px solid var(--link-color);color:var(--text-color)}body.dark-theme .info-links{background:var(--dark-info-bg,#2a2a2a)}.info-links p{margin:.5rem 0}.info-links a{color:var(--link-color);text-decoration:none}.info-links a:hover{text-decoration:underline}@media(max-width:768px){#map{min-height:500px;border-radius:4px}.controls-section{margin:.5rem 0;padding:.75rem}#vehicle-table{font-size:.85rem;margin:.5rem 0}#vehicle-table td{padding:.5rem .25rem}#vehicle-table small{font-size:.75rem}.info-links{margin:1rem 0;padding:.75rem;font-size:.9rem}}@media(max-width:480px){#vehicle-table{font-size:.75rem}#vehicle-table td{padding:.4rem .2rem}#vehicle-table b,#vehicle-table i{font-size:.8rem}.controls-section{text-align:center}.controls-section label,.controls-section select{display:block;margin:.25rem auto}}.controls-section{display:flex;flex-wrap:wrap;align-items:center;gap:1rem}.control-group{display:flex;align-items:center;gap:.5rem}.toggle-switch{position:relative;display:inline-block;width:50px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--light-border-color,#ccc);transition:.4s;border-radius:24px}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.4s;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2)}input:checked+.slider{background-color:#4285f4}input:focus+.slider{box-shadow:0 0 0 2px rgba(66,133,244,.3)}input:checked+.slider:before{transform:translateX(26px)}body.dark-theme .slider{background-color:var(--dark-border-color,#555)}body.dark-theme .slider:before{background-color:var(--bkg-color)}@media(max-width:768px){.controls-section{flex-direction:column;align-items:stretch;gap:.75rem}.control-group{justify-content:space-between;width:100%}}@media(max-width:480px){.controls-section{text-align:left;gap:.5rem}.controls-section label,.controls-section select{display:inline;margin:0}.control-group{flex-direction:row;justify-content:space-between;align-items:center}.toggle-switch{flex-shrink:0}}.popup-link{color:#8b5a96;text-decoration:none;font-weight:400}.popup-link:hover{color:#4b5563;text-decoration:underline}body.dark-theme .popup-link{color:#8b5a96}body.dark-theme .popup-link:hover{color:#4b5563}.marker-cluster-icon{border-radius:50%;align-items:center}.marker-cluster-icon div{width:40px;height:40px;opacity:1;display:flex;justify-content:center;color:#fff;font-weight:700;font-size:16px;align-items:center}.marker-cluster-red{background-color:#fa2d27}.marker-cluster-blue{background-color:#2f5da6}.marker-cluster-green{background-color:#008150}.marker-cluster-orange{background-color:#fd8a03}.marker-cluster-silver{background-color:#9a9c9d}.marker-cluster-commuter{background-color:#7b388c}.marker-cluster-amtrak{background-color:#004887}.leaflet-control-layers-overlays{color:#000 !important}.leaflet-popup-content{color:#000 !important}.stats-container{margin-bottom:20px;padding:15px;background-color:var(--light-info-bg,#f8f9fa);border-radius:8px;border:1px solid var(--light-border-color,#e9ecef);box-shadow:0 1px 3px rgba(0,0,0,5%)}body.dark-theme .stats-container{background-color:var(--dark-info-bg,#2a2a2a);border-color:var(--dark-border-color,#444);box-shadow:0 1px 3px rgba(0,0,0,.2)}.stats-container h4{margin-top:0;margin-bottom:10px;color:var(--text-color);font-size:1.1rem;font-weight:600}.prediction-stats{display:flex;flex-wrap:wrap;gap:15px;align-items:center}.prediction-stats span{color:var(--text-color);font-size:.9rem;font-weight:500}.prediction-stats span:not(:last-child):after{content:" |";margin-left:15px;color:var(--muted-text-color,#6b7280);font-weight:400}body.dark-theme .prediction-stats span:not(:last-child):after{color:var(--dark-muted-text,#9ca3af)}@media(max-width:768px){.stats-container{padding:12px}.stats-container h4{font-size:1rem;margin-bottom:12px}.prediction-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:center}.prediction-stats span:not(:last-child):after{content:none}.prediction-stats span{font-size:.9rem;padding:8px 10px;background-color:var(--light-badge-bg,rgba(248,249,250,.8));border-radius:6px;border:1px solid var(--light-border-color,rgba(0,0,0,8%));text-align:center;font-weight:600}body.dark-theme .prediction-stats span{background-color:var(--dark-badge-bg,rgba(42,42,42,.8));border-color:var(--dark-border-color,rgba(255,255,255,.1))}.prediction-stats span:nth-child(3){grid-column:1/-1}.prediction-stats span:nth-child(4){grid-column:1/-1;font-family:monospace;background-color:var(--light-info-bg,#e8f5e8);border-color:var(--link-color,#28a745)}body.dark-theme .prediction-stats span:nth-child(4){background-color:var(--dark-info-bg,rgba(40,167,69,.15));border-color:var(--link-color,#28a745)}}@media(max-width:480px){.stats-container{padding:10px}.stats-container h4{font-size:.95rem;text-align:center}.prediction-stats{grid-template-columns:1fr;gap:8px}.prediction-stats span{font-size:.85rem;padding:10px 12px}.prediction-stats span:nth-child(3){grid-column:1;font-weight:700;background-color:var(--light-info-bg,#e3f2fd);border-color:var(--link-color,#1976d2)}body.dark-theme .prediction-stats span:nth-child(3){background-color:var(--dark-info-bg,rgba(25,118,210,.15));border-color:var(--link-color,#42a5f5)}.prediction-stats span:nth-child(4){grid-column:1;font-family:monospace;font-weight:600;background-color:var(--light-info-bg,#e8f5e8);border-color:var(--link-color,#28a745)}body.dark-theme .prediction-stats span:nth-child(4){background-color:var(--dark-info-bg,rgba(40,167,69,.15));border-color:var(--link-color,#28a745)}}@keyframes sparkle{0%,100%{box-shadow:0 0 8px #ff0080,0 0 16px #ff0080,0 0 24px #ff0080;transform:scale(1)}25%{box-shadow:0 0 12px #8a2be2,0 0 20px #8a2be2,0 0 28px #8a2be2;transform:scale(1.05)}50%{box-shadow:0 0 10px #ff6347,0 0 18px #ff6347,0 0 26px #ff6347;transform:scale(1.02)}75%{box-shadow:0 0 14px #87ceeb,0 0 22px #87ceeb,0 0 30px #87ceeb;transform:scale(1.03)}}@keyframes legendarySparkle{0%,100%{box-shadow:0 0 8px #ff0080,0 0 16px #ff0080;transform:scale(1);filter:hue-rotate(0)}25%{box-shadow:0 0 10px #8a2be2,0 0 18px #8a2be2;transform:scale(1.02);filter:hue-rotate(90deg)}50%{box-shadow:0 0 12px #00ff80,0 0 20px #00ff80;transform:scale(1.03);filter:hue-rotate(180deg)}75%{box-shadow:0 0 10px #ff8000,0 0 18px #ff8000;transform:scale(1.02);filter:hue-rotate(270deg)}}@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes glow{0%{filter:brightness(1.3)saturate(1.2)hue-rotate(0)}25%{filter:brightness(1.4)saturate(1.4)hue-rotate(90deg)}50%{filter:brightness(1.5)saturate(1.6)hue-rotate(180deg)}75%{filter:brightness(1.4)saturate(1.4)hue-rotate(270deg)}100%{filter:brightness(1.3)saturate(1.2)hue-rotate(360deg)}}@keyframes trans-pride{0%{filter:brightness(1.4)saturate(1.8);box-shadow:0 0 15px #5bcefa,0 0 30px #f5a9b8,0 0 45px #ffffff}33%{filter:brightness(1.6)saturate(2);box-shadow:0 0 20px #f5a9b8,0 0 35px #ffffff,0 0 50px #5bcefa}66%{filter:brightness(1.5)saturate(1.9);box-shadow:0 0 18px #ffffff,0 0 32px #5bcefa,0 0 48px #f5a9b8}100%{filter:brightness(1.4)saturate(1.8);box-shadow:0 0 15px #5bcefa,0 0 30px #f5a9b8,0 0 45px #ffffff}}@keyframes trans-sparkle{0%,100%{transform:scale(1)rotate(0);opacity:1}25%{transform:scale(1.1)rotate(90deg);opacity:.8}50%{transform:scale(1.05)rotate(180deg);opacity:1}75%{transform:scale(1.08)rotate(270deg);opacity:.9}}.leaflet-marker-pane .elf-low img{filter:hue-rotate(220deg)saturate(1.2)brightness(1.05) !important}.leaflet-marker-pane .elf-medium img{filter:hue-rotate(15deg)saturate(1.3)brightness(1.1) !important}.leaflet-marker-pane .elf-high img{filter:hue-rotate(300deg)saturate(1.4)brightness(1.2) !important}.leaflet-marker-pane .elf-legendary img{filter:hue-rotate(320deg)saturate(1.6)brightness(1.3)contrast(1.1) !important}.leaflet-marker-pane .elf-trans-pride img{filter:hue-rotate(200deg)saturate(1.8)brightness(1.4)contrast(1.2) !important}@media(prefers-reduced-motion:reduce){.leaflet-marker-pane .elf-low,.leaflet-marker-pane .elf-low img,.leaflet-marker-pane .elf-medium,.leaflet-marker-pane .elf-medium img,.leaflet-marker-pane .elf-high,.leaflet-marker-pane .elf-high img,.leaflet-marker-pane .elf-legendary,.leaflet-marker-pane .elf-legendary img,.leaflet-marker-pane .elf-trans-pride,.leaflet-marker-pane .elf-trans-pride img,.elf-low,.elf-medium,.elf-high,.elf-legendary,.elf-trans-pride{animation:none !important}.leaflet-marker-pane .elf-medium,.leaflet-marker-pane .elf-medium img,.leaflet-marker-pane .elf-high,.leaflet-marker-pane .elf-high img,.elf-medium,.elf-high{filter:brightness(1.1)saturate(1.1) !important}.leaflet-marker-pane .elf-legendary,.leaflet-marker-pane .elf-legendary img,.elf-legendary{filter:brightness(1.2)saturate(1.3) !important}.leaflet-marker-pane .elf-trans-pride,.leaflet-marker-pane .elf-trans-pride img,.elf-trans-pride{filter:brightness(1.3)saturate(1.5) !important}}.control-group{position:relative}.elf-search-button{background:linear-gradient(135deg,#ff0080,#8a2be2);color:#fff;border:2px solid rgba(255,255,255,.3);padding:12px 20px;border-radius:25px;cursor:pointer;font-size:16px;font-weight:700;transition:all .3s ease;box-shadow:0 4px 15px rgba(255,0,128,.4);text-shadow:0 1px 2px rgba(0,0,0,.3);position:relative;overflow:hidden}.elf-search-button:hover{transform:translateY(-3px);box-shadow:0 6px 20px rgba(255,0,128,.6);background:linear-gradient(135deg,#ff0080,#8a2be2,#00ff80);border-color:rgba(255,255,255,.5)}.elf-search-button:before{content:"✨";margin-right:8px;font-size:14px}.elf-search-button:active{transform:translateY(-1px)}.elf-search-results{position:absolute;top:50px;left:0;right:0;background:rgba(255,255,255,.98);backdrop-filter:blur(10px);border:3px solid #ff0080;border-radius:15px;box-shadow:0 8px 32px rgba(0,0,0,.3),0 0 0 1px rgba(255,255,255,.2);z-index:1000;max-height:500px;overflow:hidden;animation:elf-results-appear .3s ease-out}.elf-results-list{padding:0;margin:0;max-height:400px;overflow-y:auto;overflow-x:hidden}.elf-results-list::-webkit-scrollbar{width:8px}.elf-results-list::-webkit-scrollbar-track{background:rgba(255,0,128,.1);border-radius:4px}.elf-results-list::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#ff0080,#8a2be2);border-radius:4px}.elf-results-list::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#ff0080,#8a2be2,#00ff80)}@keyframes elf-results-appear{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.elf-results-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;background:linear-gradient(135deg,#ff0080,#8a2be2);color:#fff !important;font-weight:700;font-size:16px;border-radius:12px 12px 0 0;text-shadow:0 2px 4px rgba(0,0,0,.6),0 1px 2px rgba(0,0,0,.8)}.elf-results-header span{color:#fff !important}.elf-results-header:before{content:"🏳️‍⚧️ ";margin-right:8px}.elf-search-close{background:0 0;border:none;color:#fff;font-size:18px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.elf-search-close:hover{background:rgba(255,255,255,.2);border-radius:50%}.elf-result-item{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid rgba(255,0,128,.2);cursor:pointer;transition:all .2s ease;position:relative}.elf-result-item:hover{background:linear-gradient( 90deg,rgba(255,0,128,.15),rgba(138,43,226,.15) );transform:translateX(4px);border-left:4px solid #ff0080}.elf-result-item:last-child{border-bottom:none}.elf-result-info{display:flex;flex-direction:column;gap:2px}.elf-result-route{font-weight:700;color:#333;font-size:16px}.elf-result-details{font-size:13px;color:#666;margin-top:2px}.elf-result-reasoning{font-size:12px;color:#888;margin-top:4px;font-style:italic;line-height:1.3;max-width:300px}.elf-result-score{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.elf-score-badge{padding:6px 12px;border-radius:15px;font-size:12px;font-weight:700;color:#fff !important;text-shadow:0 1px 2px rgba(0,0,0,.3);box-shadow:0 2px 4px rgba(0,0,0,.2)}.elf-score-trans-pride{background:linear-gradient( 135deg,#5bcefa,#f5a9b8,#ffffff,#f5a9b8,#5bcefa );animation:trans-sparkle 1.8s ease-in-out infinite;font-weight:700;text-shadow:0 0 3px rgba(0,0,0,.3)}.elf-score-legendary{background:linear-gradient(135deg,#ff0080,#8a2be2);animation:pulse 1.5s ease-in-out infinite}.elf-score-high{background:#d63384 !important;color:#fff !important}.elf-score-medium{background:tomato !important;color:#fff !important}.elf-score-low{background:#4682b4 !important;color:#fff !important}.elf-score-percentage{font-size:12px;color:#666}body.dark-theme .elf-search-results{background:rgba(20,20,30,.95);backdrop-filter:blur(15px);border-color:#ff0080;box-shadow:0 8px 32px rgba(0,0,0,.5),0 0 0 1px rgba(255,0,128,.3)}body.dark-theme .elf-result-item{border-bottom-color:rgba(255,0,128,.3)}body.dark-theme .elf-result-item:hover{background:linear-gradient( 90deg,rgba(255,0,128,.2),rgba(138,43,226,.2) )}body.dark-theme .elf-result-route{color:#fff}body.dark-theme .elf-result-details{color:#ccc}body.dark-theme .elf-result-reasoning{color:#aaa}body.dark-theme .elf-score-percentage{color:#fff;font-weight:700}body.dark-theme .elf-score-high{background:#d63384;color:#fff}.posts-section{margin:8px 0;font-family:quicksand,sans-serif !important}.posts-section details{border-radius:8px;overflow:hidden;transition:all .3s ease;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,2%)}.posts-section details:hover{background:rgba(255,255,255,5%);box-shadow:0 2px 8px rgba(0,0,0,.1);border-color:rgba(255,255,255,.2)}.posts-section details[open]{background:rgba(255,255,255,3%);border-color:rgba(255,255,255,.15)}.posts-section summary{cursor:pointer;user-select:none;padding:8px 12px;background:rgba(255,255,255,2%);border-radius:6px;transition:all .3s ease;display:flex;align-items:center;justify-content:space-between;font-weight:500;color:var(--sidebar-p-color);position:relative;font-size:.95em;letter-spacing:.5px}.posts-section summary:hover{background:rgba(255,255,255,.1);transform:translateX(2px)}.posts-section summary:focus{outline:none;background:rgba(255,255,255,.15);box-shadow:0 0 0 2px rgba(255,255,255,.2)}.posts-section summary:focus-visible{outline:2px solid var(--link-color);outline-offset:2px;background:rgba(255,255,255,.15)}.posts-section summary::before{content:"▶";font-size:.7em;margin-right:8px;transition:transform .3s ease;color:var(--sidebar-p-color);opacity:.7}.posts-section details[open] summary::before{transform:rotate(90deg);opacity:1}.posts-section details[open] summary{background:rgba(255,255,255,5%);border-bottom:1px solid rgba(255,255,255,.1);border-radius:6px 6px 0 0}.posts-section summary::-webkit-details-marker{display:none}.posts-section summary::marker{display:none}.posts-section .posts-list{list-style:none;padding:8px 0;margin:0;background:rgba(0,0,0,2%);border-radius:0 0 6px 6px}.posts-section details[open] .posts-list{animation:slideDown .3s ease-out}.posts-section .posts-list li{margin:0;padding:0}.posts-section .posts-list .bullet{padding:6px 12px 6px 24px;margin:2px 0;transition:all .2s ease;border-radius:4px;position:relative}.posts-section .posts-list .bullet:hover{background:rgba(255,255,255,8%);transform:translateX(4px)}.posts-section .posts-list .bullet a{color:var(--sidebar-p-color);text-decoration:none;font-size:.9em;transition:color .2s ease;display:block;line-height:1.4}.posts-section .posts-list .bullet a:hover{color:var(--sidebar-a-color);text-decoration:none}@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}body.dark-theme .posts-section details{border-color:rgba(255,255,255,5%);background:rgba(255,255,255,1%)}body.dark-theme .posts-section details:hover{background:rgba(255,255,255,3%);box-shadow:0 2px 8px rgba(0,0,0,.2);border-color:rgba(255,255,255,.1)}body.dark-theme .posts-section details[open]{background:rgba(255,255,255,2%);border-color:rgba(255,255,255,8%)}body.dark-theme .posts-section details[open] summary{background:rgba(255,255,255,3%);border-bottom-color:rgba(255,255,255,8%)}body.dark-theme .posts-section summary{background:rgba(255,255,255,2%);color:var(--sidebar-p-color)}body.dark-theme .posts-section summary:hover{background:rgba(255,255,255,6%)}body.dark-theme .posts-section summary:focus{background:rgba(255,255,255,.1);box-shadow:0 0 0 2px rgba(255,255,255,.12)}body.dark-theme .posts-section summary:focus-visible{outline:2px solid var(--link-color);outline-offset:2px;background:rgba(255,255,255,.1)}body.dark-theme .posts-section .posts-list{background:rgba(0,0,0,.15)}body.dark-theme .posts-section .posts-list .bullet:hover{background:rgba(255,255,255,4%)}@media(max-width:48em){.posts-section summary{padding:10px 12px}.posts-section .posts-list .bullet{padding:8px 12px 8px 24px}.posts-section .posts-list .bullet a{font-size:.95em}}@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{from{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInRight{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{from{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.content.container{animation:fadeInUp .3s ease-out}.sidebar{animation:fadeInLeft .4s ease-out}.sidebar-about img{animation:scaleIn .4s ease-out .1s both}.sidebar-nav-item{transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;transform:translateZ(0);will-change:transform,background-color,box-shadow}.sidebar-nav-item::before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient( 90deg,transparent,rgba(255,255,255,.1),transparent );transition:left .2s ease;pointer-events:none}.sidebar-nav-item:hover::before{left:100%}.sidebar-nav-item a,.content a,.posts-section .posts-list .bullet a{transition:color .15s ease,text-shadow .15s ease}.btn-light-dark{transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.btn-light-dark::before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:rgba(255,255,255,.2);border-radius:50%;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease}.btn-light-dark:hover::before{width:300px;height:300px}.social{transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;transform:translateZ(0);will-change:transform,background-color,box-shadow}.social::after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:50%;background:radial-gradient( circle,rgba(255,255,255,.2) 0%,transparent 70% );opacity:0;transform:scale(0);transition:all .2s ease;pointer-events:none}.social:hover::after{opacity:1;transform:scale(1.5)}.post-title,.page-title{transition:all .2s ease;position:relative}.post-title:hover,.page-title:hover{transform:translateY(-2px);text-shadow:0 4px 8px rgba(0,0,0,.1)}#predictions-table tbody tr,#vehicle-table tbody tr{transition:all .2s ease;transform-origin:left center}#predictions-table tbody tr:hover,#vehicle-table tbody tr:hover{transform:scale(1.01);box-shadow:0 4px 12px rgba(0,0,0,.1)}input,select,textarea{transition:all .2s cubic-bezier(.4,0,.2,1);transform-origin:center}input:focus,select:focus,textarea:focus{transform:scale(1.02)}.pagination-item{transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.pagination-item::before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient( 90deg,transparent,rgba(255,255,255,.3),transparent );transition:left .3s ease}.pagination-item:hover::before{left:100%}body.dark-theme .sidebar-nav-item::before{background:linear-gradient( 90deg,transparent,rgba(255,255,255,6%),transparent )}body.dark-theme .sidebar-nav-item:hover{background:rgba(255,255,255,4%);box-shadow:inset 0 0 0 1px rgba(255,255,255,6%)}body.dark-theme .sidebar-nav-item:focus,body.dark-theme .sidebar-nav-item.active{background:rgba(255,255,255,6%);box-shadow:inset 0 0 0 1px rgba(255,255,255,8%);border-radius:8px}body.dark-theme .sidebar-nav-item:hover a,body.dark-theme .sidebar-nav-item:focus a,body.dark-theme .sidebar-nav-item.active a{color:var(--sidebar-a-color)}.content pre{transition:all .2s ease;position:relative}.content pre:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,.15)}blockquote{transition:all .2s ease;position:relative}blockquote::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--link-color),transparent);transform:scaleY(0);transition:transform .2s ease}blockquote:hover::before{transform:scaleY(1)}table{transition:all .2s ease}table:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(0,0,0,.1)}.content ul li,.content ol li{transition:all .2s ease;position:relative}.content ul li:hover,.content ol li:hover{transform:translateX(4px);padding-left:8px}.content img{transition:all .2s ease;border-radius:8px}.content img:hover{transform:scale(1.02);box-shadow:0 8px 25px rgba(0,0,0,.15)}h1,h2,h3,h4,h5,h6{transition:color .2s ease;position:relative}h1:hover,h2:hover,h3:hover,h4:hover,h5:hover,h6:hover{}.posts-section details{transition:all .4s cubic-bezier(.4,0,.2,1)}.posts-section details[open]{animation:slideDown .4s ease-out}.posts-section summary{transition:all .3s cubic-bezier(.4,0,.2,1)}.posts-section summary::before{transition:transform .3s ease}.posts-section details[open] summary::before{transform:rotate(90deg)}::-webkit-scrollbar-thumb{transition:background-color .3s ease}::-webkit-scrollbar-thumb:hover{background-color:rgba(255,255,255,.3)}.bl,.gl,.rl,.ol,.cr,.sl{transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.sidebar{overflow-x:hidden}.bl::after,.gl::after,.rl::after,.ol::after,.cr::after,.sl::after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient( circle,rgba(255,255,255,.3) 0%,transparent 70% );opacity:0;transform:scale(0);transition:all .4s ease}.bl:hover::after,.gl:hover::after,.rl:hover::after,.ol:hover::after,.cr:hover::after,.sl:hover::after{opacity:1;transform:scale(1)}body:not(.dark-theme) .reading-time,body:not(.dark-theme) .last-updated{color:var(--muted-text-color)}body:not(.dark-theme) .sidebar .footnote{color:#fff}body:not(.dark-theme) .content .footnote{color:var(--text-color)}body.dark-theme .content .footnote{color:var(--text-color)}body:not(.dark-theme) .sidebar .footnote a,body.dark-theme .sidebar .footnote a{color:#fff;text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:2px}body:not(.dark-theme) .sidebar .footnote a:hover,body.dark-theme .sidebar .footnote a:hover{text-decoration-thickness:3px}.loading-spinner{animation:spin 1s linear infinite}*:focus{transition:all .2s ease}*:focus-visible{outline:2px solid var(--link-color);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}.sidebar-nav-item::before,.btn-light-dark::before,.social::after,.pagination-item::before,.bl::after,.gl::after,.rl::after,.ol::after,.cr::after,.sl::after{display:none !important}}.sidebar-nav-item:nth-child(1){animation-delay:.1s}.sidebar-nav-item:nth-child(2){animation-delay:.2s}.sidebar-nav-item:nth-child(3){animation-delay:.3s}.sidebar-nav-item:nth-child(4){animation-delay:.4s}.sidebar-nav-item:nth-child(5){animation-delay:.5s}.sidebar-nav-item:nth-child(6){animation-delay:.6s}body{transition:background .5s ease,color .3s ease}.sidebar,.content,.sidebar-nav-item,.social,.btn-light-dark,.pagination-item,.content a,.content img,.content pre,blockquote,table,.content ul li,.content ol li,.post-title,.page-title,h1,h2,h3,h4,h5,h6,input,select,textarea,.bl,.gl,.rl,.ol,.cr,.sl{transition:background-color .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease}