:root{--primary:#4CC2FF;--primary-hover:#66D0FF;--primary-active:#2EA6E6;--text:#E6EDF3;--code:#E6EDF3;--text-dim:#A9B4C2;--text-disabled:#6B7280;--link:#4CC2FF;--link-visited:#A78BFA;--accent:#A78BFA;--accent-cyan:#2DD4BF;--info:#38BDF8;--background:#0F1117;--surface-1:#1A1D26;--surface-2:#2A2F3A;--surface-3:#3A4050;--code-background:#0F1117;--code-border:#2A2F3A;--code-hl:#2A2F3A;--border-general:#2A2F3A;--table-th:#1A1D26;--table-tr:#0F1117;--toc-background:#1A1D26;--toc-border:#2A2F3A;--output-background:#1A1D26;--output-foreground:#4CC2FF;--success:#22C55E;--warning:#F59E0B;--danger:#EF4444;--hover-background:rgba(255, 255, 255, 0.06);--active-background:rgba(255, 255, 255, 0.1);--selection-highlight:#253047;--crt-blue:#4CC2FF;--crt-purple:#A78BFA;--crt-cyan:#2DD4BF;--crt-magenta:#EF4444}#gitinfo-date{color:var(--text-dim);filter:opacity(40%);font-style:italic;font-size:.9em;white-space:nowrap}@media screen and (min-width:760px){#gitinfo-date{margin-left:30px}}html{color:var(--text);scroll-behavior:smooth}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--background);border-radius:4px}::-webkit-scrollbar-thumb{background:var(--primary);border-radius:4px;border:2px solid var(--background)}::-webkit-scrollbar-thumb:hover{background:var(--link-visited)}body{margin:auto;padding:0 1em 2em;font-family:iosevka term,source code pro,jetbrains mono,fira code,consolas,lucida console,courier new,wenquanyi micro hei mono,microsoft yahei mono,monospace;line-height:1.6;text-align:left;width:90%;max-width:880px;letter-spacing:.02em;position:relative;min-height:100vh;background-color:var(--background)}main{hyphens:none}h1,h2,h3,h4,h5,h6{color:var(--primary);line-height:1.3;margin:1.5em 0 .5em}h1{font-size:2.2em;font-weight:700;border-bottom:2px solid var(--primary);padding-bottom:.3em}h2{font-size:1.8em;font-weight:600;border-bottom:1px dashed var(--border-general);padding-bottom:.2em}h3{font-size:1.5em;font-weight:600}h4{font-size:1.25em;font-weight:500;color:var(--text-dim)}h5{font-size:1.1em;font-weight:500;color:var(--text-dim)}h6{font-size:1em;font-weight:500;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em}p{margin:.7em 0}a{text-decoration:none;color:var(--link)}a:hover{text-decoration:underline;color:var(--link-visited)}a:visited{color:var(--link-visited)}hr{border-style:dashed;color:var(--text-dim)}blockquote{border-left:.3rem solid var(--primary);margin:1.6rem 0;padding:.3rem 1.4rem .3rem 1rem;line-height:1.6;background:var(--surface-1);box-shadow:0 2px 4px rgba(0,0,0,.3);border-radius:0 6px 6px 0}blockquote p{margin:0}details{padding:.5rem 1rem;border-left:2px dashed var(--border-general);background:var(--surface-1);box-shadow:0 2px 4px rgba(0,0,0,.3);border-radius:0 6px 6px 0}mark{padding:0 2px}ul{padding-left:2rem}strong{font-weight:600;color:var(--text-dim)}th{font-weight:500}.section-title{border:0}.post-list{color:var(--primary);padding-left:1em}@media screen and (min-width:760px){.post-list{max-width:60vw}}.bold-post-in-list{font-weight:800}.footnotes{margin-top:60px}mjx-container[display=true]{display:block;overflow-x:auto;overflow-y:hidden;font-size:smaller;padding:1em 1.5em;margin:1em 0;border-bottom:2px solid var(--surface-2);border-radius:6px;box-shadow:0 4px 12px color-mix(in srgb,var(--border-general) 80%,transparent),}img{max-height:50vh;max-width:100%;padding:.5em;background:var(--surface-2);backdrop-filter:blur(10px);border-radius:6px;display:block;margin-left:auto;margin-right:auto;box-sizing:border-box;transition:transform .3s ease,box-shadow .3s ease}img:hover{max-height:none;box-shadow:0 8px 24px var(--border-general)}html::before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(ellipse at center,transparent 0%,rgba(0,0,0,.3) 100%),repeating-linear-gradient(0,rgba(0,0,0,.1),rgba(0,0,0,.1) 1px,transparent 1px,transparent 3px);pointer-events:none;z-index:9999}html{background-color:var(--background);background-image:radial-gradient(circle at 25% 25%,rgba(76,194,255,3%) 0%,transparent 50%),radial-gradient(circle at 75% 75%,rgba(167,139,250,2%) 0%,transparent 50%)}h1,h2,h3,h4,h5,h6{text-shadow:0 0 8px var(--primary),0 0 16px var(--primary)}a{text-shadow:0 0 4px var(--link)}code{text-shadow:0 0 4px var(--primary)}ul,ol{padding-left:2rem}ul li,ol li{margin:.5em 0;position:relative}ul li::marker{color:var(--primary);content:"▸ ";font-size:1.2em}.post-list{list-style:none}.post-list li{padding:0 1em;margin:.4em 0;background:var(--surface-1);border:1px solid var(--border-general);transition:all .2s ease}.post-list li:hover{background:var(--surface-2);border-color:var(--primary);box-shadow:0 0 10px rgba(76,194,255,.2)}::selection{background:var(--selection-highlight);color:var(--background);text-shadow:none}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--background);border-radius:4px}::-webkit-scrollbar-thumb{background:var(--primary);border-radius:4px;border:2px solid var(--background)}::-webkit-scrollbar-thumb:hover{background:var(--link-visited)}.menu{padding:0 4px 0 0;z-index:9999;text-align:left;margin-bottom:10px;position:relative}.menu::before{content:"[ ";color:var(--primary)}.menu::after{content:" ]";color:var(--primary)}.menu li{display:inline-block}.menu a{margin-right:1.1em;text-decoration:none;border-radius:0;padding:.2em .5em;border:1px solid transparent;transition:all .2s ease}.menu a:hover{border-color:var(--primary);background:rgba(76,194,255,.1)}.menu a:visited{color:var(--link)}.toc a{color:var(--text-dim);transition:color .2s ease}.toc a:hover{color:var(--primary);text-shadow:0 0 5px var(--primary)}.toc a:visited{color:var(--text-dim)}@media screen and (min-width:1150px){#tableOfContentContainer{position:fixed;left:20px;top:46px;max-width:15vw;width:15vw}#TableOfContents{opacity:.6;transition-duration:1s}#TableOfContents:hover{opacity:1}}.toc{animation-duration:1s;background:var(--surface-1)repeat;border:1px solid var(--toc-border);display:table;font-size:95%;margin-bottom:1em;padding:.4em 1.5em .4em .2em;width:auto;margin-top:auto;box-shadow:0 0 10px rgba(76,194,255,.15);border-radius:0;position:relative}.toc::before{content:"> TABLE OF CONTENTS";display:block;color:var(--primary);font-weight:700;margin-bottom:.5em;text-shadow:0 0 5px var(--primary)}@media screen and (min-width:1150px){.toc{padding:0;background-color:initial;font-size:80%;line-height:1.3;border-right:0;border-top:0;border-bottom:0;border-left:0}#TableOfContents{max-height:85vh;overflow-y:auto}#TableOfContents li{max-width:13vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}.toc li,.toc ul,.toc ul li{list-style:outside none none}.toc ul li a{transition-duration:50ms}.active-toc{font-weight:700;transition-duration:50ms}@media screen and (min-width:1150px){#TableOfContents{margin-left:-32px}}#TableOfContents ul{padding-left:20px}.toc h3{margin-left:20px;margin-top:.5em;margin-bottom:.5em;font-weight:400}#single-header{padding:0 8px 4px 0;margin-bottom:20px;margin-top:10px;border-bottom:1px solid var(--border-general)}.date{color:var(--text-dim);padding-top:.1em;font-size:90%}#single-meta{margin-top:0;margin-bottom:0;padding-top:0;font-size:.9em;text-align:left}#single-meta a:visited{color:var(--link)}#subtitle{font-family:inherit;margin-top:-8px;margin-bottom:.3em;font-size:1.2em;color:var(--text-dim)}.datesub{font-weight:400;color:var(--text-dim)}.chroma{color:#e6edf3;background-color:#0f1117}.chroma .err{color:#ef4444;text-shadow:0 0 5px #ef4444}.chroma .lnt,.chroma .ln{color:#6b7280}.chroma .lntd:first-child .lnt,.chroma .lntd:first-child .ln{user-select:none;margin-right:14px}.chroma .hl{background-color:#2a2f3a;display:inline-block;width:100%}.chroma .k{color:#4cc2ff;text-shadow:0 0 5px #4cc2ff}.chroma .kc{color:#f59e0b;text-shadow:0 0 5px #f59e0b}.chroma .kd{color:#4cc2ff;text-shadow:0 0 5px #4cc2ff}.chroma .kn{color:#4cc2ff;text-shadow:0 0 5px #4cc2ff}.chroma .kp{color:#4cc2ff;text-shadow:0 0 5px #4cc2ff}.chroma .kr{color:#4cc2ff;text-shadow:0 0 5px #4cc2ff}.chroma .kt{color:#38bdf8;text-shadow:0 0 5px #38bdf8}.chroma .na{color:#2dd4bf;text-shadow:0 0 5px #2dd4bf}.chroma .nb{color:#66d0ff;text-shadow:0 0 5px #66d0ff}.chroma .bp{color:#66d0ff;text-shadow:0 0 5px #66d0ff}.chroma .nc{color:#38bdf8;text-shadow:0 0 5px #38bdf8}.chroma .no{color:#f59e0b;text-shadow:0 0 5px #f59e0b}.chroma .nd{color:#22c55e;text-shadow:0 0 5px #22c55e}.chroma .ni{color:#a78bfa;text-shadow:0 0 5px #a78bfa}.chroma .ne{color:#ef4444;text-shadow:0 0 5px #ef4444}.chroma .nf{color:#a78bfa;text-shadow:0 0 5px #a78bfa}.chroma .fm{color:#a78bfa;text-shadow:0 0 5px #a78bfa}.chroma .nl{color:#66d0ff;text-shadow:0 0 5px #66d0ff}.chroma .nn{color:#38bdf8;text-shadow:0 0 5px #38bdf8}.chroma .nt{color:#2dd4bf;text-shadow:0 0 5px #2dd4bf}.chroma .nv{color:#e6edf3}.chroma .vc{color:#e6edf3}.chroma .vg{color:#e6edf3}.chroma .vi{color:#e6edf3}.chroma .vm{color:#a78bfa;text-shadow:0 0 5px #a78bfa}.chroma .l{color:#f59e0b;text-shadow:0 0 5px #f59e0b}.chroma .ld{color:#2dd4bf;text-shadow:0 0 5px #2dd4bf}.chroma .m{color:#f59e0b;text-shadow:0 0 5px #f59e0b}.chroma .mf{color:#f59e0b;text-shadow:0 0 5px #f59e0b}.chroma .mh{color:#f59e0b;text-shadow:0 0 5px #f59e0b}.chroma .mi{color:#f59e0b;text-shadow:0 0 5px #f59e0b}.chroma .il{color:#f59e0b;text-shadow:0 0 5px #f59e0b}.chroma .mo{color:#f59e0b;text-shadow:0 0 5px #f59e0b}.chroma .o{color:#a9b4c2}.chroma .ow{color:#4cc2ff;text-shadow:0 0 5px #4cc2ff}.chroma .p{color:#a9b4c2}.chroma .c{color:#6b7280;font-style:italic}.chroma .c1{color:#6b7280;font-style:italic}.chroma .cm{color:#6b7280;font-style:italic}.chroma .cp{color:#a78bfa;text-shadow:0 0 5px #a78bfa}.chroma .cs{color:#6b7280;font-style:italic}.chroma .s{color:#2dd4bf;text-shadow:0 0 5px #2dd4bf}.chroma .sa{color:#2dd4bf;text-shadow:0 0 5px #2dd4bf}.chroma .sb{color:#2dd4bf;text-shadow:0 0 5px #2dd4bf}.chroma .sc{color:#2dd4bf;text-shadow:0 0 5px #2dd4bf}.chroma .dl{color:#2dd4bf;text-shadow:0 0 5px #2dd4bf}.chroma .sd{color:#6b7280}.chroma .s2{color:#2dd4bf;text-shadow:0 0 5px #2dd4bf}.chroma .se{color:#f59e0b;text-shadow:0 0 5px #f59e0b}.chroma .sh{color:#2dd4bf;text-shadow:0 0 5px #2dd4bf}.chroma .si{color:#2dd4bf;text-shadow:0 0 5px #2dd4bf}.chroma .sx{color:#22c55e;text-shadow:0 0 5px #22c55e}.chroma .sr{color:#22c55e;text-shadow:0 0 5px #22c55e}.chroma .s1{color:#2dd4bf;text-shadow:0 0 5px #2dd4bf}.chroma .ss{color:#22c55e;text-shadow:0 0 5px #22c55e}.chroma .gd{color:#ef4444;background-color:rgba(239,68,68,.1);text-shadow:0 0 5px #ef4444}.chroma .ge{color:#e6edf3;font-style:italic}.chroma .gh{color:#66d0ff;font-weight:700;text-shadow:0 0 5px #66d0ff}.chroma .gi{color:#22c55e;background-color:rgba(34,197,94,.1);text-shadow:0 0 5px #22c55e}.chroma .go{color:#a9b4c2}.chroma .gp{color:#a9b4c2}.chroma .gs{font-weight:700}.chroma .gu{color:#a78bfa;text-shadow:0 0 5px #a78bfa}.chroma .gt{color:#ef4444;text-shadow:0 0 5px #ef4444}.chroma .gl{text-decoration:line-through;color:#ef4444;text-shadow:0 0 5px #ef4444}.chroma .w{color:#a9b4c2}.chroma .x{color:#e6edf3}.highlight div,pre{background-color:var(--code-background);padding:1em;overflow-x:auto;margin:0;border:1px solid var(--code-border);border-radius:0;line-height:1.4;user-select:all;cursor:pointer;box-shadow:0 0 10px rgba(76,194,255,.15),inset 0 0 20px rgba(0,0,0,.5);position:relative}.highlight div::before,pre::before{content:">_";position:absolute;top:.5em;right:1em;color:var(--primary);opacity:.5;font-family:monospace;font-weight:700}.highlight{margin:.8em 0}.highlight div pre{border:0;padding:0 5px;margin:0;box-shadow:0 0}code{font-family:iosevka term,source code pro,jetbrains mono,fira code,consolas,monospace;color:var(--code);font-stretch:normal;background:var(--code-background);border-radius:0;padding:.1em .4em;border:1px solid var(--code-border);font-size:.9em;box-shadow:0 0 5px rgba(76,194,255,.2)}pre code{font-size:.9em;font-stretch:normal;border:none;background:0 0;padding:0;margin:0;tab-size:4}@media screen and (max-width:760px){pre code{font-size:80%}}.fs95{font-size:90%}.fs90{font-size:90%}.fs85{font-size:85%}.fs80{font-size:80%}.fs75{font-size:75%}.fs70{font-size:75%}.fs50{font-size:50%}.output{margin-top:-.8em}.output pre{border-radius:0;background-color:var(--output-background)}.output code{color:var(--output-foreground);line-height:1}table{border-collapse:separate;border-spacing:0;display:block;overflow:auto;box-shadow:0 0 10px rgba(76,194,255,.15);border-radius:0;overflow:hidden;margin-left:auto;margin-right:auto;min-width:60%;border:1px solid var(--border-general)}@media screen and (min-width:760px){table{display:table!important}}table thead th{border:1px solid var(--border-general)}th,td{padding:6px 12px;border:1px solid var(--border-general)}th{background-color:var(--table-th);color:var(--primary);text-shadow:0 0 5px var(--primary)}tr{background-color:var(--table-tr)}.attachments-files{display:block;font-size:1rem;margin:0}.attachment-size{display:inline-block;color:var(--text-dim)}.attachments ul{margin-top:4px}.attachments label{font-weight:300;margin:0}.md-columns{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.md-columns>div{flex:1 1;margin:1rem 0;min-width:100px;max-width:100%;padding:0 1rem}.md-columns .markdown-inner{margin-top:0;margin-bottom:0}.md-tabs{margin-top:1rem;margin-bottom:1rem;border:1px solid var(--border-general);border-radius:0;overflow:hidden;display:flex;flex-wrap:wrap;box-shadow:0 0 10px rgba(76,194,255,.15)}.md-tabs label{display:inline-block;padding:.6rem .2rem .3rem;border-bottom:1px transparent;cursor:pointer}.md-tabs .md-tabs-content{order:999;width:100%;border-top:1px solid var(--border-general);padding:.5rem 1rem 1rem;display:none}.md-tabs input[type=radio]{margin-left:1.1rem}.md-tabs input[type=radio]:checked+label+.md-tabs-content{display:block}.card{background:var(--surface-1);box-shadow:0 0 10px rgba(76,194,255,.15);border-radius:0;padding:1rem;border:1px solid var(--border-general)}