.highlight .c{color:#998;font-style:italic}.highlight .err{color:#a61717;background-color:#e3d2d2}.highlight .k{font-weight:bold}.highlight .o{font-weight:bold}.highlight .cm{color:#998;font-style:italic}.highlight .cp{color:#999;font-weight:bold}.highlight .c1{color:#998;font-style:italic}.highlight .cs{color:#999;font-weight:bold;font-style:italic}.highlight .gd{color:#000;background-color:#fdd}.highlight .gd .x{color:#000;background-color:#faa}.highlight .ge{font-style:italic}.highlight .gr{color:#a00}.highlight .gh{color:#999}.highlight .gi{color:#000;background-color:#dfd}.highlight .gi .x{color:#000;background-color:#afa}.highlight .go{color:#888}.highlight .gp{color:#555}.highlight .gs{font-weight:bold}.highlight .gu{color:#aaa}.highlight .gt{color:#a00}.highlight .kc{font-weight:bold}.highlight .kd{font-weight:bold}.highlight .kp{font-weight:bold}.highlight .kr{font-weight:bold}.highlight .kt{color:#458;font-weight:bold}.highlight .m{color:#099}.highlight .s{color:#d14}.highlight .na{color:teal}.highlight .nb{color:#0086B3}.highlight .nc{color:#458;font-weight:bold}.highlight .no{color:teal}.highlight .ni{color:purple}.highlight .ne{color:#900;font-weight:bold}.highlight .nf{color:#900;font-weight:bold}.highlight .nn{color:#555}.highlight .nt{color:navy}.highlight .nv{color:teal}.highlight .ow{font-weight:bold}.highlight .w{color:#bbb}.highlight .mf{color:#099}.highlight .mh{color:#099}.highlight .mi{color:#099}.highlight .mo{color:#099}.highlight .sb{color:#d14}.highlight .sc{color:#d14}.highlight .sd{color:#d14}.highlight .s2{color:#d14}.highlight .se{color:#d14}.highlight .sh{color:#d14}.highlight .si{color:#d14}.highlight .sx{color:#d14}.highlight .sr{color:#009926}.highlight .s1{color:#d14}.highlight .ss{color:#990073}.highlight .bp{color:#999}.highlight .vc{color:teal}.highlight .vg{color:teal}.highlight .vi{color:teal}.highlight .il{color:#099}@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;src:url("../fonts/inter/inter-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;src:url("../fonts/inter/inter-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;src:url("../fonts/inter/inter-greek.woff2") format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:'Inter';font-style:italic;font-weight:400 700;font-display:swap;src:url("../fonts/inter/inter-latin-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Inter';font-style:italic;font-weight:400 700;font-display:swap;src:url("../fonts/inter/inter-latin-ext-italic.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Inter';font-style:italic;font-weight:400 700;font-display:swap;src:url("../fonts/inter/inter-greek-italic.woff2") format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}html{font-size:16px}body,h1,h2,h3,h4,h5,h6,p,blockquote,pre,hr,dl,dd,ol,ul,figure{margin:0;padding:0}body{font:400 16px/1.65 "Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";color:#111;background-color:#fdfdfd;-webkit-text-size-adjust:100%;-webkit-font-feature-settings:"kern" 1;-moz-font-feature-settings:"kern" 1;-o-font-feature-settings:"kern" 1;font-feature-settings:"kern" 1;font-kerning:normal;display:flex;min-height:100vh;flex-direction:column;overflow-wrap:break-word}h1,h2,h3,h4,h5,h6,p,blockquote,pre,ul,ol,dl,figure,.highlight{margin-bottom:15px}hr{margin-top:30px;margin-bottom:30px}main{display:block}img{max-width:100%;vertical-align:middle}figure>img{display:block}figcaption{font-size:14px}ul,ol{margin-left:30px}li>ul,li>ol{margin-bottom:0}h1,h2,h3,h4,h5,h6{font-weight:400}a{color:#2a7ae2;text-decoration:none}a:visited{color:#1756a9}a:hover{color:#111;text-decoration:underline}.social-media-list a:hover,.pagination a:hover{text-decoration:none}.social-media-list a:hover .username,.pagination a:hover .username{text-decoration:underline}blockquote{color:#828282;border-left:4px solid #e8e8e8;padding-left:15px;font-size:1.125rem;font-style:italic}blockquote>:last-child{margin-bottom:0}blockquote i,blockquote em{font-style:normal}pre,code{font-family:ui-monospace,"SF Mono","JetBrains Mono","Cascadia Code",Menlo,Consolas,"Liberation Mono",monospace;font-size:0.9375em;border:1px solid #e8e8e8;border-radius:3px;background-color:#eef}code{padding:1px 5px}pre{padding:8px 12px;overflow-x:auto}pre>code{border:0;padding-right:0;padding-left:0}.highlight{border-radius:3px;background:#eef}.highlighter-rouge .highlight{background:#eef}.wrapper{max-width:calc(780px - (30px));margin-right:auto;margin-left:auto;padding-right:15px;padding-left:15px}@media screen and (min-width: 800px){.wrapper{max-width:calc(780px - (30px * 2));padding-right:30px;padding-left:30px}}.wrapper:after{content:"";display:table;clear:both}.orange{color:#f66a0a}.grey{color:#828282}.svg-icon{width:16px;height:16px;display:inline-block;fill:currentColor;padding:5px 3px 2px 5px;vertical-align:text-bottom}table{margin-bottom:30px;width:100%;text-align:left;color:#3f3f3f;border-collapse:collapse;border:1px solid #e8e8e8}table tr:nth-child(even){background-color:#f7f7f7}table th,table td{padding:10px 15px}table th{background-color:#f0f0f0;border:1px solid #e0e0e0}table td{border:1px solid #e8e8e8}@media screen and (max-width: 800px){table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}}.site-header{border-bottom:1px solid #e8e8e8;min-height:55.95px;line-height:59.4px;position:relative}.site-title{font-size:1.625rem;font-weight:300;letter-spacing:-1px;margin-bottom:0;float:left}@media screen and (max-width: 600px){.site-title{padding-right:45px}}.site-title,.site-title:visited{color:#424242}.site-nav{position:absolute;top:9px;right:15px;background-color:#fdfdfd;border:1px solid #e8e8e8;border-radius:5px;text-align:right}.site-nav .nav-trigger{display:none}.site-nav .menu-icon{float:right;width:36px;height:26px;line-height:0;padding-top:10px;text-align:center}.site-nav .menu-icon>svg path{fill:#424242}.site-nav label[for="nav-trigger"]{display:block;float:right;width:36px;height:36px;z-index:2;cursor:pointer}.site-nav input ~ .trigger{clear:both;display:none}.site-nav input:checked ~ .trigger{display:block;padding-bottom:5px}.site-nav .page-link{color:#111;line-height:1.65;display:block;padding:5px 10px;margin-left:20px}.site-nav .page-link:not(:last-child){margin-right:0}@media screen and (min-width: 600px){.site-nav{position:static;float:right;border:none;background-color:inherit}.site-nav label[for="nav-trigger"]{display:none}.site-nav .menu-icon{display:none}.site-nav input ~ .trigger{display:block}.site-nav .page-link{display:inline;padding:0;margin-left:auto}.site-nav .page-link:not(:last-child){margin-right:20px}}.site-footer{border-top:1px solid #e8e8e8;padding:30px 0}.footer-heading{font-size:1.125rem;margin-bottom:15px}.feed-subscribe .svg-icon{padding:5px 5px 2px 0}.contact-list,.social-media-list,.pagination{list-style:none;margin-left:0}.footer-col-wrapper,.social-links{font-size:.9375rem;color:#828282}.footer-col{margin-bottom:15px}.footer-col-1,.footer-col-2{width:calc(50% - (30px / 2))}.footer-col-3{width:calc(100% - (30px / 2))}@media screen and (min-width: 800px){.footer-col-1{width:calc(35% - (30px / 2))}.footer-col-2{width:calc(20% - (30px / 2))}.footer-col-3{width:calc(45% - (30px / 2))}}@media screen and (min-width: 600px){.footer-col-wrapper{display:flex}.footer-col{width:calc(100% - (30px / 2));padding:0 15px}.footer-col:first-child{padding-right:15px;padding-left:0}.footer-col:last-child{padding-right:0;padding-left:15px}}.page-content{padding:30px 0;flex:1 0 auto}.page-heading{font-size:2rem}.post-list-heading{font-size:1.75rem}.post-list{margin-left:0;list-style:none}.post-list>li{margin-bottom:30px}.post-meta{font-size:14px;color:#828282}.post-link{display:block;font-size:1.5rem}.post-header{margin-bottom:30px}.post-title,.post-content h1{font-size:2.625rem;letter-spacing:-1px;line-height:1.15}@media screen and (min-width: 800px){.post-title,.post-content h1{font-size:2.625rem}}.post-content{margin-bottom:30px}.post-content h1,.post-content h2,.post-content h3{margin-top:60px}.post-content h4,.post-content h5,.post-content h6{margin-top:30px}.post-content h2{font-size:1.75rem}@media screen and (min-width: 800px){.post-content h2{font-size:2rem}}.post-content h3{font-size:1.375rem}@media screen and (min-width: 800px){.post-content h3{font-size:1.625rem}}.post-content h4{font-size:1.25rem}.post-content h5{font-size:1.125rem}.post-content h6{font-size:1.0625rem}.social-media-list,.pagination{display:table;margin:0 auto}.social-media-list li,.pagination li{float:left;margin:5px 10px 5px 0}.social-media-list li:last-of-type,.pagination li:last-of-type{margin-right:0}.social-media-list li a,.pagination li a{display:block;padding:7.5px;border:1px solid #e8e8e8}.social-media-list li a:hover,.pagination li a:hover{border-color:#dbdbdb}.pagination{margin-bottom:30px}.pagination li a,.pagination li div{min-width:41px;text-align:center;box-sizing:border-box}.pagination li div{display:block;padding:7.5px;border:1px solid transparent}.pagination li div.pager-edge{color:#e8e8e8;border:1px dashed}@media screen and (min-width: 800px){.one-half{width:calc(50% - (30px / 2))}}:root{--color-bg: #ffffff;--color-text: #1f2328;--color-heading: #0d1117;--color-brand: #656d76;--color-brand-light: #e1e4e8;--color-brand-dark: #424a53;--color-link: #0969da;--color-link-visited: #0969da;--color-border: #e1e4e8;--color-border-hover: #c4c9cf;--color-border-dark: #57606a;--color-code-bg: #f6f8fa;--color-inline-code-bg: rgba(129, 139, 152, 0.14);--color-entry-hover: rgba(129, 139, 152, 0.08);--color-table-text: #1f2328;--color-table-zebra: transparent;--color-table-header-bg: transparent;--color-table-header-border: #c4c9cf;--color-site-title: #1f2328;--color-success: #1a7f37;--color-danger: #d1242f;color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--color-bg: #111317;--color-text: #c9d1d9;--color-heading: #f0f3f6;--color-brand: #8b949e;--color-brand-light: #2d333b;--color-brand-dark: #c9d1d9;--color-link: #6cb6ff;--color-link-visited: #6cb6ff;--color-border: #2d333b;--color-border-hover: #444c56;--color-border-dark: #8b949e;--color-code-bg: #161b22;--color-inline-code-bg: rgba(110, 118, 129, 0.3);--color-entry-hover: rgba(110, 118, 129, 0.14);--color-table-text: #c9d1d9;--color-table-zebra: transparent;--color-table-header-bg: transparent;--color-table-header-border: #444c56;--color-site-title: #e6edf3;--color-success: #3fb950;--color-danger: #f85149;color-scheme:dark}}[data-theme="dark"]{--color-bg: #111317;--color-text: #c9d1d9;--color-heading: #f0f3f6;--color-brand: #8b949e;--color-brand-light: #2d333b;--color-brand-dark: #c9d1d9;--color-link: #6cb6ff;--color-link-visited: #6cb6ff;--color-border: #2d333b;--color-border-hover: #444c56;--color-border-dark: #8b949e;--color-code-bg: #161b22;--color-inline-code-bg: rgba(110, 118, 129, 0.3);--color-entry-hover: rgba(110, 118, 129, 0.14);--color-table-text: #c9d1d9;--color-table-zebra: transparent;--color-table-header-bg: transparent;--color-table-header-border: #444c56;--color-site-title: #e6edf3;--color-success: #3fb950;--color-danger: #f85149;color-scheme:dark}.highlight .c,.highlight .ch,.highlight .cd,.highlight .cm,.highlight .cpf,.highlight .c1,.highlight .cs{color:#6e7781;font-style:normal}.highlight .cp{color:#6e7781;font-weight:normal}.highlight .err{color:#cf222e;background-color:transparent}.highlight .k,.highlight .kc,.highlight .kd,.highlight .kn,.highlight .kp,.highlight .kr,.highlight .o,.highlight .ow{color:#cf222e;font-weight:normal}.highlight .kt{color:#0550ae;font-weight:normal}.highlight .m,.highlight .mb,.highlight .mf,.highlight .mh,.highlight .mi,.highlight .mo,.highlight .mx,.highlight .il{color:#0550ae}.highlight .s,.highlight .sa,.highlight .sb,.highlight .sc,.highlight .dl,.highlight .sd,.highlight .s2,.highlight .se,.highlight .sh,.highlight .si,.highlight .sx,.highlight .s1,.highlight .sr{color:#0a3069}.highlight .ss{color:#0550ae}.highlight .na,.highlight .nb,.highlight .bp,.highlight .no{color:#0550ae}.highlight .nc,.highlight .ne,.highlight .nf,.highlight .fm,.highlight .ni,.highlight .nn{color:#8250df;font-weight:normal}.highlight .nt{color:#116329}.highlight .nv,.highlight .vc,.highlight .vg,.highlight .vi,.highlight .vm{color:#953800}.highlight .w{color:#6e7781}.highlight .gd{color:#cf222e;background-color:rgba(255,129,130,0.25)}.highlight .gi{color:#116329;background-color:rgba(74,194,107,0.2)}.highlight .gh,.highlight .gu{color:#0550ae;font-weight:600}.highlight .go,.highlight .gp{color:#6e7781}.highlight .gr,.highlight .gt{color:#cf222e}.highlight .gs{font-weight:600}.highlight .ge{font-style:italic}@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .highlight .c,:root:not([data-theme="light"]) .highlight .ch,:root:not([data-theme="light"]) .highlight .cd,:root:not([data-theme="light"]) .highlight .cm,:root:not([data-theme="light"]) .highlight .cpf,:root:not([data-theme="light"]) .highlight .c1,:root:not([data-theme="light"]) .highlight .cs{color:#8b949e;font-style:normal}:root:not([data-theme="light"]) .highlight .cp{color:#8b949e;font-weight:normal}:root:not([data-theme="light"]) .highlight .err{color:#ff7b72;background-color:transparent}:root:not([data-theme="light"]) .highlight .k,:root:not([data-theme="light"]) .highlight .kc,:root:not([data-theme="light"]) .highlight .kd,:root:not([data-theme="light"]) .highlight .kn,:root:not([data-theme="light"]) .highlight .kp,:root:not([data-theme="light"]) .highlight .kr,:root:not([data-theme="light"]) .highlight .o,:root:not([data-theme="light"]) .highlight .ow{color:#ff7b72;font-weight:normal}:root:not([data-theme="light"]) .highlight .kt{color:#79c0ff;font-weight:normal}:root:not([data-theme="light"]) .highlight .m,:root:not([data-theme="light"]) .highlight .mb,:root:not([data-theme="light"]) .highlight .mf,:root:not([data-theme="light"]) .highlight .mh,:root:not([data-theme="light"]) .highlight .mi,:root:not([data-theme="light"]) .highlight .mo,:root:not([data-theme="light"]) .highlight .mx,:root:not([data-theme="light"]) .highlight .il{color:#79c0ff}:root:not([data-theme="light"]) .highlight .s,:root:not([data-theme="light"]) .highlight .sa,:root:not([data-theme="light"]) .highlight .sb,:root:not([data-theme="light"]) .highlight .sc,:root:not([data-theme="light"]) .highlight .dl,:root:not([data-theme="light"]) .highlight .sd,:root:not([data-theme="light"]) .highlight .s2,:root:not([data-theme="light"]) .highlight .se,:root:not([data-theme="light"]) .highlight .sh,:root:not([data-theme="light"]) .highlight .si,:root:not([data-theme="light"]) .highlight .sx,:root:not([data-theme="light"]) .highlight .s1,:root:not([data-theme="light"]) .highlight .sr{color:#a5d6ff}:root:not([data-theme="light"]) .highlight .ss{color:#79c0ff}:root:not([data-theme="light"]) .highlight .na,:root:not([data-theme="light"]) .highlight .nb,:root:not([data-theme="light"]) .highlight .bp,:root:not([data-theme="light"]) .highlight .no{color:#79c0ff}:root:not([data-theme="light"]) .highlight .nc,:root:not([data-theme="light"]) .highlight .ne,:root:not([data-theme="light"]) .highlight .nf,:root:not([data-theme="light"]) .highlight .fm,:root:not([data-theme="light"]) .highlight .ni,:root:not([data-theme="light"]) .highlight .nn{color:#d2a8ff;font-weight:normal}:root:not([data-theme="light"]) .highlight .nt{color:#7ee787}:root:not([data-theme="light"]) .highlight .nv,:root:not([data-theme="light"]) .highlight .vc,:root:not([data-theme="light"]) .highlight .vg,:root:not([data-theme="light"]) .highlight .vi,:root:not([data-theme="light"]) .highlight .vm{color:#ffa657}:root:not([data-theme="light"]) .highlight .w{color:#8b949e}:root:not([data-theme="light"]) .highlight .gd{color:#ff7b72;background-color:rgba(248,81,73,0.2)}:root:not([data-theme="light"]) .highlight .gi{color:#7ee787;background-color:rgba(46,160,67,0.2)}:root:not([data-theme="light"]) .highlight .gh,:root:not([data-theme="light"]) .highlight .gu{color:#79c0ff;font-weight:600}:root:not([data-theme="light"]) .highlight .go,:root:not([data-theme="light"]) .highlight .gp{color:#8b949e}:root:not([data-theme="light"]) .highlight .gr,:root:not([data-theme="light"]) .highlight .gt{color:#ff7b72}:root:not([data-theme="light"]) .highlight .gs{font-weight:600}:root:not([data-theme="light"]) .highlight .ge{font-style:italic}}[data-theme="dark"] .highlight .c,[data-theme="dark"] .highlight .ch,[data-theme="dark"] .highlight .cd,[data-theme="dark"] .highlight .cm,[data-theme="dark"] .highlight .cpf,[data-theme="dark"] .highlight .c1,[data-theme="dark"] .highlight .cs{color:#8b949e;font-style:normal}[data-theme="dark"] .highlight .cp{color:#8b949e;font-weight:normal}[data-theme="dark"] .highlight .err{color:#ff7b72;background-color:transparent}[data-theme="dark"] .highlight .k,[data-theme="dark"] .highlight .kc,[data-theme="dark"] .highlight .kd,[data-theme="dark"] .highlight .kn,[data-theme="dark"] .highlight .kp,[data-theme="dark"] .highlight .kr,[data-theme="dark"] .highlight .o,[data-theme="dark"] .highlight .ow{color:#ff7b72;font-weight:normal}[data-theme="dark"] .highlight .kt{color:#79c0ff;font-weight:normal}[data-theme="dark"] .highlight .m,[data-theme="dark"] .highlight .mb,[data-theme="dark"] .highlight .mf,[data-theme="dark"] .highlight .mh,[data-theme="dark"] .highlight .mi,[data-theme="dark"] .highlight .mo,[data-theme="dark"] .highlight .mx,[data-theme="dark"] .highlight .il{color:#79c0ff}[data-theme="dark"] .highlight .s,[data-theme="dark"] .highlight .sa,[data-theme="dark"] .highlight .sb,[data-theme="dark"] .highlight .sc,[data-theme="dark"] .highlight .dl,[data-theme="dark"] .highlight .sd,[data-theme="dark"] .highlight .s2,[data-theme="dark"] .highlight .se,[data-theme="dark"] .highlight .sh,[data-theme="dark"] .highlight .si,[data-theme="dark"] .highlight .sx,[data-theme="dark"] .highlight .s1,[data-theme="dark"] .highlight .sr{color:#a5d6ff}[data-theme="dark"] .highlight .ss{color:#79c0ff}[data-theme="dark"] .highlight .na,[data-theme="dark"] .highlight .nb,[data-theme="dark"] .highlight .bp,[data-theme="dark"] .highlight .no{color:#79c0ff}[data-theme="dark"] .highlight .nc,[data-theme="dark"] .highlight .ne,[data-theme="dark"] .highlight .nf,[data-theme="dark"] .highlight .fm,[data-theme="dark"] .highlight .ni,[data-theme="dark"] .highlight .nn{color:#d2a8ff;font-weight:normal}[data-theme="dark"] .highlight .nt{color:#7ee787}[data-theme="dark"] .highlight .nv,[data-theme="dark"] .highlight .vc,[data-theme="dark"] .highlight .vg,[data-theme="dark"] .highlight .vi,[data-theme="dark"] .highlight .vm{color:#ffa657}[data-theme="dark"] .highlight .w{color:#8b949e}[data-theme="dark"] .highlight .gd{color:#ff7b72;background-color:rgba(248,81,73,0.2)}[data-theme="dark"] .highlight .gi{color:#7ee787;background-color:rgba(46,160,67,0.2)}[data-theme="dark"] .highlight .gh,[data-theme="dark"] .highlight .gu{color:#79c0ff;font-weight:600}[data-theme="dark"] .highlight .go,[data-theme="dark"] .highlight .gp{color:#8b949e}[data-theme="dark"] .highlight .gr,[data-theme="dark"] .highlight .gt{color:#ff7b72}[data-theme="dark"] .highlight .gs{font-weight:600}[data-theme="dark"] .highlight .ge{font-style:italic}body{background-color:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}::selection{background-color:rgba(9,105,218,0.18)}:focus-visible{outline:2px solid var(--color-link);outline-offset:2px;border-radius:2px}@media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth}}a{color:var(--color-link);text-decoration:none}a:visited{color:var(--color-link-visited)}a:hover{color:var(--color-link);text-decoration:none}h1,h2,h3,h4,h5,h6{color:var(--color-heading);font-weight:650;letter-spacing:-0.011em}strong,b{font-weight:600;color:var(--color-heading)}blockquote{color:var(--color-brand);border-left:3px solid var(--color-border);padding-left:1rem;font-size:1rem;font-style:normal;letter-spacing:normal}hr{height:0;border:0;border-top:1px solid var(--color-border);background:none;margin:2rem 0}.post-title,.post-content h1{font-size:2.25rem;font-weight:700;line-height:1.2;letter-spacing:-0.022em;margin-bottom:0.75rem}.post-content h1,.post-content h2,.post-content h3,.post-content h4,.post-content h5,.post-content h6{scroll-margin-top:72px}.post-content h2{font-size:1.5rem;line-height:1.3;letter-spacing:-0.017em;margin-top:2.5rem;margin-bottom:0.75rem}.post-content h3{font-size:1.1875rem;font-weight:600;line-height:1.4;letter-spacing:-0.008em;margin-top:2rem;margin-bottom:0.5rem}.post-content h4,.post-content h5,.post-content h6{font-size:1rem;font-weight:600;line-height:1.5;letter-spacing:normal;margin-top:1.5rem;margin-bottom:0.5rem}.post-content a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:0.2em;text-decoration-color:currentColor;text-decoration-color:color-mix(in srgb, currentColor 35%, transparent);transition:text-decoration-color 0.15s}.post-content a:hover{text-decoration-color:currentColor}.post-content ul,.post-content ol{margin-left:1.375rem}.post-content li+li,.post-content li>ul,.post-content li>ol{margin-top:0.375rem}.post-content li::marker{color:var(--color-brand)}.post-content img{border-radius:6px}@media screen and (max-width: 600px){.post-title,.post-content h1{font-size:1.875rem}.post-content h2{font-size:1.3125rem;margin-top:2rem}.post-content h3{font-size:1.125rem}}.post-content ul.entry-list{list-style:none;margin-left:0;padding-left:0}.post-content ul.entry-list>li{position:relative;margin:2px 0 0 18px}.post-content ul.entry-list--nested{margin:0}.post-content ul.entry-list--nested>li{margin-left:24px}.post-content ul.entry-list--nested>li::after{content:"";position:absolute;left:-13px;top:calc(6px + .825em);bottom:calc(-1 * (2px + calc(6px + .825em)));width:3px;background-image:radial-gradient(circle, var(--color-border-hover) 0.75px, transparent 1px);background-size:3px 4px;background-position:center top;opacity:0.55}.post-content ul.entry-list--nested>li:last-child::after{display:none}.post-content ul.entry-list--nested>li>.entry-body::before{left:-14px;top:calc(calc(6px + .825em) - 2.5px);width:5px;height:5px}.post-content .entry-body{position:relative;padding:6px 36px 6px 10px;border-radius:8px;transition:background-color 0.15s}.post-content .entry-body::before{content:"";position:absolute;z-index:1;left:-15px;top:calc(calc(6px + .825em) - 3.5px);width:7px;height:7px;box-sizing:border-box;border:1.25px solid var(--color-border-hover);border-radius:50%;background-color:var(--color-bg);transition:background-color 0.15s, border-color 0.15s}.post-content .entry-body:hover,.post-content .entry-body.is-selected,.post-content .entry-body:focus-within{background-color:var(--color-entry-hover)}.post-content .entry-body:hover::before,.post-content .entry-body.is-selected::before,.post-content .entry-body:focus-within::before{border-color:var(--color-link);background-color:var(--color-link)}.post-content .entry-body:hover>.entry-copy,.post-content .entry-body.is-selected>.entry-copy,.post-content .entry-body:focus-within>.entry-copy{opacity:1}.entry-copy{position:absolute;top:4px;right:4px;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;color:var(--color-brand);background:none;border:0;border-radius:6px;cursor:pointer;opacity:0;transition:opacity 0.15s, color 0.15s, background-color 0.15s}.entry-copy:hover{color:var(--color-heading);background-color:var(--color-inline-code-bg)}.entry-copy:focus-visible{opacity:1}.entry-copy.is-ok{color:var(--color-success);opacity:1}.entry-copy.is-error{color:var(--color-danger);opacity:1}@media (hover: none){.post-content .entry-body{padding-right:10px}.entry-copy{display:none}.post-content .entry-body.is-selected>.entry-copy{position:static;display:inline-flex;margin-left:6px;vertical-align:middle;background-color:var(--color-bg);box-shadow:0 0 0 1px var(--color-border)}}code{font-family:ui-monospace,"SF Mono","JetBrains Mono","Cascadia Code",Menlo,Consolas,"Liberation Mono",monospace;font-size:0.875em;padding:0.15em 0.35em;border:0;border-radius:5px;background-color:var(--color-inline-code-bg);-webkit-box-decoration-break:clone;box-decoration-break:clone}pre,div.highlight,figure.highlight{border:1px solid var(--color-border);border-radius:8px;background-color:var(--color-code-bg)}pre{font-family:ui-monospace,"SF Mono","JetBrains Mono","Cascadia Code",Menlo,Consolas,"Liberation Mono",monospace;font-size:0.875rem;line-height:1.6;padding:14px 16px;overflow-x:auto}pre>code{font-size:inherit;padding:0;border-radius:0;background:none}.highlight{margin-bottom:1.25rem}.highlight pre.highlight,.highlight pre{border:0;margin:0;background:none}.highlighter-rouge .highlight{background-color:var(--color-code-bg)}table{font-size:0.9375rem;color:var(--color-table-text);border:0;margin-bottom:1.25rem}table tr,table tr:nth-child(even){background-color:transparent}table th,table td{border:0;border-bottom:1px solid var(--color-border);padding:0.5rem 0.75rem;vertical-align:top}table th{color:var(--color-heading);font-weight:600;background-color:transparent;border-bottom-color:var(--color-table-header-border)}.site-header{position:sticky;top:0;z-index:30;min-height:0;line-height:1.5;border-bottom:1px solid var(--color-border);background-color:var(--color-bg)}@supports (backdrop-filter: blur(8px)){.site-header{background-color:color-mix(in srgb, var(--color-bg) 92%, transparent);backdrop-filter:saturate(180%) blur(10px)}}.site-title,.site-title:visited{font-size:1.25rem;font-weight:650;letter-spacing:-0.02em;line-height:1;color:var(--color-accent, var(--color-site-title))}.site-nav{background-color:transparent;border:0}.site-nav .page-link,.site-nav .page-link:visited{color:var(--color-brand);font-size:0.9375rem;font-weight:500}.site-nav .page-link:hover,.site-nav .page-link:visited:hover{color:var(--color-heading)}.site-footer{border-top:1px solid var(--color-border);padding:1.5rem 0;font-size:0.875rem}.footer-col-wrapper,.social-links{color:var(--color-brand);font-size:0.875rem}.footer-col p{margin-bottom:0.5rem}.post-meta{color:var(--color-brand)}.social-media-list li a,.pagination li a{padding:4px;border:0;color:var(--color-brand)}.social-media-list li a:hover,.pagination li a:hover{color:var(--color-heading)}.social-media-list li a .svg-icon,.pagination li a .svg-icon{width:18px;height:18px;padding:0;color:inherit}.pagination li div.pager-edge{color:var(--color-border)}#jsee-container{margin-bottom:35px}#jsee-container:empty{display:none}.logo_header img,.logo_footer img{transition:filter 0.15s, opacity 0.15s}.logo_header img{display:block;width:auto;height:auto;max-height:34px}.logo_header{display:inline-flex;align-items:center;gap:9px;line-height:0;text-decoration:none}.logo_header:hover{text-decoration:none}.logo_header-text{font-size:1.25rem;font-weight:650;letter-spacing:-0.02em;line-height:1;color:var(--color-accent, var(--color-site-title))}.logo_footer{margin-left:-3px}.logo_footer img{opacity:0.35}.logo_footer:hover img{opacity:1}@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .logo_header img,:root:not([data-theme="light"]) .logo_footer img{filter:invert(1)}}[data-theme="dark"] .logo_header img,[data-theme="dark"] .logo_footer img{filter:invert(1)}.site-header .wrapper{display:flex;align-items:center;justify-content:space-between;min-height:56px;gap:12px}.site-header .wrapper::after{display:none}.site-controls{display:flex;align-items:center;gap:4px;margin-left:auto;line-height:1.65}.header-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:32px;height:32px;padding:0 8px;font:inherit;font-size:0.875rem;font-weight:500;line-height:1;white-space:nowrap;color:var(--color-brand);background:none;border:0;border-radius:6px;cursor:pointer;text-decoration:none;transition:color 0.15s, background-color 0.15s}.header-btn:visited{color:var(--color-brand)}.header-btn:hover{color:var(--color-heading);background-color:var(--color-inline-code-bg);text-decoration:none}.header-btn.is-ok{color:var(--color-success)}.header-btn.is-error{color:var(--color-danger)}.header-btn svg{flex:none;transition:transform 0.15s}.theme-toggle{padding:0}.theme-toggle .theme-icon-light,.theme-toggle .theme-icon-dark{display:none}.site-nav{position:relative;top:auto;right:auto;margin-right:8px;line-height:1.65}.site-nav label[for="nav-trigger"]{width:auto;height:auto}.site-nav .menu-icon{display:flex;width:auto;height:auto;padding:0}.site-nav .menu-icon>svg path{fill:none}.site-nav.site-nav--inline label[for="nav-trigger"],.site-nav.site-nav--inline .menu-icon{display:none}.site-nav.site-nav--inline input ~ .trigger{display:block}.site-nav.site-nav--inline .page-link{display:inline;padding:0;margin-left:0}.site-nav.site-nav--inline .page-link:not(:last-child){margin-right:16px}@media screen and (max-width: 599px){.site-nav{margin-right:0}.site-nav:not(.site-nav--inline) label[for="nav-trigger"]{display:inline-flex;float:none}.site-nav:not(.site-nav--inline) input ~ .trigger{position:absolute;top:calc(100% + 8px);right:0;z-index:40;min-width:180px;padding:6px;background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,0.12)}.site-nav:not(.site-nav--inline) .page-link{margin:0;padding:8px 10px;text-align:left;border-radius:6px}.site-nav:not(.site-nav--inline) .page-link:hover{background-color:var(--color-inline-code-bg)}}@media screen and (min-width: 600px){.site-nav .page-link{margin-left:0}.site-nav .page-link:not(:last-child){margin-right:20px}}.page-actions{position:relative;display:flex;align-items:center}.site-nav+.page-actions{margin-left:4px;padding-left:8px;border-left:1px solid var(--color-border)}.page-actions-toggle{display:none}.page-actions-menu{display:flex;align-items:center;gap:2px}.page-action-icon{padding:0}.page-action-icon .page-action-label{display:none}@media screen and (max-width: 600px){.site-nav+.page-actions{margin-left:0;padding-left:0;border-left:0}.page-actions-toggle{display:inline-flex;gap:2px;padding:0 6px}.page-actions.is-open .page-actions-toggle svg:last-child{transform:rotate(180deg)}.page-actions-menu{display:none;position:absolute;top:calc(100% + 8px);right:0;z-index:40;flex-direction:column;align-items:stretch;min-width:220px;padding:6px;background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,0.12)}.page-actions.is-open .page-actions-menu{display:flex}.page-actions-menu .header-btn{justify-content:flex-start;width:100%;height:36px;padding:0 10px;gap:10px}.page-action-icon .page-action-label{display:inline}}.post-content>:first-child{margin-top:0}.post-header{margin-bottom:1rem}.heading-anchor{margin-left:0.3em;font-weight:400;text-decoration:none;opacity:0;transition:opacity 0.15s}.heading-anchor,.heading-anchor:visited{color:var(--color-brand)}.heading-anchor:hover{color:var(--color-link);text-decoration:none}.post-content a.heading-anchor{text-decoration:none}h2:hover>.heading-anchor,h3:hover>.heading-anchor,h4:hover>.heading-anchor,.heading-anchor:focus-visible{opacity:1}@media (hover: none){.heading-anchor{opacity:0.35}}.code-block{position:relative}.code-copy{position:absolute;top:6px;right:6px;display:flex;align-items:center;justify-content:center;padding:5px;border:1px solid var(--color-border);border-radius:4px;background-color:var(--color-code-bg);color:var(--color-brand);cursor:pointer;opacity:0;transition:opacity 0.15s, color 0.15s}.code-copy:hover{color:var(--color-text)}.code-copy.is-ok{color:var(--color-success);opacity:1}.code-copy.is-error{color:var(--color-danger);opacity:1}.code-block:hover>.code-copy,.code-copy:focus-visible{opacity:1}@media (hover: none){.code-copy{opacity:0.8}}.toc-sidebar{display:none}@media screen and (min-width: 1200px){.toc-sidebar{display:block;position:fixed;top:88px;left:calc(50% + 360px + 40px);width:calc(50vw - 360px - 64px);max-width:240px;max-height:calc(100vh - 120px);overflow-y:auto;overscroll-behavior:contain;font-size:0.8125rem;line-height:1.4}.toc-sidebar .toc-title{margin:0 0 8px 14px;font-size:0.8125rem;font-weight:600;color:var(--color-heading)}.toc-sidebar>ul{list-style:none;margin:0;padding:0;border-left:2px solid var(--color-border)}.toc-sidebar li{margin:0}.toc-sidebar .toc-sub{list-style:none;margin:0;padding:0;border-left:none;max-height:0;overflow:hidden;transition:max-height 0.25s ease}.toc-sidebar .toc-sub.toc-expanded{max-height:1000px}.toc-sidebar .toc-h3{padding-left:12px}.toc-sidebar a{display:block;padding:3px 0 3px 12px;color:var(--color-brand);text-decoration:none;transition:color 0.15s}.toc-sidebar a:hover{color:var(--color-heading)}.toc-sidebar a.toc-active{color:var(--color-link);font-weight:500;border-left:2px solid var(--color-link);margin-left:-2px}}.toc-inline{margin:0 0 1.5rem;border:1px solid var(--color-border);border-radius:8px;font-size:14px}.toc-inline>summary{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;cursor:pointer;color:var(--color-heading);font-weight:600;list-style:none}.toc-inline>summary::-webkit-details-marker{display:none}.toc-inline .toc-chevron{color:var(--color-brand);transition:transform 0.15s}.toc-inline[open] .toc-chevron{transform:rotate(180deg)}.toc-inline>ul{list-style:none;margin:0;padding:0 12px 10px;columns:2 220px;column-gap:24px}.toc-inline li,.toc-inline li+li{break-inside:avoid;margin:0}.toc-inline a,.post-content .toc-inline a{display:block;padding:3px 0;text-decoration:none}@media screen and (min-width: 1200px){.toc-inline{display:none}}[data-viz]{margin:0 0 30px}[data-viz]>img{display:block;max-width:100%;height:auto}.viz-stage{position:relative;max-width:100%;line-height:0}.viz-canvas{display:block;width:100%;height:auto;border:1px solid var(--color-border);border-radius:4px}.viz-controls{position:absolute;right:8px;bottom:8px;display:flex;gap:4px;opacity:0.75;transition:opacity 0.15s}.viz-stage:hover .viz-controls,.viz-controls:focus-within{opacity:1}.viz-btn{display:flex;align-items:center;justify-content:center;padding:5px;border:1px solid var(--color-border);border-radius:4px;background-color:var(--color-bg);color:var(--color-text);cursor:pointer}@media print{.site-header .site-controls,.page-actions,.toc-sidebar,.toc-inline,.code-copy,.entry-copy,.heading-anchor,.viz-controls,.site-footer{display:none !important}}.social-links{display:flex;justify-content:right}.social-links .social-media-list,.social-links .pagination{margin:0}
