@charset "UTF-8";/*!* Hugo Theme Stack
*
* @author: Jimmy Cai
* @website: https://jimmycai.com
* @link: https://github.com/CaiJimmy/hugo-theme-stack*/:root{--main-top-padding:35px;--body-background:#f5f5fa;--accent-color:#34495e;--accent-color-darker:#2c3e50;--accent-color-text:#fff;--body-text-color:#707070;--tag-border-radius:4px;--section-separation:40px;--scrollbar-thumb:hsl(0, 0%, 85%);--scrollbar-track:var(--body-background)}@media(min-width:1280px){:root{--main-top-padding:50px}}:root[data-scheme=dark]{--body-background:#303030;--accent-color:#ecf0f1;--accent-color-darker:#bdc3c7;--accent-color-text:#000;--body-text-color:rgba(255, 255, 255, 0.7);--scrollbar-thumb:hsl(0, 0%, 40%);--scrollbar-track:var(--body-background)}:root{--sys-font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", "Droid Sans", "Helvetica Neue";--zh-font-family:"PingFang SC", "Hiragino Sans GB", "Droid Sans Fallback", "Microsoft YaHei";--base-font-family:"Lato", var(--sys-font-family), var(--zh-font-family), sans-serif;--code-font-family:Menlo, Monaco, Consolas, "Courier New", var(--zh-font-family), monospace}:root{--card-background:#fff;--card-background-selected:#eaeaea;--card-text-color-main:#000;--card-text-color-secondary:#747474;--card-text-color-tertiary:#767676;--card-separator-color:rgba(218, 218, 218, 0.5);--card-border-radius:10px;--card-padding:20px;--small-card-padding:25px 20px}@media(min-width:768px){:root{--card-padding:25px}}@media(min-width:1280px){:root{--card-padding:30px}}@media(min-width:768px){:root{--small-card-padding:25px}}:root[data-scheme=dark]{--card-background:#424242;--card-background-selected:rgba(255, 255, 255, 0.16);--card-text-color-main:rgba(255, 255, 255, 0.9);--card-text-color-secondary:rgba(255, 255, 255, 0.7);--card-text-color-tertiary:rgba(255, 255, 255, 0.5);--card-separator-color:rgba(255, 255, 255, 0.12)}:root{--article-font-family:var(--base-font-family);--article-font-size:1.6rem;--article-line-height:1.85}@media(min-width:768px){:root{--article-font-size:1.7rem}}:root{--blockquote-border-size:4px;--blockquote-background-color:rgb(248 248 248);--heading-border-size:4px;--link-background-color:189, 195, 199;--link-background-opacity:0.5;--link-background-opacity-hover:0.7;--pre-background-color:#272822;--pre-text-color:#f8f8f2;--code-background-color:rgba(0, 0, 0, 0.12);--code-text-color:#808080;--table-border-color:#dadada;--tr-even-background-color:#efefee;--kbd-border-color:#dadada}:root[data-scheme=dark]{--code-background-color:#272822;--code-text-color:rgba(255, 255, 255, 0.9);--table-border-color:#717171;--tr-even-background-color:#545454;--blockquote-background-color:rgb(75 75 75)}:root{--shadow-l1:0px 4px 8px rgba(0, 0, 0, 0.04), 0px 0px 2px rgba(0, 0, 0, 0.06), 0px 0px 1px rgba(0, 0, 0, 0.04);--shadow-l2:0px 10px 20px rgba(0, 0, 0, 0.04), 0px 2px 6px rgba(0, 0, 0, 0.04), 0px 0px 1px rgba(0, 0, 0, 0.04);--shadow-l3:0px 10px 20px rgba(0, 0, 0, 0.04), 0px 2px 6px rgba(0, 0, 0, 0.04), 0px 0px 1px rgba(0, 0, 0, 0.04);--shadow-l4:0px 24px 32px rgba(0, 0, 0, 0.04), 0px 16px 24px rgba(0, 0, 0, 0.04), 0px 4px 8px rgba(0, 0, 0, 0.04),
        0px 0px 1px rgba(0, 0, 0, 0.04)}[data-scheme=light]{--pre-text-color:#272822;--pre-background-color:#fafafa}[data-scheme=light] .chroma{color:#272822;background-color:#fafafa}[data-scheme=light] .chroma .err{color:#960050}[data-scheme=light] .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}[data-scheme=light] .chroma .lntable{border-spacing:0;padding:0;margin:0;border:0;width:100%;display:block}[data-scheme=light] .chroma .lntable>tbody{display:block;width:100%}[data-scheme=light] .chroma .lntable>tbody>tr{display:flex;width:100%}[data-scheme=light] .chroma .lntable>tbody>tr>td:last-child{overflow-x:auto}[data-scheme=light] .chroma .hl{display:block;width:100%;background-color:#ffc}[data-scheme=light] .chroma .lnt{margin-right:.4em;padding:0 .4em;color:#7f7f7f;display:block}[data-scheme=light] .chroma .ln{margin-right:.4em;padding:0 .4em;color:#7f7f7f}[data-scheme=light] .chroma .k{color:#00a8c8}[data-scheme=light] .chroma .kc{color:#00a8c8}[data-scheme=light] .chroma .kd{color:#00a8c8}[data-scheme=light] .chroma .kn{color:#f92672}[data-scheme=light] .chroma .kp{color:#00a8c8}[data-scheme=light] .chroma .kr{color:#00a8c8}[data-scheme=light] .chroma .kt{color:#00a8c8}[data-scheme=light] .chroma .n{color:#111}[data-scheme=light] .chroma .na{color:#75af00}[data-scheme=light] .chroma .nb{color:#111}[data-scheme=light] .chroma .bp{color:#111}[data-scheme=light] .chroma .nc{color:#75af00}[data-scheme=light] .chroma .no{color:#00a8c8}[data-scheme=light] .chroma .nd{color:#75af00}[data-scheme=light] .chroma .ni{color:#111}[data-scheme=light] .chroma .ne{color:#75af00}[data-scheme=light] .chroma .nf{color:#75af00}[data-scheme=light] .chroma .fm{color:#111}[data-scheme=light] .chroma .nl{color:#111}[data-scheme=light] .chroma .nn{color:#111}[data-scheme=light] .chroma .nx{color:#75af00}[data-scheme=light] .chroma .py{color:#111}[data-scheme=light] .chroma .nt{color:#f92672}[data-scheme=light] .chroma .nv{color:#111}[data-scheme=light] .chroma .vc{color:#111}[data-scheme=light] .chroma .vg{color:#111}[data-scheme=light] .chroma .vi{color:#111}[data-scheme=light] .chroma .vm{color:#111}[data-scheme=light] .chroma .l{color:#ae81ff}[data-scheme=light] .chroma .ld{color:#d88200}[data-scheme=light] .chroma .s{color:#d88200}[data-scheme=light] .chroma .sa{color:#d88200}[data-scheme=light] .chroma .sb{color:#d88200}[data-scheme=light] .chroma .sc{color:#d88200}[data-scheme=light] .chroma .dl{color:#d88200}[data-scheme=light] .chroma .sd{color:#d88200}[data-scheme=light] .chroma .s2{color:#d88200}[data-scheme=light] .chroma .se{color:#ae81ff}[data-scheme=light] .chroma .sh{color:#d88200}[data-scheme=light] .chroma .si{color:#d88200}[data-scheme=light] .chroma .sx{color:#d88200}[data-scheme=light] .chroma .sr{color:#d88200}[data-scheme=light] .chroma .s1{color:#d88200}[data-scheme=light] .chroma .ss{color:#d88200}[data-scheme=light] .chroma .m{color:#ae81ff}[data-scheme=light] .chroma .mb{color:#ae81ff}[data-scheme=light] .chroma .mf{color:#ae81ff}[data-scheme=light] .chroma .mh{color:#ae81ff}[data-scheme=light] .chroma .mi{color:#ae81ff}[data-scheme=light] .chroma .il{color:#ae81ff}[data-scheme=light] .chroma .mo{color:#ae81ff}[data-scheme=light] .chroma .o{color:#f92672}[data-scheme=light] .chroma .ow{color:#f92672}[data-scheme=light] .chroma .p{color:#111}[data-scheme=light] .chroma .c{color:#75715e}[data-scheme=light] .chroma .ch{color:#75715e}[data-scheme=light] .chroma .cm{color:#75715e}[data-scheme=light] .chroma .c1{color:#75715e}[data-scheme=light] .chroma .cs{color:#75715e}[data-scheme=light] .chroma .cp{color:#75715e}[data-scheme=light] .chroma .cpf{color:#75715e}[data-scheme=light] .chroma .gd{color:#f92672}[data-scheme=light] .chroma .ge{font-style:italic}[data-scheme=light] .chroma .gi{color:#75af00}[data-scheme=light] .chroma .gs{font-weight:700}[data-scheme=light] .chroma .gu{color:#75715e}[data-scheme=dark]{--pre-text-color:#f8f8f2;--pre-background-color:#272822}[data-scheme=dark] .chroma{color:#f8f8f2;background-color:#272822}[data-scheme=dark] .chroma .err{color:#bb0064}[data-scheme=dark] .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}[data-scheme=dark] .chroma .lntable{border-spacing:0;padding:0;margin:0;border:0;width:100%;display:block}[data-scheme=dark] .chroma .lntable>tbody{display:block;width:100%}[data-scheme=dark] .chroma .lntable>tbody>tr{display:flex;width:100%}[data-scheme=dark] .chroma .lntable>tbody>tr>td:last-child{overflow-x:auto}[data-scheme=dark] .chroma .hl{display:block;width:100%;background-color:#ffc}[data-scheme=dark] .chroma .lnt{margin-right:.4em;padding:0 .4em;color:#7f7f7f;display:block}[data-scheme=dark] .chroma .ln{margin-right:.4em;padding:0 .4em;color:#7f7f7f}[data-scheme=dark] .chroma .k{color:#66d9ef}[data-scheme=dark] .chroma .kc{color:#66d9ef}[data-scheme=dark] .chroma .kd{color:#66d9ef}[data-scheme=dark] .chroma .kn{color:#f92672}[data-scheme=dark] .chroma .kp{color:#66d9ef}[data-scheme=dark] .chroma .kr{color:#66d9ef}[data-scheme=dark] .chroma .kt{color:#66d9ef}[data-scheme=dark] .chroma .n{color:#f8f8f2}[data-scheme=dark] .chroma .na{color:#a6e22e}[data-scheme=dark] .chroma .nb{color:#f8f8f2}[data-scheme=dark] .chroma .bp{color:#f8f8f2}[data-scheme=dark] .chroma .nc{color:#a6e22e}[data-scheme=dark] .chroma .no{color:#66d9ef}[data-scheme=dark] .chroma .nd{color:#a6e22e}[data-scheme=dark] .chroma .ni{color:#f8f8f2}[data-scheme=dark] .chroma .ne{color:#a6e22e}[data-scheme=dark] .chroma .nf{color:#a6e22e}[data-scheme=dark] .chroma .fm{color:#f8f8f2}[data-scheme=dark] .chroma .nl{color:#f8f8f2}[data-scheme=dark] .chroma .nn{color:#f8f8f2}[data-scheme=dark] .chroma .nx{color:#a6e22e}[data-scheme=dark] .chroma .py{color:#f8f8f2}[data-scheme=dark] .chroma .nt{color:#f92672}[data-scheme=dark] .chroma .nv{color:#f8f8f2}[data-scheme=dark] .chroma .vc{color:#f8f8f2}[data-scheme=dark] .chroma .vg{color:#f8f8f2}[data-scheme=dark] .chroma .vi{color:#f8f8f2}[data-scheme=dark] .chroma .vm{color:#f8f8f2}[data-scheme=dark] .chroma .l{color:#ae81ff}[data-scheme=dark] .chroma .ld{color:#e6db74}[data-scheme=dark] .chroma .s{color:#e6db74}[data-scheme=dark] .chroma .sa{color:#e6db74}[data-scheme=dark] .chroma .sb{color:#e6db74}[data-scheme=dark] .chroma .sc{color:#e6db74}[data-scheme=dark] .chroma .dl{color:#e6db74}[data-scheme=dark] .chroma .sd{color:#e6db74}[data-scheme=dark] .chroma .s2{color:#e6db74}[data-scheme=dark] .chroma .se{color:#ae81ff}[data-scheme=dark] .chroma .sh{color:#e6db74}[data-scheme=dark] .chroma .si{color:#e6db74}[data-scheme=dark] .chroma .sx{color:#e6db74}[data-scheme=dark] .chroma .sr{color:#e6db74}[data-scheme=dark] .chroma .s1{color:#e6db74}[data-scheme=dark] .chroma .ss{color:#e6db74}[data-scheme=dark] .chroma .m{color:#ae81ff}[data-scheme=dark] .chroma .mb{color:#ae81ff}[data-scheme=dark] .chroma .mf{color:#ae81ff}[data-scheme=dark] .chroma .mh{color:#ae81ff}[data-scheme=dark] .chroma .mi{color:#ae81ff}[data-scheme=dark] .chroma .il{color:#ae81ff}[data-scheme=dark] .chroma .mo{color:#ae81ff}[data-scheme=dark] .chroma .o{color:#f92672}[data-scheme=dark] .chroma .ow{color:#f92672}[data-scheme=dark] .chroma .p{color:#f8f8f2}[data-scheme=dark] .chroma .c{color:#75715e}[data-scheme=dark] .chroma .ch{color:#75715e}[data-scheme=dark] .chroma .cm{color:#75715e}[data-scheme=dark] .chroma .c1{color:#75715e}[data-scheme=dark] .chroma .cs{color:#75715e}[data-scheme=dark] .chroma .cp{color:#75715e}[data-scheme=dark] .chroma .cpf{color:#75715e}[data-scheme=dark] .chroma .gd{color:#f92672}[data-scheme=dark] .chroma .ge{font-style:italic}[data-scheme=dark] .chroma .gi{color:#a6e22e}[data-scheme=dark] .chroma .gs{font-weight:700}[data-scheme=dark] .chroma .gu{color:#75715e}:root{--menu-icon-separation:40px;--container-padding:15px;--widget-separation:var(--section-separation)}.container{margin-left:auto;margin-right:auto}.container .left-sidebar{order:-3;max-width:var(--left-sidebar-max-width)}.container .right-sidebar{order:-1;max-width:var(--right-sidebar-max-width)}@media(min-width:1024px){.container .right-sidebar{display:flex}}@media(min-width:768px){.container.extended{max-width:1024px;--left-sidebar-max-width:25%;--right-sidebar-max-width:30%}}@media(min-width:1024px){.container.extended{max-width:1280px;--left-sidebar-max-width:20%;--right-sidebar-max-width:30%}}@media(min-width:1280px){.container.extended{max-width:1536px;--left-sidebar-max-width:15%;--right-sidebar-max-width:25%}}@media(min-width:768px){.container.compact{--left-sidebar-max-width:25%;max-width:768px}}@media(min-width:1024px){.container.compact{max-width:1024px;--left-sidebar-max-width:20%}}@media(min-width:1280px){.container.compact{max-width:1280px}}.flex{display:flex;flex-direction:row}.flex.column{flex-direction:column}.flex.on-phone--column{flex-direction:column}@media(min-width:768px){.flex.on-phone--column{flex-direction:unset}}.flex .full-width{width:100%}main.main{order:-2;min-width:0;max-width:100%;flex-grow:1;display:flex;flex-direction:column;gap:var(--section-separation)}@media(min-width:768px){main.main{padding-top:var(--main-top-padding)}}.main-container{min-height:100vh;align-items:flex-start;padding:0 15px;gap:var(--section-separation);padding-top:var(--main-top-padding)}@media(min-width:768px){.main-container{padding:0 20px}}/*!normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css*/html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}/*!* Hamburgers
* @description Tasty CSS-animated hamburgers
* @author Jonathan Suh @jonsuh
* @site https://jonsuh.com/hamburgers
* @link https://github.com/jonsuh/hamburgers*/.hamburger{padding-top:10px;display:inline-block;cursor:pointer;transition-property:opacity,filter;transition-duration:.15s;transition-timing-function:linear;font:inherit;color:inherit;text-transform:none;background-color:transparent;border:0;margin:0;overflow:visible}.hamburger:hover{opacity:.7}.hamburger.is-active:hover{opacity:.7}.hamburger.is-active .hamburger-inner,.hamburger.is-active .hamburger-inner::before,.hamburger.is-active .hamburger-inner::after{background-color:#000}.hamburger-box{width:30px;height:24px;display:inline-block;position:relative}.hamburger-inner{display:block;top:50%;margin-top:-2px}.hamburger-inner,.hamburger-inner::before,.hamburger-inner::after{width:30px;height:2px;background-color:var(--card-text-color-main);border-radius:4px;position:absolute;transition-property:transform;transition-duration:.15s;transition-timing-function:ease}.hamburger-inner::before,.hamburger-inner::after{content:"";display:block}.hamburger-inner::before{top:-10px}.hamburger-inner::after{bottom:-10px}.hamburger--spin .hamburger-inner{transition-duration:.22s;transition-timing-function:cubic-bezier(.55,.055,.675,.19)}.hamburger--spin .hamburger-inner::before{transition:top .1s .25s ease-in,opacity .1s ease-in}.hamburger--spin .hamburger-inner::after{transition:bottom .1s .25s ease-in,transform .22s cubic-bezier(.55,.055,.675,.19)}.hamburger--spin.is-active .hamburger-inner{transform:rotate(225deg);transition-delay:.12s;transition-timing-function:cubic-bezier(.215,.61,.355,1)}.hamburger--spin.is-active .hamburger-inner::before{top:0;opacity:0;transition:top .1s ease-out,opacity .1s .12s ease-out}.hamburger--spin.is-active .hamburger-inner::after{bottom:0;transform:rotate(-90deg);transition:bottom .1s ease-out,transform .22s .12s cubic-bezier(.215,.61,.355,1)}#toggle-menu{background:0 0;border:none;position:absolute;right:0;top:0;z-index:2;cursor:pointer;outline:none}[dir=rtl] #toggle-menu{left:0;right:auto}@media(min-width:768px){#toggle-menu{display:none}}#toggle-menu.is-active .hamburger-inner,#toggle-menu.is-active .hamburger-inner::before,#toggle-menu.is-active .hamburger-inner::after{background-color:var(--accent-color)}#main-menu{list-style:none;overflow-y:auto;flex-grow:1;font-size:1.4rem;background-color:var(--card-background);box-shadow:var(--shadow-l1);display:none;margin:0 calc(var(--container-padding) * -1);padding:30px}@media(min-width:1280px){#main-menu{padding:15px 0}}#main-menu,#main-menu .menu-bottom-section ol{flex-direction:column;gap:30px}@media(min-width:1280px){#main-menu,#main-menu .menu-bottom-section ol{gap:25px}}#main-menu.show{display:flex}@media(min-width:768px){#main-menu{align-items:flex-end;display:flex;background-color:transparent;padding:0;box-shadow:none;margin:0}}#main-menu li{position:relative;vertical-align:middle;padding:0}@media(min-width:768px){#main-menu li{width:100%}}#main-menu li svg{stroke:currentColor;stroke-width:1.33;width:20px;height:20px}#main-menu li a{height:100%;display:inline-flex;align-items:center;color:var(--body-text-color);gap:var(--menu-icon-separation)}#main-menu li span{flex:1}#main-menu li.current a{color:var(--accent-color);font-weight:700}#main-menu li.menu-bottom-section{margin-top:auto}#main-menu li.menu-bottom-section ol{display:flex;padding-left:0}.menu-social{list-style:none;padding:0;margin:0;display:flex;flex-direction:row;gap:10px}.menu-social svg{width:24px;height:24px;stroke:var(--body-text-color);stroke-width:1.33}.article-list{display:flex;flex-direction:column;gap:var(--section-separation)}.article-list article{display:flex;flex-direction:column;background-color:var(--card-background);box-shadow:var(--shadow-l1);border-radius:var(--card-border-radius);overflow:hidden;transition:box-shadow .3s ease}.article-list article:hover{box-shadow:var(--shadow-l2)}.article-list article .article-image img{width:100%;height:150px;object-fit:cover}@media(min-width:768px){.article-list article .article-image img{height:200px}}@media(min-width:1280px){.article-list article .article-image img{height:250px}}.article-list article .article-list-preview{padding:0 var(--card-padding)var(--card-padding);color:var(--card-text-color-secondary)}.article-list article .article-list-preview p{margin:0;font-size:1.55rem;line-height:1.9}.article-list article .article-list-preview strong{color:var(--card-text-color-main)}.article-list article:nth-child(5n+1) .article-category a{background:#eee;color:#333}.article-list article:nth-child(5n+2) .article-category a{background:#e0e0e0;color:#333}.article-list article:nth-child(5n+3) .article-category a{background:#d6d6d6;color:#333}.article-list article:nth-child(5n+4) .article-category a{background:#ccc;color:#333}.article-list article:nth-child(5n+5) .article-category a{background:#c2c2c2;color:#333}.article-details{display:flex;flex-direction:column;justify-content:center;padding:var(--card-padding);gap:15px}.article-title{font-family:var(--article-font-family);font-weight:600;margin:0;color:var(--card-text-color-main);font-size:2.2rem}@media(min-width:1280px){.article-title{font-size:2.4rem}}.article-title a{color:var(--card-text-color-main)}.article-title a:hover{color:var(--card-text-color-main)}.article-subtitle{font-weight:400;color:var(--card-text-color-secondary);line-height:1.5;margin:0;font-size:1.75rem}@media(min-width:1280px){.article-subtitle{font-size:2rem}}.article-title-wrapper{display:flex;flex-direction:column;gap:8px}.article-time,.article-translations{display:flex;color:var(--card-text-color-tertiary);gap:15px}.article-time svg,.article-translations svg{vertical-align:middle;width:20px;height:20px;stroke-width:1.33;flex-shrink:0}.article-time time,.article-time a,.article-time .article-time--author,.article-translations time,.article-translations a,.article-translations .article-time--author{font-size:1.4rem;color:var(--card-text-color-tertiary)}.article-time>div,.article-translations>div{display:inline-flex;align-items:center;gap:15px}.article-time{flex-wrap:wrap}.article-translations>div{flex-wrap:wrap}.article-category,.article-tags{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-start}.article-category a,.article-tags a{color:var(--accent-color-text);background-color:var(--accent-color);padding:8px 16px;border-radius:var(--tag-border-radius);display:inline-flex;align-items:center;justify-content:center;font-size:1.4rem;line-height:1.4;min-width:0;max-width:100%;text-align:center;overflow-wrap:anywhere;word-break:break-word;transition:background-color .5s ease}.article-category a:hover,.article-tags a:hover{color:var(--accent-color-text);background-color:var(--accent-color-darker)}.article-footer .article-tags{gap:8px}.article-footer .article-tags a{color:var(--text-secondary);background-color:var(--tag-background);border:1px solid var(--card-separator-color);padding:6px 12px;font-size:1.3rem;font-weight:500}.article-footer .article-tags a:hover{color:var(--tag-hover-text);background-color:var(--tag-hover-background);border-color:var(--tag-hover-background)}.main-article{--article-body-max-width:860px}.main-article .article-header .article-details{max-width:calc(var(--article-body-max-width) + var(--card-padding) * 2);margin:0 auto;padding:26px var(--card-padding)0;gap:16px}.main-article .article-title-wrapper{gap:12px}.main-article .article-title{font-size:clamp(2.6rem,3.8vw,3.4rem);line-height:1.16;letter-spacing:-.02em}.main-article .article-subtitle{font-size:1.85rem;line-height:1.7}.main-article .article-meta{display:flex;flex-direction:column;gap:10px}.main-article .article-time,.main-article .article-translations{gap:10px 20px}.main-article .article-time>div,.main-article .article-translations>div{gap:8px}.main-article .article-time time,.main-article .article-time a,.main-article .article-time .article-time--author,.main-article .article-translations time,.main-article .article-translations a,.main-article .article-translations .article-time--author{font-size:1.45rem}.main-article .article-time svg,.main-article .article-translations svg{width:18px;height:18px}.main-article .article-lead{padding:0 0 10px;margin-bottom:6px;border-bottom:1px solid var(--card-separator-color);color:var(--text-secondary);font-family:var(--article-font-family);font-size:var(--article-font-size);line-height:var(--article-line-height)}.main-article .article-lead p{margin:0;color:inherit}.main-article .article-content{max-width:calc(var(--article-body-max-width) + var(--card-padding) * 2);margin:0 auto;padding:6px var(--card-padding)30px}.main-article .article-content>:first-child{margin-top:0 !important}.main-article .article-content>p,.main-article .article-content>ul,.main-article .article-content>ol,.main-article .article-content>blockquote,.main-article .article-content>.table-wrapper{padding-left:0}.main-article .article-footer{max-width:calc(var(--article-body-max-width) + var(--card-padding) * 2);margin:0 auto;padding:0 var(--card-padding)30px}.related-content--wrapper{max-width:calc(860px + var(--card-padding) * 2);margin:0 auto;padding:0 var(--card-padding)30px}.related-content--wrapper .section-title{margin:0 0 16px}.related-content__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.related-content__item{min-width:0}.related-content__link{display:flex;flex-direction:column;justify-content:space-between;gap:12px;min-height:124px;padding:18px 18px 16px;border-radius:var(--card-border-radius);background:var(--card-background);border:1px solid var(--card-separator-color);box-shadow:var(--shadow-l1);color:inherit;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.related-content__link:hover{transform:translateY(-2px);box-shadow:var(--shadow-l2);border-color:var(--accent-color-lighter)}.related-content__title{margin:0;color:var(--card-text-color-main);font-size:2rem;line-height:1.45;font-weight:600;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.related-content__date{color:var(--card-text-color-tertiary);font-size:1.3rem;line-height:1.4}@media(max-width:768px){.main-article .article-header .article-details{padding:22px var(--card-padding)0;gap:14px}.main-article .article-title{font-size:2.6rem}.main-article .article-subtitle{font-size:1.7rem}.main-article .article-time,.main-article .article-translations{gap:8px 16px}.main-article .article-lead{padding:0 0 8px;margin-bottom:4px}.main-article .article-content{padding:4px var(--card-padding)24px}.main-article .article-footer{padding:0 var(--card-padding)24px}.article-tags{gap:8px}.article-tags a{padding:6px 10px;font-size:1.3rem}.related-content--wrapper{padding:0 var(--card-padding)24px}.related-content--wrapper .section-title{margin-bottom:12px}.related-content__list{grid-template-columns:1fr;gap:12px}.related-content__link{min-height:auto;padding:14px 14px 12px;gap:10px}.related-content__title{font-size:1.75rem;line-height:1.5;-webkit-line-clamp:2}.related-content__date{font-size:1.2rem}}.article-list--compact{border-radius:var(--card-border-radius);box-shadow:var(--shadow-l1);background-color:var(--card-background);--image-size:50px}@media(min-width:768px){.article-list--compact{--image-size:60px}}.article-list--compact article>a{display:flex;align-items:center;padding:var(--small-card-padding);gap:15px}.article-list--compact article:not(:last-of-type){border-bottom:1.5px solid var(--card-separator-color)}.article-list--compact article .article-details{flex-grow:1;padding:0;min-height:var(--image-size);gap:10px}.article-list--compact article .article-title{margin:0;font-size:1.6rem}@media(min-width:768px){.article-list--compact article .article-title{font-size:1.8rem}}.article-list--compact article .article-image img{width:var(--image-size);height:var(--image-size);object-fit:cover}.article-list--compact article .article-time{font-size:1.4rem}.article-list--compact article .article-preview{font-size:1.4rem;color:var(--card-text-color-tertiary);margin-top:10px;line-height:1.5}.article-list--tile article{border-radius:var(--card-border-radius);overflow:hidden;position:relative;height:350px;width:100%;min-width:0;box-shadow:var(--shadow-l1);transition:box-shadow .3s ease;background-color:var(--card-background)}.article-list--tile article:hover{box-shadow:var(--shadow-l2)}.article-list--tile article.has-image .article-details{background-color:rgba(0,0,0,.25)}.article-list--tile article.has-image .article-title{color:#fff}.article-list--tile article .article-image{position:absolute;top:0;left:0;width:100%;height:100%}.article-list--tile article .article-image img{width:100%;height:100%;object-fit:cover}.article-list--tile article .article-details{border-radius:var(--card-border-radius);position:relative;height:100%;width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:2;padding:15px}@media(min-width:640px){.article-list--tile article .article-details{padding:20px}}.article-list--tile article .article-title{font-size:2.5rem;font-weight:600;color:var(--card-text-color-main);text-align:center;margin:10px 0;text-shadow:1px 1px 2px rgba(0,0,0,.1)}@media(min-width:640px){.article-list--tile article .article-title{font-size:2.8rem}}.widget{display:flex;flex-direction:column}.widget .widget-icon svg{width:32px;height:32px;stroke-width:1.6;color:var(--body-text-color)}.tagCloud .tagCloud-tags{display:flex;flex-wrap:wrap;gap:10px}.tagCloud .tagCloud-tags a{background:var(--card-background);box-shadow:var(--shadow-l1);border-radius:var(--tag-border-radius);padding:8px 20px;color:var(--card-text-color-main);font-size:1.4rem;transition:box-shadow .3s ease}.tagCloud .tagCloud-tags a:hover{box-shadow:var(--shadow-l2)}.widget.archives .widget-archive--list{border-radius:var(--card-border-radius);box-shadow:var(--shadow-l1);background-color:var(--card-background)}.widget.archives .archives-year:not(:last-of-type){border-bottom:1.5px solid var(--card-separator-color)}.widget.archives .archives-year a{font-size:1.4rem;padding:18px 25px;display:flex}.widget.archives .archives-year a span.year{flex:1;color:var(--card-text-color-main);font-weight:700}.widget.archives .archives-year a span.count{color:var(--card-text-color-tertiary)}footer.site-footer{padding:20px 0 var(--section-separation);font-size:1.4rem;line-height:1.75}footer.site-footer:before{content:"";display:block;height:3px;width:50px;background:var(--body-text-color);margin-bottom:20px}footer.site-footer .copyright{color:var(--accent-color);font-weight:700;margin-bottom:5px}footer.site-footer .powerby{color:var(--body-text-color);font-weight:400;font-size:1.2rem}footer.site-footer .powerby a{color:var(--body-text-color)}.pagination{display:flex;background-color:var(--card-background);box-shadow:var(--shadow-l1);border-radius:var(--card-border-radius);overflow:hidden;flex-wrap:wrap}.pagination .page-link{padding:16px 32px;display:inline-flex;color:var(--card-text-color-secondary)}.pagination .page-link.current{font-weight:700;background-color:var(--card-background-selected);color:var(--card-text-color-main)}@media(min-width:768px){.sidebar.sticky{position:sticky}}.left-sidebar{display:flex;flex-direction:column;flex-shrink:0;align-self:stretch;gap:var(--sidebar-element-separation);max-width:none;width:100%;position:relative;--sidebar-avatar-size:100px;--sidebar-element-separation:20px;--emoji-size:40px;--emoji-font-size:20px}@media(min-width:768px){.left-sidebar{width:auto;padding-top:var(--main-top-padding);padding-bottom:var(--main-top-padding);max-height:100vh}}@media(min-width:1536px){.left-sidebar{--sidebar-avatar-size:120px;--sidebar-element-separation:25px;--emoji-size:40px}}.left-sidebar.sticky{top:0}.left-sidebar.compact{--sidebar-avatar-size:80px;--emoji-size:30px;--emoji-font-size:15px}@media(min-width:1024px){.left-sidebar.compact header{flex-direction:row}}.left-sidebar.compact header .site-meta{gap:5px}.left-sidebar.compact header .site-name{font-size:1.4rem}@media(min-width:1536px){.left-sidebar.compact header .site-name{font-size:1.75rem}}.left-sidebar.compact header .site-description{font-size:1.4rem}.right-sidebar{width:100%;display:none;flex-direction:column;gap:var(--widget-separation)}.right-sidebar.sticky{top:0}@media(min-width:1024px){.right-sidebar{padding-top:var(--main-top-padding);padding-bottom:var(--main-top-padding)}}.sidebar header{z-index:1;transition:box-shadow .5s ease;display:flex;flex-direction:column;gap:var(--sidebar-element-separation)}@media(min-width:768px){.sidebar header{padding:0}}.sidebar header .site-avatar{position:relative;margin:0;width:var(--sidebar-avatar-size);height:var(--sidebar-avatar-size);flex-shrink:0}.sidebar header .site-avatar .site-logo{width:100%;height:100%;border-radius:100%;box-shadow:var(--shadow-l1)}.sidebar header .site-avatar .emoji{position:absolute;width:var(--emoji-size);height:var(--emoji-size);line-height:var(--emoji-size);border-radius:100%;bottom:0;right:0;text-align:center;font-size:var(--emoji-font-size);background-color:var(--card-background);box-shadow:var(--shadow-l2)}.sidebar header .site-meta{display:flex;flex-direction:column;gap:10px;justify-content:center}.sidebar header .site-name{color:var(--accent-color);margin:0;font-size:1.6rem}@media(min-width:1536px){.sidebar header .site-name{font-size:1.8rem}}.sidebar header .site-description{color:var(--body-text-color);font-weight:400;margin:0;font-size:1.4rem}@media(min-width:1536px){.sidebar header .site-description{font-size:1.6rem}}[data-scheme=dark] #dark-mode-toggle{color:var(--accent-color);font-weight:700}[data-scheme=dark] #dark-mode-toggle .icon-tabler-toggle-left{display:none}[data-scheme=dark] #dark-mode-toggle .icon-tabler-toggle-right{display:unset}#dark-mode-toggle{margin-top:auto;color:var(--body-text-color);display:flex;align-items:center;cursor:pointer;gap:var(--menu-icon-separation)}#dark-mode-toggle .icon-tabler-toggle-right{display:none}#i18n-switch{color:var(--body-text-color);display:inline-flex;align-content:center;gap:var(--menu-icon-separation)}#i18n-switch select{border:0;background-color:transparent;color:var(--body-text-color)}#i18n-switch select option{color:var(--card-text-color-main);background-color:var(--card-background)}html{font-size:62.5%;overflow-y:scroll}*{box-sizing:border-box}body{background:var(--body-background);margin:0;font-family:var(--base-font-family);font-size:1.6rem;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{height:auto}::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb)}::-webkit-scrollbar-track{background-color:transparent}.article-page.hide-sidebar-sm .left-sidebar{display:none}@media(min-width:768px){.article-page.hide-sidebar-sm .left-sidebar{display:inherit}}.article-page .main-article{background:var(--card-background);border-radius:var(--card-border-radius);box-shadow:var(--shadow-l1);overflow:hidden}.article-page .main-article .article-header .article-image img{height:auto;width:100%;max-height:50vh;object-fit:cover}.article-page .main-article .article-header .article-details{padding:var(--card-padding);padding-bottom:0}.article-page .main-article .article-content{margin:var(--card-padding)0;color:var(--card-text-color-main)}.article-page .main-article .article-content .footnotes{font-family:var(--base-font-family)}.article-page .main-article .article-content img{max-width:100%;height:auto}.article-page .main-article .article-footer{margin:var(--card-padding);margin-top:0}.article-page .main-article .article-footer section:not(:first-child){margin-top:var(--card-padding)}.article-page .main-article .article-footer section{color:var(--card-text-color-tertiary);text-transform:uppercase;display:flex;align-items:center;font-size:1.4rem;gap:15px}.article-page .main-article .article-footer section svg{width:20px;height:20px;stroke-width:1.33}.article-page .main-article .article-footer .article-tags{text-transform:unset}.article-page .main-article .article-footer .article-copyright a,.article-page .main-article .article-footer .article-lastmod a{color:var(--body-text-color)}.article-page .main-article .article-footer .article-copyright a.link,.article-page .main-article .article-footer .article-lastmod a.link{box-shadow:unset}.widget--toc{background-color:var(--card-background);border-radius:var(--card-border-radius);box-shadow:var(--shadow-l1);display:flex;flex-direction:column;color:var(--card-text-color-main);overflow:hidden}.widget--toc ::-webkit-scrollbar-thumb{background-color:var(--card-separator-color)}.widget--toc #TableOfContents{overflow-x:auto;max-height:75vh}.widget--toc #TableOfContents ol,.widget--toc #TableOfContents ul{margin:0;padding:0}.widget--toc #TableOfContents ol{list-style-type:none;counter-reset:item}.widget--toc #TableOfContents ol li a:first-of-type::before{counter-increment:item;content:counters(item,".")". ";font-weight:700;margin-right:5px}.widget--toc #TableOfContents>ul{padding:0 1em}.widget--toc #TableOfContents li{margin:15px 0 15px 20px;padding:5px}.widget--toc #TableOfContents li>ol,.widget--toc #TableOfContents li>ul{margin-top:10px;padding-left:10px;margin-bottom:-5px}.widget--toc #TableOfContents li>ol>li:last-child,.widget--toc #TableOfContents li>ul>li:last-child{margin-bottom:0}.widget--toc #TableOfContents li.active-class>a{border-left:var(--heading-border-size)solid var(--accent-color);font-weight:700}.widget--toc #TableOfContents ul li.active-class>a{display:block}.widget--toc #TableOfContents>ul>li.active-class>a{margin-left:calc(-25px - 1em);padding-left:calc(25px + 1em - var(--heading-border-size))}.widget--toc #TableOfContents>ol>li.active-class>a{margin-left:calc(-9px - 1em);padding-left:calc(9px + 1em - var(--heading-border-size));display:block}.widget--toc #TableOfContents>ul>li>ul>li.active-class>a{margin-left:calc(-60px - 1em);padding-left:calc(60px + 1em - var(--heading-border-size))}.widget--toc #TableOfContents>ol>li>ol>li.active-class>a{margin-left:calc(-44px - 1em);padding-left:calc(44px + 1em - var(--heading-border-size));display:block}.widget--toc #TableOfContents>ul>li>ul>li>ul>li.active-class>a{margin-left:calc(-95px - 1em);padding-left:calc(95px + 1em - var(--heading-border-size))}.widget--toc #TableOfContents>ol>li>ol>li>ol>li.active-class>a{margin-left:calc(-79px - 1em);padding-left:calc(79px + 1em - var(--heading-border-size));display:block}.widget--toc #TableOfContents>ul>li>ul>li>ul>li>ul>li.active-class>a{margin-left:calc(-130px - 1em);padding-left:calc(130px + 1em - var(--heading-border-size))}.widget--toc #TableOfContents>ol>li>ol>li>ol>li>ol>li.active-class>a{margin-left:calc(-114px - 1em);padding-left:calc(114px + 1em - var(--heading-border-size));display:block}.widget--toc #TableOfContents>ul>li>ul>li>ul>li>ul>li>ul>li.active-class>a{margin-left:calc(-165px - 1em);padding-left:calc(165px + 1em - var(--heading-border-size))}.widget--toc #TableOfContents>ol>li>ol>li>ol>li>ol>li>ol>li.active-class>a{margin-left:calc(-149px - 1em);padding-left:calc(149px + 1em - var(--heading-border-size));display:block}.related-content{overflow-x:auto;padding-bottom:15px}.related-content>.flex{float:left}.related-content article{margin-right:15px;flex-shrink:0;overflow:hidden;width:250px;height:150px}.related-content article .article-title{font-size:1.8rem;margin:0}.related-content article.has-image .article-details{padding:20px;background:linear-gradient(0deg,rgba(0,0,0,.25) 0%,rgba(0,0,0,.75) 100%)}.article-content{font-family:var(--article-font-family);font-size:var(--article-font-size);padding:0 var(--card-padding);line-height:var(--article-line-height)}.article-content>p{margin:1.5em 0}.article-content h1,.article-content h2,.article-content h3,.article-content h4,.article-content h5,.article-content h6{margin-inline-start:calc((var(--card-padding)) * -1);padding-inline-start:calc(var(--card-padding) - var(--heading-border-size));border-inline-start:var(--heading-border-size)solid var(--accent-color);position:relative}.article-content h1 a.header-anchor,.article-content h2 a.header-anchor,.article-content h3 a.header-anchor,.article-content h4 a.header-anchor,.article-content h5 a.header-anchor,.article-content h6 a.header-anchor{transition:opacity .3s ease;opacity:0;position:absolute;left:0;width:var(--card-padding);text-align:center;color:var(--accent-color)}.article-content h1 a.header-anchor:before,.article-content h2 a.header-anchor:before,.article-content h3 a.header-anchor:before,.article-content h4 a.header-anchor:before,.article-content h5 a.header-anchor:before,.article-content h6 a.header-anchor:before{content:"#"}.article-content h1:hover a.header-anchor,.article-content h1:focus a.header-anchor,.article-content h2:hover a.header-anchor,.article-content h2:focus a.header-anchor,.article-content h3:hover a.header-anchor,.article-content h3:focus a.header-anchor,.article-content h4:hover a.header-anchor,.article-content h4:focus a.header-anchor,.article-content h5:hover a.header-anchor,.article-content h5:focus a.header-anchor,.article-content h6:hover a.header-anchor,.article-content h6:focus a.header-anchor{opacity:1}.article-content figure{text-align:center}.article-content figure figcaption{font-size:1.4rem;color:var(--card-text-color-secondary)}.article-content blockquote{position:relative;margin:1.5em 0;border-inline-start:var(--blockquote-border-size)solid var(--card-separator-color);padding:15px calc(var(--card-padding) - var(--blockquote-border-size));background-color:var(--blockquote-background-color)}.article-content blockquote .cite{display:block;text-align:right;font-size:.75em}.article-content blockquote .cite a{text-decoration:underline}.article-content hr{width:100px;margin:40px auto;background:var(--card-text-color-tertiary);height:2px;border:0;opacity:.55}.article-content code{color:var(--code-text-color);background-color:var(--code-background-color);padding:2px 4px;border-radius:var(--tag-border-radius);font-family:var(--code-font-family)}.article-content a,.article-content code{word-break:break-word}.article-content .gallery{position:relative;display:flex;flex-direction:row;justify-content:center;margin:1.5em 0;gap:10px}.article-content .gallery figure{margin:0}.article-content pre{overflow-x:auto;display:block;background-color:var(--pre-background-color);color:var(--pre-text-color);font-family:var(--code-font-family);line-height:1.428571429;word-break:break-all;padding:var(--card-padding)}[dir=rtl] .article-content pre{direction:ltr}.article-content pre code{color:unset;border:none;background:0 0;padding:0}.article-content .highlight{background-color:var(--pre-background-color);padding:var(--card-padding);position:relative}.article-content .highlight:hover .copyCodeButton{opacity:1}[dir=rtl] .article-content .highlight{direction:ltr}.article-content .highlight pre{margin:initial;padding:0;margin:0;width:auto}.article-content .copyCodeButton{position:absolute;top:calc(var(--card-padding));right:calc(var(--card-padding));background:var(--card-background);border:none;box-shadow:var(--shadow-l2);border-radius:var(--tag-border-radius);padding:8px 16px;color:var(--card-text-color-main);cursor:pointer;font-size:14px;opacity:0;transition:opacity .3s ease}.article-content .table-wrapper{padding:0 var(--card-padding);overflow-x:auto;display:block}.article-content table{width:100%;border-collapse:collapse;border-spacing:0;margin-bottom:1.5em;font-size:.96em}.article-content th,.article-content td{text-align:left;padding:4px 8px 4px 10px;border:1px solid var(--table-border-color)}.article-content td{vertical-align:top}.article-content tr:nth-child(even){background-color:var(--tr-even-background-color)}.article-content .twitter-tweet{color:var(--card-text-color-main)}.article-content .video-wrapper{position:relative;width:100%;height:0;padding-bottom:56.25%;overflow:hidden}.article-content .video-wrapper>iframe,.article-content .video-wrapper>video{position:absolute;width:100%;height:100%;left:0;top:0;border:0}.article-content .gitlab-embed-snippets{margin:0 !important}.article-content .gitlab-embed-snippets .file-holder.snippet-file-content{margin-block-end:0 !important;margin-block-start:0 !important;margin-left:calc((var(--card-padding)) * -1) !important;margin-right:calc((var(--card-padding)) * -1) !important;padding:0 var(--card-padding) !important}.article-content blockquote,.article-content figure,.article-content .highlight,.article-content pre,.article-content .gallery,.article-content .video-wrapper,.article-content .table-wrapper,.article-content .s_video_simple{margin-left:calc((var(--card-padding)) * -1);margin-right:calc((var(--card-padding)) * -1);width:calc(100% + var(--card-padding) * 2)}.article-content .katex-display>.katex{overflow-x:auto;overflow-y:hidden}.article-content kbd{border:1px solid var(--kbd-border-color);font-weight:700;font-size:.9em;line-height:1;padding:2px 4px;border-radius:4px;display:inline-block}.section-card{border-radius:var(--card-border-radius);background-color:var(--card-background);padding:var(--small-card-padding);box-shadow:var(--shadow-l1);display:flex;align-items:center;gap:20px;--separation:15px}.section-card .section-term{font-size:2.2rem;margin:0;color:var(--card-text-color-main)}.section-card .section-description{font-weight:400;color:var(--card-text-color-secondary);font-size:1.6rem;margin:0}.section-card .section-details{flex-grow:1;display:flex;flex-direction:column;gap:8px}.section-card .section-image img{width:60px;height:60px}.section-card .section-count{color:var(--card-text-color-tertiary);font-size:1.4rem;margin:0;font-weight:700;text-transform:uppercase}.subsection-list{overflow-x:auto}.subsection-list .article-list--tile{display:flex;padding-bottom:15px}.subsection-list .article-list--tile article{width:250px;height:150px;margin-right:20px;flex-shrink:0}.subsection-list .article-list--tile article .article-title{margin:0;font-size:1.8rem}.subsection-list .article-list--tile article .article-details{padding:20px}.not-found-card{background-color:var(--card-background);box-shadow:var(--shadow-l1);border-radius:var(--card-border-radius);padding:var(--card-padding)}.search-form{position:relative;--button-size:80px}.search-form.widget{--button-size:60px}.search-form.widget label{font-size:1.3rem;top:10px}.search-form.widget input{font-size:1.5rem;padding:30px 20px 15px}.search-form p{position:relative;margin:0}.search-form label{position:absolute;top:15px;inset-inline-start:20px;font-size:1.4rem;color:var(--card-text-color-tertiary)}.search-form input{padding:40px 20px 20px;border-radius:var(--card-border-radius);background-color:var(--card-background);box-shadow:var(--shadow-l1);color:var(--card-text-color-main);width:100%;border:0;-webkit-appearance:none;transition:box-shadow .3s ease;font-size:1.8rem}.search-form input:focus{outline:0;box-shadow:var(--shadow-l2)}.search-form button{position:absolute;inset-inline-end:0;top:0;height:100%;width:var(--button-size);cursor:pointer;background-color:transparent;border:0;padding:0 10px}.search-form button:focus{outline:0}.search-form button:focus svg{stroke-width:2;color:var(--accent-color)}.search-form button svg{color:var(--card-text-color-secondary);stroke-width:1.33;transition:all .3s ease;width:20px;height:20px}a{text-decoration:none;color:var(--accent-color)}a:hover{color:var(--accent-color-darker)}a.link{box-shadow:0 -2px rgba(var(--link-background-color),var(--link-background-opacity))inset;transition:all .3s ease}a.link:hover{box-shadow:0 calc(-1rem * var(--article-line-height))rgba(var(--link-background-color),var(--link-background-opacity-hover))inset}.section-title{text-transform:uppercase;margin-top:0;margin-bottom:10px;display:block;font-size:1.6rem;font-weight:700;color:var(--body-text-color)}.section-title a{color:var(--body-text-color)}.common-padding,body>div>main>article>section>p{padding-left:24px;padding-bottom:1px;position:relative}.common-text,body>div>main>section>article>header>div>div>h5>p>code,body>div>main>article>header>div>div.article-lead>p,body>div>main>article>section>p,body>div>main>section>article>header>div>div>h5>p{text-rendering:optimizelegibility;text-size-adjust:100%;font-family:-apple-system,BlinkMacSystemFont,pingfang sc,hiragino sans gb,microsoft yahei,segoe ui,helvetica neue,Arial,sans-serif;font-size:1.6rem;line-height:1.8;letter-spacing:.02em;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:rgba(255,255,255,0);color:var(--text-secondary);font-weight:400;margin:10px 0;padding:0;white-space:pre-wrap;word-break:break-word;min-height:30px;text-align:justify}.common-list-style,body>div>main>article>section>ol>li>p,body>div>main>article>section>ol>li>ul>li,body>div>main>section>article>header>div>div>h5>ul>li,body>div>main>article>section>ul>li,body>div>main>article>section>ol>li{text-rendering:optimizelegibility;text-size-adjust:100%;font-family:-apple-system,BlinkMacSystemFont,pingfang sc,hiragino sans gb,microsoft yahei,segoe ui,helvetica neue,Arial,sans-serif;font-size:1.6rem;line-height:1.8;letter-spacing:.02em;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:rgba(255,255,255,0);color:var(--text-secondary);line-height:30px;margin:0;padding:0}::selection{color:var(--selection-text);background:var(--selection-background)}a{text-decoration:none;color:var(--link-color);transition:color .3s ease}a:hover{color:var(--link-hover)}a.link{color:var(--accent-color);font-weight:600;padding:0 2px;text-decoration:none;cursor:pointer}a.link:hover{text-decoration:underline;color:var(--accent-color-darker)}.common-padding,body>div>main>article>section>p{padding-left:24px;padding-bottom:1px;position:relative}.common-text,body>div>main>section>article>header>div>div>h5>p>code,body>div>main>article>header>div>div.article-lead>p,body>div>main>article>section>p,body>div>main>section>article>header>div>div>h5>p{text-rendering:optimizelegibility;text-size-adjust:100%;font-family:-apple-system,BlinkMacSystemFont,pingfang sc,hiragino sans gb,microsoft yahei,segoe ui,helvetica neue,Arial,sans-serif;font-size:1.6rem;line-height:1.8;letter-spacing:.02em;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:rgba(255,255,255,0);color:var(--text-secondary);font-weight:400;margin:10px 0;padding:0;white-space:pre-wrap;word-break:break-word;min-height:30px;text-align:justify}.common-list-style,body>div>main>article>section>ol>li>p,body>div>main>article>section>ol>li>ul>li,body>div>main>section>article>header>div>div>h5>ul>li,body>div>main>article>section>ul>li,body>div>main>article>section>ol>li{text-rendering:optimizelegibility;text-size-adjust:100%;font-family:-apple-system,BlinkMacSystemFont,pingfang sc,hiragino sans gb,microsoft yahei,segoe ui,helvetica neue,Arial,sans-serif;font-size:1.6rem;line-height:1.8;letter-spacing:.02em;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:rgba(255,255,255,0);color:var(--text-secondary);line-height:30px;margin:0;padding:0}body>div>main>article>section>blockquote{text-rendering:optimizelegibility;text-size-adjust:100%;font-family:-apple-system,BlinkMacSystemFont,pingfang sc,hiragino sans gb,microsoft yahei,segoe ui,helvetica neue,Arial,sans-serif;font-size:1.6rem;line-height:1.8;letter-spacing:.02em;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:rgba(255,255,255,0);padding:5px !important;max-width:100%;background-color:var(--blockquote-background);border-left:4px solid var(--blockquote-border);border-radius:8px;box-shadow:var(--shadow-l1);margin:1.5em 0 !important;display:block}body>div>main>article>section>blockquote p{margin:0;color:var(--blockquote-text)}body>div>main>article>section>blockquote cite{display:block;margin-top:10px;font-size:1.4rem;color:var(--blockquote-text);text-align:right;font-style:normal}body>div>main>section>article>header>div>div>h5>blockquote{text-rendering:optimizelegibility;text-size-adjust:100%;font-family:-apple-system,BlinkMacSystemFont,pingfang sc,hiragino sans gb,microsoft yahei,segoe ui,helvetica neue,Arial,sans-serif;font-size:1.6rem;line-height:1.8;letter-spacing:.02em;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:rgba(255,255,255,0);padding:5px !important;max-width:100%;background-color:var(--blockquote-background);border-left:4px solid var(--blockquote-border);border-radius:8px;box-shadow:var(--shadow-l1);margin:1.5em 0 !important;display:block}body>div>main>section>article>header>div>div>h5>blockquote p{margin:0;color:var(--blockquote-text)}body>div>main>section>article>header>div>div>h5>blockquote cite{display:block;margin-top:10px;font-size:1.4rem;color:var(--blockquote-text);text-align:right;font-style:normal}.common-padding,body>div>main>article>section>p{padding-left:24px;padding-bottom:1px;position:relative}.common-text,body>div>main>section>article>header>div>div>h5>p>code,body>div>main>article>header>div>div.article-lead>p,body>div>main>article>section>p,body>div>main>section>article>header>div>div>h5>p{text-rendering:optimizelegibility;text-size-adjust:100%;font-family:-apple-system,BlinkMacSystemFont,pingfang sc,hiragino sans gb,microsoft yahei,segoe ui,helvetica neue,Arial,sans-serif;font-size:1.6rem;line-height:1.8;letter-spacing:.02em;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:rgba(255,255,255,0);color:var(--text-secondary);font-weight:400;margin:10px 0;padding:0;white-space:pre-wrap;word-break:break-word;min-height:30px;text-align:justify}.common-list-style,body>div>main>article>section>ol>li>p,body>div>main>article>section>ol>li>ul>li,body>div>main>section>article>header>div>div>h5>ul>li,body>div>main>article>section>ul>li,body>div>main>article>section>ol>li{text-rendering:optimizelegibility;text-size-adjust:100%;font-family:-apple-system,BlinkMacSystemFont,pingfang sc,hiragino sans gb,microsoft yahei,segoe ui,helvetica neue,Arial,sans-serif;font-size:1.6rem;line-height:1.8;letter-spacing:.02em;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:rgba(255,255,255,0);color:var(--text-secondary);line-height:30px;margin:0;padding:0}.common-padding,body>div>main>article>section>p{padding-left:24px;padding-bottom:1px;position:relative}.common-text,body>div>main>section>article>header>div>div>h5>p>code,body>div>main>article>header>div>div.article-lead>p,body>div>main>article>section>p,body>div>main>section>article>header>div>div>h5>p{text-rendering:optimizelegibility;text-size-adjust:100%;font-family:-apple-system,BlinkMacSystemFont,pingfang sc,hiragino sans gb,microsoft yahei,segoe ui,helvetica neue,Arial,sans-serif;font-size:1.6rem;line-height:1.8;letter-spacing:.02em;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:rgba(255,255,255,0);color:var(--text-secondary);font-weight:400;margin:10px 0;padding:0;white-space:pre-wrap;word-break:break-word;min-height:30px;text-align:justify}.common-list-style,body>div>main>article>section>ol>li,body>div>main>article>section>ul>li,body>div>main>section>article>header>div>div>h5>ul>li,body>div>main>article>section>ol>li>ul>li,body>div>main>article>section>ol>li>p{text-rendering:optimizelegibility;text-size-adjust:100%;font-family:-apple-system,BlinkMacSystemFont,pingfang sc,hiragino sans gb,microsoft yahei,segoe ui,helvetica neue,Arial,sans-serif;font-size:1.6rem;line-height:1.8;letter-spacing:.02em;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:rgba(255,255,255,0);color:var(--text-secondary);line-height:30px;margin:0;padding:0}body>div>main>section>article>header>div>div>h5>p{color:var(--text-tertiary);font-size:1.5rem}body>div>main>article>section>p{color:var(--text-secondary);margin-bottom:1.5em}body>div>main>article>header>div>div.article-lead>p{color:var(--text-secondary);margin:0;min-height:auto}body>div>main>article>footer>section.article-copyright{margin-top:10px !important;color:var(--text-quaternary)}body>div>main>article>footer>section.article-lastmod{margin-top:10px !important;color:var(--text-quaternary)}body>div>main>article>footer>section.article-author>span{text-transform:lowercase;color:var(--text-quaternary)}body>div>main>article>footer>section.article-copyright>span{text-transform:lowercase;color:var(--text-quaternary)}body>div>main>article>section>h2{font-size:2.2rem !important;margin-top:2em;margin-bottom:.8em}body>div>main>article>section>h3{font-size:1.8rem !important;margin-top:1.8em;margin-bottom:.7em}body>div>main>article>section>h4{font-size:1.5rem !important;margin-top:1.5em;margin-bottom:.6em}body>div>main>article>section>h5{font-size:1.3rem !important;margin-top:1.3em;margin-bottom:.5em}@media(max-width:768px){body>div>main>article>section>h2{font-size:1.8rem !important}body>div>main>article>section>h3{font-size:1.5rem !important}body>div>main>article>section>h4{font-size:1.3rem !important}body>div>main>article>section>h5{font-size:1.2rem !important}}.article-content code{color:var(--code-inline-text);background-color:var(--code-inline-background);padding:2px 4px;border-radius:var(--tag-border-radius);font-family:var(--code-font-family)}.article-content pre{padding:10px;margin:0 -25px;border-radius:5px;background-color:var(--pre-background);overflow-x:auto}@media(max-width:768px){.article-content pre{margin:0 -15px;font-size:13px}.code-container{font-size:13px}}.code-container{font-family:courier new,Courier,monospace;font-size:14px;line-height:1.5;background-color:var(--code-background);color:var(--code-text);padding:10px;border-radius:5px;overflow-x:auto}.code-container code{background-color:var(--code-background) !important;color:var(--code-text) !important;padding:2px 4px;border-radius:3px}.code-container pre{margin:0;padding:0;background:0 0;border:none}body>div>main>section>article>header>div>div>h5>p>code{color:var(--code-inline-text);background-color:var(--code-inline-background)}.template-archives .archive-page{display:flex;flex-direction:column;gap:clamp(24px,3vw,32px)}.template-archives .archive-hero,.template-archives .archive-section{background:var(--card-background);border:1px solid var(--border-color);border-radius:var(--radius-lg,var(--card-border-radius));box-shadow:var(--shadow-l1)}.template-archives .archive-hero{position:relative;overflow:hidden;padding:clamp(22px,3vw,32px);background:linear-gradient(180deg,var(--surface-elevated) 0%,var(--card-background) 100%)}.template-archives .archive-hero::after{content:'';position:absolute;top:-72px;right:-36px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(91,140,90,.14) 0%,rgba(91,140,90,0) 72%);pointer-events:none}.template-archives .archive-hero__header{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:22px}.template-archives .archive-hero__copy{max-width:58rem}.template-archives .archive-hero__eyebrow{margin:0 0 10px;font-size:1.2rem;letter-spacing:.2em;text-transform:uppercase;color:var(--text-tertiary)}.template-archives .archive-hero__title{margin:0;color:var(--text-primary);font-size:clamp(3rem,4vw,4rem);line-height:1.1}.template-archives .archive-hero__lead{margin:12px 0 0;color:var(--text-secondary);font-size:1.55rem;line-height:1.8}.template-archives .archive-hero__stats{position:relative;z-index:1;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;max-width:36rem}.template-archives .archive-stat{display:inline-flex;align-items:baseline;gap:8px;padding:10px 14px;border-radius:999px;border:1px solid var(--border-color);background:rgba(255,255,255,.66);color:var(--text-secondary);font-size:1.3rem;white-space:nowrap;backdrop-filter:blur(10px)}.template-archives .archive-stat strong{color:var(--text-primary);font-size:1.5rem;font-weight:700;font-variant-numeric:tabular-nums}.template-archives .archive-stat--muted{color:var(--text-tertiary)}.template-archives .archive-year-rail{position:relative;z-index:1;display:flex;gap:12px;overflow-x:auto;padding:4px 2px 6px;scroll-snap-type:x proximity}.template-archives .archive-year-rail::-webkit-scrollbar{height:6px}.template-archives .archive-year-rail::-webkit-scrollbar-track{background:0 0}.template-archives .archive-year-rail::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:999px}.template-archives .archive-year-chip{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:18px;min-width:92px;min-height:124px;padding:18px 16px 16px 20px;flex-shrink:0;color:var(--text-primary);text-decoration:none;border-radius:18px 18px 12px 12px;border:1px solid var(--border-color);background:linear-gradient(180deg,var(--surface-elevated) 0%,var(--card-background) 100%);box-shadow:var(--shadow-l1);scroll-snap-align:start;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.template-archives .archive-year-chip::before{content:'';position:absolute;top:12px;bottom:12px;left:10px;width:4px;border-radius:999px;background:var(--divider-color);transition:background-color .2s ease}.template-archives .archive-year-chip:hover,.template-archives .archive-year-chip.is-active{transform:translateY(-2px);border-color:var(--accent-color);box-shadow:var(--shadow-l2)}.template-archives .archive-year-chip:hover::before,.template-archives .archive-year-chip.is-active::before{background:linear-gradient(180deg,var(--accent-color) 0%,var(--accent-color-darker) 100%)}.template-archives .archive-year-chip.is-latest{background:linear-gradient(180deg,var(--surface-elevated) 0%,rgba(255,255,255,.96) 100%)}.template-archives .archive-year-chip__year{display:block;font-size:2.2rem;font-weight:700;line-height:1;letter-spacing:.06em;font-variant-numeric:tabular-nums}.template-archives .archive-year-chip__count{display:block;color:var(--text-tertiary);font-size:1.3rem;line-height:1.5;font-variant-numeric:tabular-nums}.template-archives .archive-sections{display:flex;flex-direction:column;gap:clamp(22px,3vw,28px)}.template-archives .archive-section{padding:clamp(22px,3vw,30px);scroll-margin-top:32px}.template-archives .archive-section__header{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:10px;padding-bottom:16px;border-bottom:1px solid var(--card-separator-color)}.template-archives .archives-date{margin:0;color:var(--text-primary);font-size:clamp(2.4rem,3vw,3rem);line-height:1.1}.template-archives .archives-date a{color:inherit;text-decoration:none}.template-archives .archive-section__count{color:var(--text-tertiary);font-size:1.3rem;white-space:nowrap;font-variant-numeric:tabular-nums}.template-archives .archive-entries{display:flex;flex-direction:column}.template-archives .archive-entry{display:grid;grid-template-columns:76px minmax(0,1fr);gap:18px;align-items:start;margin:0 -12px;padding:14px 12px;border-radius:14px;transition:background-color .2s ease,transform .2s ease}.template-archives .archive-entry:not(:last-child){border-bottom:1px solid var(--card-separator-color)}.template-archives .archive-entry:hover{background:var(--surface-elevated);transform:translateX(2px)}.template-archives .archive-entry__date{display:inline-block;padding-top:4px;color:var(--text-tertiary);font-size:1.25rem;line-height:1.4;letter-spacing:.08em;font-variant-numeric:tabular-nums;white-space:nowrap}.template-archives .archive-entry__link{color:var(--text-primary);font-size:1.85rem;line-height:1.6;text-decoration:none;word-break:break-word;transition:color .2s ease}.template-archives .archive-entry__link:hover{color:var(--accent-color)}.template-archives .archive-section--empty{text-align:center}.template-archives .archive-empty-copy{margin:10px 0 0;color:var(--text-secondary);font-size:1.5rem;line-height:1.8}[data-scheme=dark] .template-archives .archive-hero::after{background:radial-gradient(circle,rgba(123,168,121,.2) 0%,rgba(123,168,121,0) 72%)}[data-scheme=dark] .template-archives .archive-stat{background:rgba(37,37,37,.72)}[data-scheme=dark] .template-archives .archive-year-chip.is-latest{background:linear-gradient(180deg,var(--surface-elevated) 0%,rgba(37,37,37,.92) 100%)}@media(prefers-color-scheme:dark){:root:not([data-scheme=light]) .template-archives .archive-hero::after{background:radial-gradient(circle,rgba(123,168,121,.2) 0%,rgba(123,168,121,0) 72%)}:root:not([data-scheme=light]) .template-archives .archive-stat{background:rgba(37,37,37,.72)}:root:not([data-scheme=light]) .template-archives .archive-year-chip.is-latest{background:linear-gradient(180deg,var(--surface-elevated) 0%,rgba(37,37,37,.92) 100%)}}@media(max-width:768px){.template-archives .archive-hero{padding:20px 18px}.template-archives .archive-hero__header{flex-direction:column;align-items:flex-start;margin-bottom:18px}.template-archives .archive-hero__stats{justify-content:flex-start;max-width:none}.template-archives .archive-year-chip{min-width:82px;min-height:112px;padding:16px 14px 14px 18px}.template-archives .archive-year-chip__year{font-size:2rem}.template-archives .archive-section{padding:20px 18px;scroll-margin-top:20px}.template-archives .archive-section__header{align-items:center;padding-bottom:14px}.template-archives .archive-entry{grid-template-columns:58px minmax(0,1fr);gap:12px;margin:0 -10px;padding:12px 10px}.template-archives .archive-entry__link{font-size:1.65rem;line-height:1.55}}.widget.archives .widget-archive--list .archives-year a{transition:background-color .3s ease;color:var(--text-tertiary)}.widget.archives .widget-archive--list .archives-year a:hover{background-color:var(--hover-accent);color:var(--tag-hover-text)}.sidebar header .site-avatar .site-logo{transition:transform 1.65s ease-in-out}.sidebar header .site-avatar .site-logo:hover{transform:rotate(360deg)}@media(max-width:768px){.widget.archives .widget-archive--list{padding:10px}.sidebar header .site-avatar .site-logo{width:80px;height:80px}}.menu::-webkit-scrollbar{display:none}html ::-webkit-scrollbar{width:20px}html ::-webkit-scrollbar-track{background-color:transparent}html ::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);border-radius:20px;border:6px solid transparent;background-clip:content-box;transition:background-color .3s ease}html ::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover)}.tagCloud .tagCloud-tags a{border-radius:10px;font-size:1.4rem;transition:background-color .3s ease;background-color:var(--tag-background);color:var(--tag-text)}.tagCloud .tagCloud-tags a:hover{background-color:var(--hover-accent);color:var(--tag-hover-text)}.tag-count,.tag-count-2,.tag-count-1{color:#fff;padding:2px 8px;border-radius:12px;text-align:center;white-space:nowrap;display:inline-block;font-weight:700;vertical-align:middle;transform:translateY(-1px)}.tag-count-1{background-color:var(--tag-count-1-bg);font-size:1.1rem}.tag-count-2{background-color:var(--tag-count-2-bg);font-size:1.2rem}.article-tags-preview{margin-top:-20px;padding-left:22px;border-radius:8px}.tag-list{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-start;padding:8px}.tag-item{padding:6px 16px;background-color:var(--tag-background);color:var(--tag-text);text-decoration:none;font-size:1rem;border-radius:4px;transition:background-color .3s ease,transform .2s ease;display:inline-block;margin-bottom:6px}.tag-item:hover{background-color:var(--tag-hover-background);color:var(--tag-hover-text);transform:scale(1.05)}@media(max-width:768px){.tag-item{font-size:.9rem}}.projects-widget .projects-container{display:flex;flex-direction:column;gap:10px}.projects-widget .project-link{display:block;padding:20px 24px;background-color:var(--tag-background);border:1px solid var(--border-color);border-radius:10px;text-decoration:none;transition:all .3s ease;box-shadow:var(--shadow-l1);width:100%;min-height:90px;position:relative;overflow:hidden}.projects-widget .project-link::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:2px;background:linear-gradient(90deg,transparent,var(--accent-color),transparent);transition:left .6s ease}.projects-widget .project-link::after{content:'';position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:linear-gradient(45deg,var(--accent-color),transparent,var(--accent-color),transparent);border-radius:12px;opacity:0;z-index:-1;transition:opacity .3s ease}.projects-widget .project-link:hover{background-color:var(--tag-hover-background);border-color:var(--accent-color);transform:translateY(-3px);box-shadow:var(--shadow-l2);box-shadow:var(--shadow-l2),0 0 20px rgba(var(--accent-color-rgb,59,130,246),.3)}.projects-widget .project-link:hover::before{left:100%}.projects-widget .project-link:hover::after{opacity:.3;animation:border-pulse 2s infinite}.projects-widget .project-link:hover .project-name{color:var(--tag-hover-text);text-shadow:0 0 8px var(--accent-color)}.projects-widget .project-link:hover .project-desc{color:var(--tag-hover-text);opacity:.9}.projects-widget .project-name{display:block;font-size:1.7rem;color:var(--text-primary);margin-bottom:10px;transition:all .3s ease;line-height:1.3;font-family:courier new,monospace;letter-spacing:1px}.projects-widget .project-name[data-encrypted=true]{color:var(--accent-color);opacity:.8;text-shadow:0 0 6px var(--accent-color);animation:text-flicker 2s infinite alternate}.projects-widget .project-desc{display:block;font-size:1.4rem;color:var(--text-secondary);line-height:1.5;margin-bottom:0;transition:all .3s ease;font-family:courier new,monospace;letter-spacing:.5px}.projects-widget .project-desc[data-encrypted=true]{color:var(--accent-color);opacity:.6;text-shadow:0 0 4px var(--accent-color);animation:text-flicker 2.5s infinite alternate}.projects-widget[data-animation-style=scramble] .project-name[data-encrypted=true],.projects-widget[data-animation-style=scramble] .project-desc[data-encrypted=true]{color:var(--accent-color);opacity:.7;text-shadow:0 0 4px var(--accent-color);animation:text-glitch 1.5s infinite alternate}.projects-widget[data-animation-style=typewriter] .project-name,.projects-widget[data-animation-style=typewriter] .project-desc{font-family:courier new,consolas,monaco,monospace;font-weight:400}.projects-widget[data-animation-style=typewriter] .project-name[data-encrypted=true],.projects-widget[data-animation-style=typewriter] .project-desc[data-encrypted=true]{color:var(--text-secondary);opacity:.6;background:linear-gradient(90deg,transparent 0%,var(--accent-color) 50%,transparent 100%);background-size:200% 100%;animation:typewriter-cursor 1s infinite step-end,typewriter-glow 2s infinite ease-in-out;position:relative}.projects-widget[data-animation-style=typewriter] .project-name[data-encrypted=true]::after,.projects-widget[data-animation-style=typewriter] .project-desc[data-encrypted=true]::after{content:'';position:absolute;right:-2px;top:0;width:2px;height:100%;background-color:var(--accent-color);animation:typewriter-blink 1s infinite step-end}.projects-widget[data-animation-style=typewriter] .project-link{background:linear-gradient(135deg,var(--tag-background) 0%,rgba(var(--accent-color-rgb,59,130,246),.02) 100%);border-color:rgba(var(--accent-color-rgb,59,130,246),.2)}.projects-widget[data-animation-style=typewriter] .project-link:hover{background:linear-gradient(135deg,var(--tag-hover-background) 0%,rgba(var(--accent-color-rgb,59,130,246),.05) 100%);border-color:var(--accent-color);box-shadow:var(--shadow-l2),0 0 15px rgba(var(--accent-color-rgb,59,130,246),.2)}.projects-widget[data-animation-style=slide] .project-name[data-encrypted=true],.projects-widget[data-animation-style=slide] .project-desc[data-encrypted=true]{color:var(--accent-color);opacity:.8;text-shadow:0 0 6px var(--accent-color);animation:text-flicker 2s infinite alternate}.projects-widget[data-enable-effects=false] .project-link::before,.projects-widget[data-enable-effects=false] .project-link::after{display:none}.projects-widget[data-enable-effects=false] .project-link:hover{box-shadow:var(--shadow-l2)}@keyframes border-pulse{0%,100%{background-position:0}50%{background-position:100%}}@keyframes text-flicker{0%{opacity:.6}50%{opacity:.8}100%{opacity:.7}}@keyframes text-glitch{0%{transform:translate(0);opacity:.7}20%{transform:translate(-1px,1px);opacity:.8}40%{transform:translate(1px,-1px);opacity:.6}60%{transform:translate(-1px,-1px);opacity:.9}80%{transform:translate(1px,1px);opacity:.7}100%{transform:translate(0);opacity:.8}}@keyframes typewriter-cursor{0%,50%{background-position:0}51%,100%{background-position:100%}}@keyframes typewriter-glow{0%,100%{opacity:.6}50%{opacity:.8}}@keyframes typewriter-blink{0%,50%{opacity:1}51%,100%{opacity:0}}.projects-widget .widget-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.projects-widget .widget-header .widget-title{margin:0;flex:1}.projects-widget .decrypt-all-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--accent-color);border:none;border-radius:6px;color:#fff;cursor:pointer;transition:all .3s ease;margin-left:12px;opacity:.8}.projects-widget .decrypt-all-btn:hover{opacity:1;transform:scale(1.1);box-shadow:0 4px 12px rgba(var(--accent-color-rgb,59,130,246),.4)}.projects-widget .decrypt-all-btn:active{transform:scale(.95)}.projects-widget .decrypt-all-btn svg{transition:transform .2s ease}.projects-widget .decrypt-all-btn:hover svg{transform:rotate(-5deg)}@keyframes fadeInScale{0%{opacity:0;transform:scale(.8)translateY(-10px)}50%{opacity:1;transform:scale(1.1)translateY(-2px)}100%{opacity:1;transform:scale(1)translateY(0)}}@media(max-width:768px){.projects-widget .project-link{padding:16px 20px;min-height:80px}.projects-widget .projects-container{gap:12px}.projects-widget .project-name{font-size:1.5rem}.projects-widget .project-desc{font-size:1.1rem}.projects-widget .project-link:hover{box-shadow:var(--shadow-l1),0 0 15px rgba(var(--accent-color-rgb,59,130,246),.2)}.projects-widget .widget-header{margin-bottom:12px}.projects-widget .decrypt-all-btn{width:28px;height:28px;margin-left:8px}.projects-widget .decrypt-all-btn svg{width:14px;height:14px}}@media(max-width:480px){.projects-widget .project-link{padding:14px 16px;min-height:70px}.projects-widget .project-name{font-size:1.35rem}.projects-widget .project-desc{font-size:1.05rem}.projects-widget .decrypt-all-btn{width:24px;height:24px;margin-left:6px}.projects-widget .decrypt-all-btn svg{width:12px;height:12px}}@media(max-width:768px){a,button{min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}.article-content{padding:15px}img{max-width:100%;height:auto}}@media(max-width:480px){body{font-size:1.5rem}.article-content{padding:10px}}@media(max-width:375px){body{font-size:1.4rem}}.main-container{padding:32px 24px}article.article-list{margin-bottom:32px;padding:24px;border-radius:var(--radius-md);box-shadow:var(--shadow-l1);transition:all .3s cubic-bezier(.4,0,.2,1)}article.article-list:hover{box-shadow:var(--shadow-hover);transform:translateY(-4px)}.article-content{padding:32px 24px;max-width:800px;margin:0 auto}.article-content>*+*{margin-top:1.5em}h1,h2,h3,h4,h5,h6{margin-top:2em;margin-bottom:.8em;font-weight:600}.article-list,.widget,.card{border:none;border-radius:var(--radius-md)}button,input,textarea,select,code,pre{border-radius:var(--radius-sm)}img{border-radius:var(--radius-md)}a{transition:color .2s ease,transform .2s ease}a:hover{transform:translateX(2px)}button,.button{transition:all .3s cubic-bezier(.4,0,.2,1)}button:hover,.button:hover{transform:translateY(-2px);box-shadow:var(--shadow-l2)}button:active,.button:active{transform:translateY(0)}.tag,.category{transition:all .2s ease;border-radius:var(--radius-sm)}.tag:hover,.category:hover{transform:scale(1.05)}html{scroll-behavior:smooth}@media(max-width:768px){.main-container{padding:16px 12px}article.article-list{margin-bottom:20px;padding:16px}.article-content{padding:20px 16px}}:root{--body-background:#f8f5f0;--card-background:#fefdfb;--sidebar-background:#fefdfb;--header-background:rgba(254, 253, 251, 0.95);--surface-elevated:#f5f2ed;--text-primary:#2c2c2c;--text-secondary:#4a4a4a;--text-tertiary:#6b6b6b;--text-quaternary:#8c8c8c;--text-muted:#a8a8a8;--ink-black:#1a1a1a;--ink-gray:#5a5a5a;--xuan-paper:#fefdfb;--qing-green:#5b8c5a;--zhu-red:#c83c3c;--dan-blue:#4a7c8c;--light-ink:#d4d4d4;--accent-color:#5b8c5a;--accent-color-darker:#4a7048;--accent-color-lighter:#7ba879;--accent-color-text:#fefdfb;--link-color:#4a7c8c;--link-hover:#3a6270;--border-color:#e5e0d8;--border-light:#f0ebe3;--card-separator-color:#e5e0d8;--divider-color:#d4cfc7;--shadow-l1:0 2px 12px rgba(0, 0, 0, 0.06);--shadow-l2:0 4px 20px rgba(0, 0, 0, 0.1);--shadow-l3:0 8px 32px rgba(0, 0, 0, 0.14);--shadow-hover:0 12px 40px rgba(91, 140, 90, 0.15);--code-background:#f5f2ed;--code-text:#3a3a3a;--code-inline-background:#ebe8e0;--code-inline-text:#c83c3c;--pre-background:#f5f2ed;--blockquote-background:#faf8f3;--blockquote-border:#c83c3c;--blockquote-text:#4a4a4a;--tag-background:#e5e0d8;--tag-text:#4a4a4a;--tag-hover-background:#5b8c5a;--tag-hover-text:#fefdfb;--selection-background:#5b8c5a;--selection-text:#fefdfb;--radius-sm:4px;--radius-md:8px;--radius-lg:12px}[data-scheme=dark]{--body-background:#1a1a1a;--card-background:#252525;--sidebar-background:#252525;--header-background:rgba(37, 37, 37, 0.95);--surface-elevated:#2f2f2f;--text-primary:#e8e8e8;--text-secondary:#c8c8c8;--text-tertiary:#a8a8a8;--text-quaternary:#888888;--text-muted:#686868;--accent-color:#7ba879;--accent-color-darker:#5b8c5a;--accent-color-lighter:#9bc099;--accent-color-text:#1a1a1a;--link-color:#6a9cac;--link-hover:#8ab4c4;--border-color:#3a3a3a;--border-light:#2f2f2f;--card-separator-color:#3a3a3a;--divider-color:#454545;--shadow-l1:0 2px 12px rgba(0, 0, 0, 0.5);--shadow-l2:0 4px 20px rgba(0, 0, 0, 0.6);--shadow-l3:0 8px 32px rgba(0, 0, 0, 0.7);--shadow-hover:0 12px 40px rgba(123, 168, 121, 0.2);--code-background:#2f2f2f;--code-text:#d8d8d8;--code-inline-background:#3a3a3a;--code-inline-text:#e88c8c;--pre-background:#2f2f2f;--blockquote-background:#2f2f2f;--blockquote-border:#e88c8c;--blockquote-text:#c8c8c8;--tag-background:#3a3a3a;--tag-text:#c8c8c8;--tag-hover-background:#7ba879;--tag-hover-text:#1a1a1a;--selection-background:#7ba879;--selection-text:#1a1a1a}body{background-color:var(--body-background)}.article-list,.widget{border:1px solid var(--border-color);transition:box-shadow .3s ease}.article-list:hover,.widget:hover{box-shadow:var(--shadow-l2)}hr,.divider{height:1px;background:var(--divider-color);border:none;margin:2em 0}a{transition:color .2s ease}.widget{background:var(--card-background);border-radius:var(--radius-md);padding:20px;margin-bottom:20px;border:1px solid var(--border-color)}.widget .widget-title{font-size:1.4rem;font-weight:600;color:var(--text-primary);margin-bottom:16px;display:flex;align-items:center;gap:12px;letter-spacing:.05em}.widget .widget-title .widget-icon{width:20px;height:20px;opacity:.6;flex-shrink:0}.category-list,.tag-cloud{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.category-list li,.tag-cloud li{margin:0}.category-list a,.tag-cloud a{display:inline-flex;align-items:center;padding:6px 12px;background:var(--tag-background);color:var(--tag-text);border-radius:var(--radius-sm);font-size:1.3rem;transition:all .2s ease;text-decoration:none}.category-list a:hover,.tag-cloud a:hover{background:var(--tag-hover-background);color:var(--tag-hover-text);transform:translateY(-1px)}.category-list a .tag-count,.category-list a .tag-count-1,.category-list a .tag-count-2,.tag-cloud a .tag-count,.tag-cloud a .tag-count-1,.tag-cloud a .tag-count-2{margin-left:6px;font-size:1.1rem;opacity:.7}.project-list{display:flex;flex-direction:column;gap:12px}.project-list .project-item{padding:12px;background:var(--surface-elevated);border-radius:var(--radius-sm);border-left:3px solid var(--accent-color);transition:all .2s ease}.project-list .project-item:hover{background:var(--tag-background);transform:translateX(4px)}.project-list .project-item .project-title{font-size:1.4rem;font-weight:600;color:var(--text-primary);margin-bottom:4px}.project-list .project-item .project-desc{font-size:1.2rem;color:var(--text-tertiary);line-height:1.6}:root{--body-background:#f8faf9;--card-background:#ffffff;--sidebar-background:#ffffff;--header-background:#ffffff;--surface-elevated:#f3f5f4;--text-primary:#1a1a1a;--text-secondary:#4a4a4a;--text-tertiary:#6b6b6b;--text-quaternary:#8c8c8c;--text-muted:#a8a8a8;--card-text-color-main:var(--text-primary);--card-text-color-secondary:var(--text-secondary);--card-text-color-tertiary:var(--text-tertiary);--accent-color:#5b8c5a;--accent-color-darker:#4a7048;--accent-color-lighter:#7ba879;--accent-color-text:#ffffff;--link-color:#5b8c5a;--link-hover:#4a7048;--border-color:#e8ebe9;--border-light:#f3f5f4;--card-separator-color:#e8ebe9;--divider-color:#d4d8d6;--shadow-l1:0 2px 8px rgba(91, 140, 90, 0.06);--shadow-l2:0 4px 16px rgba(91, 140, 90, 0.1);--shadow-l3:0 8px 24px rgba(91, 140, 90, 0.14);--shadow-hover:0 12px 32px rgba(91, 140, 90, 0.18);--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--code-background:#f3f5f4;--code-text:#2a2a2a;--code-inline-background:#e8ebe9;--code-inline-text:#5b8c5a;--pre-background:#f3f5f4;--blockquote-background:#f8faf9;--blockquote-border:#5b8c5a;--blockquote-text:#4a4a4a;--tag-background:#e8ebe9;--tag-text:#4a4a4a;--tag-hover-background:#5b8c5a;--tag-hover-text:#ffffff;--tag-count-1-bg:#5b8c5a;--tag-count-2-bg:#4a7048;--selection-background:#5b8c5a;--selection-text:#ffffff;--scrollbar-thumb:#d4d8d6;--scrollbar-thumb-hover:#b8bcba;--hover-accent:#5b8c5a;--archive-overlay:rgba(0, 0, 0, 0.3);--archive-text:#ffffff}[data-scheme=dark]{--body-background:#1a1a1a;--card-background:#252525;--sidebar-background:#252525;--header-background:#252525;--surface-elevated:#2f2f2f;--text-primary:#e8e8e8;--text-secondary:#c8c8c8;--text-tertiary:#a8a8a8;--text-quaternary:#888888;--text-muted:#686868;--card-text-color-main:var(--text-primary);--card-text-color-secondary:var(--text-secondary);--card-text-color-tertiary:var(--text-tertiary);--accent-color:#7ba879;--accent-color-darker:#5b8c5a;--accent-color-lighter:#9bc099;--accent-color-text:#1a1a1a;--link-color:#7ba879;--link-hover:#9bc099;--border-color:#3a3a3a;--border-light:#2f2f2f;--card-separator-color:#3a3a3a;--divider-color:#454545;--shadow-l1:0 2px 8px rgba(0, 0, 0, 0.5);--shadow-l2:0 4px 16px rgba(0, 0, 0, 0.6);--shadow-l3:0 8px 24px rgba(0, 0, 0, 0.7);--shadow-hover:0 12px 32px rgba(123, 168, 121, 0.2);--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--code-background:#2f2f2f;--code-text:#d8d8d8;--code-inline-background:#3a3a3a;--code-inline-text:#7ba879;--pre-background:#2f2f2f;--blockquote-background:#2f2f2f;--blockquote-border:#7ba879;--blockquote-text:#c8c8c8;--tag-background:#3a3a3a;--tag-text:#c8c8c8;--tag-hover-background:#7ba879;--tag-hover-text:#1a1a1a;--tag-count-1-bg:#7ba879;--tag-count-2-bg:#5b8c5a;--selection-background:#7ba879;--selection-text:#1a1a1a;--scrollbar-thumb:#454545;--scrollbar-thumb-hover:#555555;--hover-accent:#7ba879;--archive-overlay:rgba(0, 0, 0, 0.5);--archive-text:#ffffff}@media(prefers-color-scheme:dark){:root:not([data-scheme=light]){--body-background:#1e1e1e;--card-background:#2a2a2a;--sidebar-background:#2a2a2a;--header-background:#2a2a2a;--surface-elevated:#333333;--text-primary:#e5e5e5;--text-secondary:#cccccc;--text-tertiary:#aaaaaa;--text-quaternary:#888888;--text-muted:#666666;--card-text-color-main:var(--text-primary);--card-text-color-secondary:var(--text-secondary);--card-text-color-tertiary:var(--text-tertiary);--accent-color:#6791b9;--accent-color-darker:#4a729a;--accent-color-text:#1e1e1e;--link-color:#6791b9;--link-hover:#4a729a;--border-color:#333333;--border-light:#444444;--card-separator-color:#333333;--divider-color:#333333;--shadow-l1:0 1px 3px 0 rgba(0, 0, 0, 0.3), 0 1px 2px 0 rgba(0, 0, 0, 0.2);--shadow-l2:0 4px 6px -1px rgba(0, 0, 0, 0.3), 0 2px 4px -1px rgba(0, 0, 0, 0.2);--shadow-l3:0 10px 15px -3px rgba(0, 0, 0, 0.3), 0 4px 6px -2px rgba(0, 0, 0, 0.2);--code-background:#2a2a2a;--code-text:#e5e5e5;--code-inline-background:#333333;--code-inline-text:#ff8c8c;--pre-background:#2a2a2a;--blockquote-background:#2a2a2a;--blockquote-border:#6791b9;--blockquote-text:#bbbbbb;--tag-background:#333333;--tag-text:#cccccc;--tag-hover-background:#6791b9;--tag-hover-text:#1e1e1e;--tag-count-1-bg:#6791b9;--tag-count-2-bg:#4a729a;--selection-background:#6791b9;--selection-text:#1e1e1e;--scrollbar-thumb:#444444;--scrollbar-thumb-hover:#555555;--hover-accent:#6791b9;--archive-overlay:rgba(0, 0, 0, 0.5);--archive-text:#ffffff}}body{background:var(--body-background);color:var(--text-secondary);transition:background-color .3s ease,color .3s ease}::selection{color:var(--selection-text);background:var(--selection-background)}.pinned-badge{display:inline-flex;align-items:center;gap:4px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;font-size:12px;font-weight:600;padding:4px 8px;border-radius:12px;position:absolute;top:12px;right:12px;z-index:10;box-shadow:0 2px 4px rgba(239,68,68,.3);backdrop-filter:blur(8px)}.pinned-badge svg{width:12px;height:12px;fill:currentColor}article.pinned{position:relative;border:2px solid var(--accent-color);border-radius:var(--card-border-radius)}article.pinned::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent-color),var(--accent-color-darker));border-radius:var(--card-border-radius)var(--card-border-radius)0 0}[data-scheme=dark] .pinned-badge{background:linear-gradient(135deg,#f87171,#ef4444);box-shadow:0 2px 4px rgba(248,113,113,.4)}[data-scheme=dark] article.pinned{border-color:var(--accent-color)}[data-scheme=dark] article.pinned::before{background:linear-gradient(90deg,var(--accent-color),var(--accent-color-darker))}.article-page .main-article .article-content{max-width:calc(var(--article-body-max-width,860px) + var(--card-padding) * 2);margin:0 auto;padding:6px var(--card-padding)30px}.article-page .main-article .article-content>p,.article-page .main-article .article-content>ul,.article-page .main-article .article-content>ol,.article-page .main-article .article-content>blockquote,.article-page .main-article .article-content>.table-wrapper{padding-left:0}.article-page .main-article .article-footer{max-width:calc(var(--article-body-max-width,860px) + var(--card-padding) * 2);margin:0 auto 30px;padding:0 var(--card-padding)}.article-page .related-content--wrapper{max-width:calc(var(--article-body-max-width,860px) + var(--card-padding) * 2);margin:0 auto 30px;padding:0 var(--card-padding)}@media(max-width:768px){.article-page .main-article .article-content{padding:4px var(--card-padding)24px}.article-page .main-article .article-footer{margin:0 auto 24px}.article-page .related-content--wrapper{margin:0 auto 24px;padding:0 var(--card-padding)}}