/*
  PaperMod v8+
  License: MIT https://github.com/adityatelange/hugo-PaperMod/blob/master/LICENSE
  Copyright (c) 2020 nanxiaobei and adityatelange
  Copyright (c) 2021-2025 adityatelange
*/
:root{--gap:24px;--content-gap:20px;--nav-width:1024px;--main-width:720px;--header-height:60px;--footer-height:60px;--radius:8px;--theme:rgb(255, 255, 255);--entry:rgb(255, 255, 255);--primary:rgb(30, 30, 30);--secondary:rgb(108, 108, 108);--tertiary:rgb(214, 214, 214);--content:rgb(31, 31, 31);--code-block-bg:rgb(28, 29, 33);--code-bg:rgb(245, 245, 245);--border:rgb(238, 238, 238);color-scheme:light}:root[data-theme=dark]{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-block-bg:rgb(46, 46, 51);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51);color-scheme:dark}.list{background:var(--code-bg)}[data-theme=dark] .list{background:var(--theme)}*,::after,::before{box-sizing:border-box}html{-webkit-tap-highlight-color:transparent;overflow-y:scroll;-webkit-text-size-adjust:100%;text-size-adjust:100%}a,button,body,h1,h2,h3,h4,h5,h6{color:var(--primary)}body{font-family:-apple-system,BlinkMacSystemFont,segoe ui,Roboto,Oxygen,Ubuntu,Cantarell,open sans,helvetica neue,sans-serif;font-size:18px;line-height:1.6;word-break:break-word;background:var(--theme)}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section,table{display:block}h1,h2,h3,h4,h5,h6{line-height:1.2}h1,h2,h3,h4,h5,h6,p{margin-top:0;margin-bottom:0}ul{padding:0}a{text-decoration:none}body,figure,ul{margin:0}table{width:100%;border-collapse:collapse;border-spacing:0;overflow-x:auto;word-break:keep-all}button,input,textarea{padding:0;font:inherit;background:0 0;border:0}input,textarea{outline:0}button,input[type=button],input[type=submit]{cursor:pointer}input:-webkit-autofill,textarea:-webkit-autofill{box-shadow:0 0 0 50px var(--theme)inset}img{display:block;max-width:100%}.not-found{position:absolute;left:0;right:0;display:flex;align-items:center;justify-content:center;height:80%;font-size:160px;font-weight:700}.archive-posts{width:100%;font-size:16px}.archive-year{margin-top:40px}.archive-year:not(:last-of-type){border-bottom:2px solid var(--border)}.archive-month{display:flex;align-items:flex-start;padding:10px 0}.archive-month-header{margin:25px 0;width:200px}.archive-month:not(:last-of-type){border-bottom:1px solid var(--border)}.archive-entry{position:relative;padding:5px;margin:10px 0}.archive-entry-title{margin:5px 0;font-weight:400}.archive-count,.archive-meta{color:var(--secondary);font-size:14px}.footer,.top-link{font-size:12px;color:var(--secondary)}.footer{max-width:calc(var(--main-width) + var(--gap) * 2);margin:auto;padding:calc((var(--footer-height) - var(--gap))/2)var(--gap);text-align:center;line-height:24px}.footer span{margin-inline-start:1px;margin-inline-end:1px}.footer span:last-child{white-space:nowrap}.footer a{color:inherit;border-bottom:1px solid var(--secondary)}.footer a:hover{border-bottom:1px solid var(--primary)}.top-link{visibility:hidden;position:fixed;bottom:60px;right:30px;z-index:99;background:var(--tertiary);width:42px;height:42px;padding:12px;border-radius:64px;transition:visibility .5s,opacity .8s linear}.top-link,.top-link svg{filter:drop-shadow(0 0 0 var(--theme))}.footer a:hover,.top-link:hover{color:var(--primary)}.top-link:focus,#theme-toggle:focus{outline:0}.nav{display:flex;flex-wrap:wrap;justify-content:space-between;max-width:calc(var(--nav-width) + var(--gap) * 2);margin-inline-start:auto;margin-inline-end:auto;line-height:var(--header-height)}.nav a{display:block}.logo,#menu{display:flex;margin:auto var(--gap)}.logo{flex-wrap:inherit}.logo a{font-size:24px;font-weight:700}.logo a img,.logo a svg{display:inline;vertical-align:middle;pointer-events:none;transform:translate(0,-10%);border-radius:6px;margin-inline-end:8px}button#theme-toggle{font-size:26px;margin:auto 4px}[data-theme=dark] #moon{display:none}[data-theme=light] #sun{display:none}#menu{list-style:none;word-break:keep-all;overflow-x:auto;white-space:nowrap}#menu li+li{margin-inline-start:var(--gap)}#menu a{font-size:16px}#menu .active{font-weight:500;border-bottom:2px solid}.lang-switch li,.lang-switch ul,.logo-switches{display:inline-flex;margin:auto 4px}.lang-switch{display:flex;flex-wrap:inherit}.lang-switch a{margin:auto 3px;font-size:16px;font-weight:500}.logo-switches{flex-wrap:inherit}.main{position:relative;min-height:calc(100vh - var(--header-height) - var(--footer-height));max-width:calc(var(--main-width) + var(--gap) * 2);margin:auto;padding:var(--gap)}.page-header h1{font-size:40px}.pagination{display:flex}.pagination a{color:var(--theme);font-size:13px;line-height:36px;background:var(--primary);border-radius:calc(36px/2);padding:0 16px}.pagination .next{margin-inline-start:auto}.social-icons a{display:inline-flex;padding:10px}.social-icons a svg{height:26px;width:26px}code{direction:ltr}div.highlight,pre{position:relative}.copy-code{display:none;position:absolute;top:4px;right:4px;color:rgba(255,255,255,.8);background:rgba(78,78,78,.8);border-radius:var(--radius);padding:0 5px;font-size:14px;user-select:none}div.highlight:hover .copy-code,pre:hover .copy-code{display:block}.first-entry{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:320px;margin:var(--gap)0 calc(var(--gap) * 2)}.first-entry .entry-header{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.first-entry .entry-header h1{font-size:34px;line-height:1.3}.first-entry .entry-content{margin:14px 0;font-size:16px;-webkit-line-clamp:3}.first-entry .entry-footer{font-size:14px}.home-info .entry-content{-webkit-line-clamp:unset}.post-entry{position:relative;margin-bottom:var(--gap);padding:var(--gap);background:var(--entry);border-radius:var(--radius);transition:transform .1s;border:1px solid var(--border)}.post-entry:active{transform:scale(.96)}.tag-entry .entry-cover{display:none}.entry-header h2{font-size:24px;line-height:1.3}.entry-content{margin:8px 0;color:var(--secondary);font-size:14px;line-height:1.6;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.entry-footer{color:var(--secondary);font-size:13px}.entry-link{position:absolute;left:0;right:0;top:0;bottom:0}.entry-hint{color:var(--secondary)}.entry-hint-parent{display:flex;justify-content:space-between}.entry-cover{font-size:14px;margin-bottom:var(--gap);text-align:center}.entry-cover img{border-radius:var(--radius);width:100%;height:auto}.entry-cover a{box-shadow:0 1px 0 var(--primary)}.page-header,.post-header{margin:24px auto var(--content-gap)}.post-title{margin-bottom:2px;font-size:40px}.post-description{margin-top:10px;margin-bottom:5px}.post-meta,.breadcrumbs{color:var(--secondary);font-size:14px}.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center}.i18n_list{display:inline-flex}.post-meta .i18n_list li{list-style:none;margin:auto 3px}.breadcrumbs a{font-size:16px}.post-content{color:var(--content);margin:30px 0}.post-content h3,.post-content h4,.post-content h5,.post-content h6{margin:24px 0 16px}.post-content h1{margin:40px auto 32px;font-size:40px}.post-content h2{margin:32px auto 24px;font-size:32px}.post-content h3{font-size:24px}.post-content h4{font-size:16px}.post-content h5{font-size:14px}.post-content h6{font-size:12px}.post-content a,.post-meta .i18n_list li a,.toc a:hover{box-shadow:0 1px;box-decoration-break:clone;-webkit-box-decoration-break:clone}.post-content a code{margin:auto 0;border-radius:0;box-shadow:0 -1px 0 var(--primary)inset}.post-content del{text-decoration:line-through}.post-content dl,.post-content ol,.post-content p,.post-content figure,.post-content ul{margin-bottom:var(--content-gap)}.post-content ol,.post-content ul{padding-inline-start:20px}.post-content li{margin-top:5px}.post-content li p{margin-bottom:0}.post-content dl{display:flex;flex-wrap:wrap;margin:0}.post-content dt{width:25%;font-weight:700}.post-content dd{width:75%;margin-inline-start:0;padding-inline-start:10px}.post-content dd~dd,.post-content dt~dt{margin-top:10px}.post-content table{margin-bottom:var(--content-gap)}.post-content table th,.post-content table:not(.highlighttable,.highlight table,.gist .highlight) td{min-width:80px;padding:8px 5px;line-height:1.5;border-bottom:1px solid var(--border)}.post-content table th{text-align:start}.post-content table:not(.highlighttable) td code:only-child{margin:auto 0}.post-content .highlight table{border-radius:var(--radius)}.post-content .highlight:not(table){margin:10px auto;background:var(--code-block-bg)!important;border-radius:var(--radius);direction:ltr}.post-content li>.highlight{margin-inline-end:0}.post-content ul pre{margin-inline-start:calc(var(--gap) * -2)}.post-content .highlight pre{margin:0}.post-content .highlighttable{table-layout:fixed}.post-content .highlighttable td:first-child{width:40px}.post-content .highlighttable td .linenodiv{padding-inline-end:0!important}.post-content .highlighttable td .highlight,.post-content .highlighttable td .linenodiv pre{margin-bottom:0}.post-content code{margin:auto 4px;padding:4px 6px;font-size:.78em;line-height:1.5;background:var(--code-bg);border-radius:2px}.post-content pre code{display:grid;margin:auto 0;padding:10px;color:#d5d5d6;background:var(--code-block-bg)!important;border-radius:var(--radius);overflow-x:auto;word-break:break-all}.post-content blockquote{margin:20px 0;padding:0 14px;border-inline-start:3px solid var(--primary)}.post-content hr{margin:30px 0;height:2px;background:var(--tertiary);border:0}.post-content iframe{max-width:100%}.post-content img{border-radius:4px;margin:1rem 0}.post-content img[src*="#center"]{margin:1rem auto}.post-content figure.align-center{text-align:center}.post-content figure>figcaption{color:var(--primary);font-size:16px;font-weight:700;margin:8px 0 16px}.post-content figure>figcaption>p{color:var(--secondary);font-size:14px;font-weight:400}.toc{margin-bottom:var(--content-gap);border:1px solid var(--border);background:var(--code-bg);border-radius:var(--radius);padding:.4em}[data-theme=dark] .toc{background:var(--entry)}.toc details summary{cursor:zoom-in;margin-inline-start:10px;user-select:none}.toc details[open] summary{cursor:zoom-out}.toc .details{display:inline;font-weight:500}.toc .inner{margin:5px 20px;padding:0 10px;opacity:.9}.toc li ul{margin-inline-start:var(--gap)}.toc summary:focus{outline:0}.post-footer{margin-top:var(--content-gap)}.post-footer>*{margin-bottom:10px}.post-tags{display:flex;flex-wrap:wrap;gap:10px}.post-tags li{display:inline-block}.post-tags a,.share-buttons,.paginav{border-radius:var(--radius);background:var(--code-bg);border:1px solid var(--border)}.post-tags a{display:block;padding:0 14px;color:var(--secondary);font-size:14px;line-height:34px;background:var(--code-bg)}.post-tags a:hover,.paginav a:hover{background:var(--border)}.share-buttons{padding:10px;display:flex;justify-content:center;overflow-x:auto;gap:10px}.share-buttons li,.share-buttons a{display:inline-flex}.share-buttons a:not(:last-of-type){margin-inline-end:12px}h1:hover .anchor,h2:hover .anchor,h3:hover .anchor,h4:hover .anchor,h5:hover .anchor,h6:hover .anchor{display:inline-flex;color:var(--secondary);margin-inline-start:8px;font-weight:500;user-select:none}.paginav{display:flex;line-height:30px}.paginav a{padding-inline-start:14px;padding-inline-end:14px;border-radius:var(--radius)}.paginav .title{letter-spacing:1px;text-transform:uppercase;font-size:small;color:var(--secondary)}.paginav .prev,.paginav .next{width:50%}.paginav span:hover:not(.title){box-shadow:0 1px}.paginav .next{margin-inline-start:auto;text-align:right}[dir=rtl] .paginav .next{text-align:left}h1>a>svg{display:inline}img.in-text{display:inline;margin:auto}.buttons,.main .profile{display:flex;justify-content:center}.main .profile{align-items:center;min-height:calc(100vh - var(--header-height) - var(--footer-height) - (var(--gap) * 2));text-align:center}.profile .profile_inner{display:flex;flex-direction:column;align-items:center;gap:10px}.profile img{border-radius:50%}.buttons{flex-wrap:wrap;max-width:400px}.button{background:var(--tertiary);border-radius:var(--radius);margin:8px;padding:6px;transition:transform .1s}.button-inner{padding:0 8px}.button:active{transform:scale(.96)}#searchbox input{padding:4px 10px;width:100%;color:var(--primary);font-weight:700;border:2px solid var(--tertiary);border-radius:var(--radius)}#searchbox input:focus{border-color:var(--secondary)}#searchResults li{list-style:none;border-radius:var(--radius);padding:10px;margin:10px 0;position:relative;font-weight:500}#searchResults{margin:10px 0;width:100%}#searchResults li:active{transition:transform .1s;transform:scale(.98)}#searchResults a{position:absolute;width:100%;height:100%;top:0;left:0;outline:none}#searchResults .focus{transform:scale(.98);border:2px solid var(--tertiary)}.terms-tags li{display:inline-block;margin:10px;font-weight:500}.terms-tags a{display:block;padding:3px 10px;background:var(--tertiary);border-radius:6px;transition:transform .1s}.terms-tags a:active{background:var(--tertiary);transform:scale(.96)}.bg{color:#cad3f5;background-color:#24273a}.chroma{color:#cad3f5;background-color:#24273a}.chroma .x{}.chroma .err{color:#ed8796}.chroma .cl{}.chroma .lnlinks{outline:none;text-decoration:none;color:inherit}.chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}.chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}.chroma .hl{background-color:#474733}.chroma .lnt{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#8087a2}.chroma .ln{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#8087a2}.chroma .line{display:flex}.chroma .k{color:#c6a0f6}.chroma .kc{color:#f5a97f}.chroma .kd{color:#ed8796}.chroma .kn{color:#8bd5ca}.chroma .kp{color:#c6a0f6}.chroma .kr{color:#c6a0f6}.chroma .kt{color:#ed8796}.chroma .n{}.chroma .na{color:#8aadf4}.chroma .nb{color:#91d7e3}.chroma .bp{color:#91d7e3}.chroma .nc{color:#eed49f}.chroma .no{color:#eed49f}.chroma .nd{color:#8aadf4;font-weight:700}.chroma .ni{color:#8bd5ca}.chroma .ne{color:#f5a97f}.chroma .nf{color:#8aadf4}.chroma .fm{color:#8aadf4}.chroma .nl{color:#91d7e3}.chroma .nn{color:#f5a97f}.chroma .nx{}.chroma .py{color:#f5a97f}.chroma .nt{color:#c6a0f6}.chroma .nv{color:#f4dbd6}.chroma .vc{color:#f4dbd6}.chroma .vg{color:#f4dbd6}.chroma .vi{color:#f4dbd6}.chroma .vm{color:#f4dbd6}.chroma .l{}.chroma .ld{}.chroma .s{color:#a6da95}.chroma .sa{color:#ed8796}.chroma .sb{color:#a6da95}.chroma .sc{color:#a6da95}.chroma .dl{color:#8aadf4}.chroma .sd{color:#6e738d}.chroma .s2{color:#a6da95}.chroma .se{color:#8aadf4}.chroma .sh{color:#6e738d}.chroma .si{color:#a6da95}.chroma .sx{color:#a6da95}.chroma .sr{color:#8bd5ca}.chroma .s1{color:#a6da95}.chroma .ss{color:#a6da95}.chroma .m{color:#f5a97f}.chroma .mb{color:#f5a97f}.chroma .mf{color:#f5a97f}.chroma .mh{color:#f5a97f}.chroma .mi{color:#f5a97f}.chroma .il{color:#f5a97f}.chroma .mo{color:#f5a97f}.chroma .o{color:#91d7e3;font-weight:700}.chroma .ow{color:#91d7e3;font-weight:700}.chroma .p{}.chroma .c{color:#6e738d;font-style:italic}.chroma .ch{color:#6e738d;font-style:italic}.chroma .cm{color:#6e738d;font-style:italic}.chroma .c1{color:#6e738d;font-style:italic}.chroma .cs{color:#6e738d;font-style:italic}.chroma .cp{color:#6e738d;font-style:italic}.chroma .cpf{color:#6e738d;font-weight:700;font-style:italic}.chroma .g{}.chroma .gd{color:#ed8796;background-color:#363a4f}.chroma .ge{font-style:italic}.chroma .gr{color:#ed8796}.chroma .gh{color:#f5a97f;font-weight:700}.chroma .gi{color:#a6da95;background-color:#363a4f}.chroma .go{}.chroma .gp{}.chroma .gs{font-weight:700}.chroma .gu{color:#f5a97f;font-weight:700}.chroma .gt{color:#ed8796}.chroma .gl{text-decoration:underline}.chroma .w{}.chroma{background-color:unset!important}.chroma .hl{display:flex}.chroma .lnt{padding:0 0 0 12px}.highlight pre.chroma code{padding:8px 0}.highlight pre.chroma .line .cl,.chroma .ln{padding:0 10px}.chroma .lntd:last-of-type{width:100%}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--tertiary);border:5px solid var(--theme);border-radius:var(--radius)}[data-theme=light] .list::-webkit-scrollbar-thumb{border:5px solid var(--code-bg)}::-webkit-scrollbar-thumb:hover{background:var(--secondary)}::-webkit-scrollbar:not(.highlighttable,.highlight table,.gist .highlight){background:var(--theme)}.post-content .highlighttable td .highlight pre code::-webkit-scrollbar{display:none}.post-content :not(table) ::-webkit-scrollbar-thumb{border:2px solid var(--code-block-bg);background:#717175}.post-content :not(table) ::-webkit-scrollbar-thumb:hover{background:#a3a3a5}.gist table::-webkit-scrollbar-thumb{border:2px solid #fff;background:#adadad}.gist table::-webkit-scrollbar-thumb:hover{background:#707070}.post-content table::-webkit-scrollbar-thumb{border-width:2px}@media screen and (min-width:768px){::-webkit-scrollbar{width:19px;height:11px}}@media screen and (max-width:768px){:root{--gap:14px}.profile img{transform:scale(.85)}.first-entry{min-height:260px}.archive-month{flex-direction:column}.archive-year{margin-top:20px}.footer{padding:calc((var(--footer-height) - var(--gap) - 10px)/2)var(--gap)}}@media screen and (max-width:900px){.list .top-link{transform:translateY(-5rem)}}@media screen and (max-width:340px){.share-buttons{justify-content:unset}}@media(prefers-reduced-motion){.terms-tags a:active,.button:active,.post-entry:active,.top-link,#searchResults .focus,#searchResults li:active{transform:none}}.card-hover-effect{transition:all var(--transition-normal);cursor:pointer}.card-hover-effect:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:var(--accent)}[data-theme=dark] .card-hover-effect:hover{box-shadow:var(--shadow-hover);border-color:var(--accent)}.card{background-color:var(--bg-card);border-radius:12px;padding:24px;box-shadow:var(--shadow-sm);border:1px solid transparent;transition:all var(--transition-normal)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:var(--accent)}[data-theme=dark] .card{border:1px solid var(--border-color);box-shadow:none}[data-theme=dark] .card:hover{box-shadow:var(--shadow-hover);border-color:var(--accent)}.post-card{background-color:var(--bg-card);border-radius:12px;padding:24px var(--gap);box-shadow:var(--shadow-sm);border:1px solid transparent;transition:all var(--transition-normal);margin-bottom:1.5rem;display:flex;flex-direction:column}.post-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:var(--accent)}.post-entry{background-color:var(--bg-card);border-radius:12px;padding:24px var(--gap);box-shadow:var(--shadow-sm);border:1px solid transparent;transition:all var(--transition-normal);margin-bottom:1.5rem;display:flex;flex-direction:column}.post-entry:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:var(--accent)}.post-entry .entry-header{order:1}.post-entry .entry-footer{order:2;margin-bottom:6px;margin-top:0;color:var(--text-meta);font-size:.8em;text-align:left;line-height:1.3;display:flex;align-items:center;flex-wrap:wrap;gap:8px}.post-entry .entry-content{order:3;margin-top:10px}.post-entry .entry-title{margin-bottom:2px;margin-top:0;line-height:1.3}.post-entry .entry-footer span{display:inline-flex;align-items:center}.post-entry .entry-footer span:not(:last-child)::after{content:"·";margin-left:8px;color:var(--border-color);font-weight:700}.article-card{background-color:var(--bg-card);border-radius:12px;box-shadow:var(--shadow-sm);border:1px solid transparent;transition:all var(--transition-normal)}.article-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:var(--accent)}[data-theme=dark] .article-card{border:1px solid var(--border-color);box-shadow:none}[data-theme=dark] .article-card:hover{box-shadow:var(--shadow-hover);border-color:var(--accent)}.category-card{background-color:var(--bg-card);border-radius:12px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,5%);border:1px solid transparent;transition:all var(--transition-normal);margin-bottom:1rem}.category-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover);border-color:var(--accent)}[data-theme=dark] .category-card{border:1px solid var(--border-color);box-shadow:none}[data-theme=dark] .category-card:hover{box-shadow:var(--shadow-hover);border-color:var(--accent)}.category-card a{text-decoration:none;color:var(--primary);display:flex;align-items:center;padding:1rem;height:100%}.category-content{flex:1}.category-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:0}.category-name{font-size:1.1rem;font-weight:600}.category-count{width:30px;height:30px;line-height:28px;text-align:center;border-radius:50%;font-size:.9rem;font-weight:600;color:var(--accent);background-color:var(--bg-body);border:1px solid var(--accent);transition:all var(--transition-normal)}.category-card:hover .category-count{background-color:var(--accent);color:var(--bg-card)}.category-description{font-size:.95rem;color:var(--secondary);line-height:1.4;opacity:.9}.categories-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin:2rem 0}.category-card{opacity:0;transform:translateY(20px);animation:fadeInUp .5s ease forwards;margin-bottom:0}.category-card:nth-child(1){animation-delay:.1s}.category-card:nth-child(2){animation-delay:.2s}.category-card:nth-child(3){animation-delay:.3s}.category-card:nth-child(4){animation-delay:.4s}.category-card:nth-child(5){animation-delay:.5s}@media(max-width:768px){.categories-container{grid-template-columns:1fr;gap:.8rem}}.archive-entry{background-color:var(--bg-card);border-radius:14px;padding:26px 1.5rem;box-shadow:0 4px 6px -1px rgba(0,0,0,5%);border:1px solid transparent;transition:all var(--transition-normal);margin-bottom:1.5rem;position:relative}.archive-entry:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:var(--accent)}[data-theme=dark] .archive-entry{border:1px solid var(--border-color);box-shadow:none}[data-theme=dark] .archive-entry:hover{box-shadow:var(--shadow-hover);border-color:var(--accent)}.archive-entry::before{content:'';position:absolute;left:-1.25rem;top:1.6rem;width:.35rem;height:.35rem;border-radius:50%;background:var(--secondary);opacity:.6}.archive-entry-title{font-size:1.1rem;margin:0 0 .5rem;line-height:1.4}.archive-entry-link{color:var(--primary);text-decoration:none;transition:color var(--transition-fast)}.archive-entry-link:hover{color:var(--content)}.archive-container .archive-entry{padding:12px 1rem;margin-bottom:.8rem;border-radius:8px}.archive-container .archive-entry-title{font-size:1rem;margin:0;line-height:1.3}.archive-container .archive-meta{display:none}.archive-container .archive-entry::before{top:.9rem}.archive-container .archive-entry:hover{transform:translateX(4px);transform:translateY(0)}.empty-state-card{background-color:var(--bg-card);border-radius:12px;padding:4rem 2rem;box-shadow:0 2px 8px rgba(0,0,0,.1);border:1px solid transparent;text-align:center;color:var(--secondary);border-radius:1rem;margin:2rem auto;max-width:600px;transition:all var(--transition-normal)}.empty-state-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:var(--accent)}[data-theme=dark] .empty-state-card{border:1px solid var(--border-color);box-shadow:none}[data-theme=dark] .empty-state-card:hover{box-shadow:var(--shadow-hover);border-color:var(--accent)}.empty-state-card p:first-child{font-size:1.2rem;margin-bottom:1rem}.empty-state-card p:last-child{font-style:italic;color:var(--secondary)}.tag-cloud{display:flex;flex-wrap:wrap;gap:2rem;justify-content:center;align-items:baseline;max-width:1200px;margin:3rem auto;padding:1rem}.tag-item{display:inline-flex;align-items:center;padding:6px 14px;margin:6px 8px 6px 0;border-radius:99px;font-size:.9em;font-weight:500;background-color:var(--bg-body);color:var(--text-main);border:1px solid var(--border-color);cursor:pointer;transition:all var(--transition-normal,.3s);text-decoration:none}.tag-item:hover{background-color:var(--accent);color:var(--bg-card);border-color:var(--accent);transform:translateY(-1px)}[data-theme=dark] .tag-item:hover{color:var(--bg-body)}.terms-tags{list-style:none;padding:0;margin:2rem 0;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.terms-tags li{background-color:initial;border-radius:99px;padding:4px 12px 4px 14px;border:1.5px solid var(--border-color);transition:all var(--transition-normal);position:relative;display:inline-flex;align-items:center}.terms-tags li:hover{background-color:var(--accent);border-color:var(--accent);transform:translateY(-2px)}.terms-tags a{text-decoration:none;color:var(--text-main);display:inline-flex;align-items:center;gap:0;position:relative;background:0 0!important;padding:0!important;border-radius:0!important}.terms-tags li:hover a{color:var(--bg-card)}.terms-tags .tag-count{display:none}.terms-tags li:hover .tag-count{display:none}@media(max-width:768px){.card{padding:20px;border-radius:10px}.category-card a{padding:1rem}.category-name{font-size:1.2rem}.archive-entry{padding-right:80px}.post-card:hover,.post-entry:hover,.article-card:hover,.category-card:hover,.archive-entry:hover,.empty-state-card:hover{transform:none;box-shadow:var(--shadow-sm);border-color:transparent}[data-theme=dark] .post-card:hover,[data-theme=dark] .post-entry:hover,[data-theme=dark] .article-card:hover,[data-theme=dark] .category-card:hover,[data-theme=dark] .archive-entry:hover,[data-theme=dark] .empty-state-card:hover{box-shadow:none;border-color:var(--border-color)}}.card-hover{transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.card-hover:hover{transform:translateY(-2px);box-shadow:0 4px 10px rgba(0,0,0,5%)}body.dark .card-hover:hover{box-shadow:0 4px 10px rgba(0,0,0,.2)}.page-header-base{margin:2rem auto 3rem;text-align:center;max-width:900px;padding:0 var(--container-padding)}.page-header-title{font-size:2.5rem;font-weight:700;margin-bottom:1rem}.gradient-text{background:linear-gradient(120deg,var(--primary),var(--secondary));background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:gradientText 5s ease infinite}@keyframes gradientText{0%,100%{filter:hue-rotate(0)}50%{filter:hue-rotate(30deg)}}.card-base{background-color:var(--bg-card);border-radius:12px;padding:24px;box-shadow:var(--shadow-sm);border:1px solid transparent;transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.card-base:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:var(--accent)}[data-theme=dark] .card-base{border:1px solid var(--border-color);box-shadow:none}[data-theme=dark] .card-base:hover{box-shadow:var(--shadow-hover);border-color:var(--accent)}.btn-base{display:inline-block;padding:8px 16px;border-radius:6px;font-size:.9em;font-weight:500;text-decoration:none;transition:all var(--transition-normal);border:1px solid transparent}.btn-primary{background-color:var(--accent);color:#fff}.btn-primary:hover{background-color:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,.1)}.btn-secondary{background-color:initial;color:var(--accent);border:1px solid var(--accent)}.btn-secondary:hover{background-color:var(--accent);color:#fff}.glass-nav{position:sticky;top:0;z-index:100;width:100%;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background-color:rgba(255,255,255,.9);border-bottom:1px solid rgba(0,0,0,8%);transition:background-color var(--transition-normal),border-bottom var(--transition-normal)}[data-theme=dark] .glass-nav{background-color:rgba(18,18,18,.9);border-bottom:1px solid rgba(255,255,255,.1)}.fade-in-up{opacity:0;transform:translateY(20px);animation:fadeInUp .5s ease forwards}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.fade-in-up:nth-child(1){animation-delay:.1s}.fade-in-up:nth-child(2){animation-delay:.2s}.fade-in-up:nth-child(3){animation-delay:.3s}.fade-in-up:nth-child(4){animation-delay:.4s}.fade-in-up:nth-child(5){animation-delay:.5s}@media(max-width:768px){.mobile-hidden{display:none!important}.mobile-text-small{font-size:.9em!important}.mobile-padding-small{padding:.5rem!important}}.text-gradient{background:linear-gradient(120deg,var(--primary),var(--secondary));background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:gradientText 5s ease infinite}.text-center{text-align:center}.text-muted{color:var(--text-meta)}.text-accent{color:var(--accent)}.container-narrow{max-width:900px;margin:0 auto;padding:0 var(--container-padding)}.container-wide{max-width:1200px;margin:0 auto;padding:0 var(--container-padding)}.section-spacing{margin:var(--section-gap)auto}.scrollbar-hidden{scrollbar-width:none;-ms-overflow-style:none}.scrollbar-hidden::-webkit-scrollbar{display:none}.page-header{margin:2rem auto 3rem;text-align:center;max-width:900px;padding:0 var(--container-padding)}.page-header h1{font-size:2.5rem;font-weight:700;margin-bottom:1rem}.page-header h1 span:not(:first-child){background:linear-gradient(120deg,var(--primary),var(--secondary));background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:gradientText 5s ease infinite}@keyframes gradientText{0%,100%{filter:hue-rotate(0)}50%{filter:hue-rotate(30deg)}}.page-description{color:var(--secondary);font-size:1.1rem;margin-top:1rem;font-style:italic}.archives-header{margin:2rem auto 3rem;text-align:center}.archives-header h1{font-size:2.5rem;font-weight:700;margin-bottom:1rem}.archive-description{color:var(--secondary);font-size:1.1rem;margin-top:1rem;font-style:italic}@media(max-width:768px){.page-header{margin:1.5rem auto 2rem;padding-top:20px}.post-header{padding-top:10px}.page-header h1{font-size:2rem}.archives-header{padding-top:20px}.archives-header h1{font-size:1.75rem}.page-description,.archive-description{font-size:1rem}}:root{--bg-body:#F7F8F9;--bg-card:#FFFFFF;--code-bg:#F7FAFC;--code-block-bg:#F1F3F5;--code-block-border:#D1D5DB;--text-main:#4A5568;--text-head:#2D3748;--text-meta:#A0AEC0;--content:#4A5568;--primary:#2D3748;--secondary:#718096;--accent:#5A67D8;--accent-dim:rgba(90, 103, 216, 0.1);--accent-hover:#4C51BF;--border-color:#E2E8F0;--border:#E2E8F0;--tertiary:#CBD5E0;--shadow-sm:0 2px 4px rgba(0, 0, 0, 0.04);--shadow-hover:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);--bg-nav-blur:rgba(247, 248, 249, 0.95);--theme:#FFFFFF;--entry:#FAFAFA;--font-article:"Source Serif Pro", "PingFang SC", "Noto Serif CJK SC", "Songti SC", serif;--font-ui:"Source Serif Pro", "PingFang SC", -apple-system, BlinkMacSystemFont, "Segoe UI", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-code:"Maple Mono", "PingFang SC", "JetBrains Mono", "Fira Code", "Consolas", "Courier New", monospace;--gap:1rem;--section-gap:2rem;--container-padding:1rem;--transition-fast:0.2s ease;--transition-normal:0.3s ease;--transition-slow:0.5s ease;--bg-hover-soft:rgba(90, 103, 216, 0.05)}[data-theme=dark]{--bg-body:#19202A;--bg-card:#252C3A;--code-bg:#171923;--code-block-bg:#1A1E2E;--text-main:#E2E8F0;--text-head:#F7FAFC;--text-meta:#718096;--content:#E2E8F0;--primary:#F7FAFC;--secondary:#A0AEC0;--accent:#81E6D9;--accent-dim:rgba(129, 230, 217, 0.15);--accent-hover:#4FD1C5;--border-color:#374151;--border:#374151;--tertiary:#2D3748;--shadow-sm:none;--shadow-hover:0 10px 15px -3px rgba(0, 0, 0, 0.4);--bg-nav-blur:rgba(25, 32, 42, 0.95);--theme:#121212;--entry:#1A202C;--bg-hover-soft:rgba(129, 230, 217, 0.05)}@media(max-width:768px){:root{--container-padding:0.5rem;--section-gap:1.5rem}}.archive-container{max-width:900px;margin:0 auto;padding:0 var(--container-padding)}.archive-year{margin-bottom:3rem;position:relative}.archive-year::before{content:'';position:absolute;left:2.5rem;top:0;bottom:0;width:2px;background:var(--border);opacity:.5}.archive-year-header{font-size:1.75rem;margin-bottom:2rem;position:relative}.archive-year-link{color:var(--primary);text-decoration:none;position:relative;padding-left:3.5rem}.archive-year-link::before{content:'';position:absolute;left:2rem;top:50%;width:1rem;height:2px;background:var(--primary);transform:translateY(-50%)}.archive-month{margin-left:4rem;margin-bottom:2rem;position:relative}.archive-month::before{content:'';position:absolute;left:-1.5rem;top:.8rem;width:.5rem;height:.5rem;border-radius:50%;background:var(--border)}.archive-month-header{font-size:1.25rem;margin-bottom:1rem;color:var(--primary)}.archive-meta{font-size:.9rem;color:var(--secondary)}.archive-date,.archive-author,.archive-reading-time{display:inline-block}.archive-count{font-size:.9rem;color:var(--secondary);margin-left:.5rem;font-weight:400}.entry-draft{font-size:.8rem;color:var(--secondary);margin-left:.5rem;font-weight:400}body.dark .archive-year::before,body.dark .archive-month::before,body.dark .archive-entry::before{background:var(--border)}body.dark .archive-entry{box-shadow:0 2px 4px rgba(0,0,0,.1)}body.dark .archive-entry:hover{box-shadow:0 4px 10px rgba(0,0,0,.2)}.toggle-year{display:none;background:0 0;border:none;padding:.5rem;margin-left:.5rem;cursor:pointer;color:var(--secondary);transition:transform var(--transition-normal)}.toggle-year:hover{color:var(--primary)}.toggle-year svg{transition:transform var(--transition-normal)}.archive-year.mobile-collapsed .toggle-year svg{transform:rotate(-90deg)}@media(max-width:768px){.archive-container{padding:0 calc(var(--container-padding)/2)}.archive-year::before{left:1.5rem}.archive-year-link{padding-left:2.5rem}.archive-year-link::before{left:1rem;width:.8rem}.archive-month{margin-left:2.5rem}.toggle-year{display:inline-flex;align-items:center;justify-content:center}.archive-year.mobile-collapsed .archive-month{display:none}.archive-year-header{display:flex;align-items:center;justify-content:space-between}}:root{--chroma-bg:#F1F3F5;--chroma-text:#24292E;--chroma-keyword:#D73A49;--chroma-function:#6F42C1;--chroma-string:#032F62;--chroma-number:#005CC5;--chroma-comment:#6A737D;--chroma-operator:#D73A49;--chroma-variable:#E36209;--chroma-type:#D73A49;--chroma-constant:#005CC5;--chroma-attribute:#6F42C1;--chroma-tag:#22863A;--chroma-error:#D73A49;--chroma-line-number:#6A737D}[data-theme=dark]{--chroma-bg:#1A1E2E;--chroma-text:#E2E8F0;--chroma-keyword:#C6A0F6;--chroma-function:#8AADF4;--chroma-string:#A6DA95;--chroma-number:#F5A97F;--chroma-comment:#6E738D;--chroma-operator:#91D7E3;--chroma-variable:#F4DBD6;--chroma-type:#ED8796;--chroma-constant:#F5A97F;--chroma-attribute:#8AADF4;--chroma-tag:#C6A0F6;--chroma-error:#ED8796;--chroma-line-number:#8087A2}.chroma,.chroma .bg,.highlight,.highlight pre,.highlight pre code,.highlight pre.chroma,.highlight pre.chroma code,.post-content .highlight,.post-content .highlight pre,.post-content .highlight pre code{background-color:var(--code-block-bg)!important}.chroma,.chroma .bg,.chroma code,.highlight pre code,.post-content .highlight pre code{color:var(--chroma-text)!important}.chroma .k,.chroma .kr,.chroma .kp{color:var(--chroma-keyword)!important}.chroma .kd,.chroma .kt{color:var(--chroma-type)!important}.chroma .kn{color:var(--chroma-operator)!important}.chroma .kc{color:var(--chroma-constant)!important}.chroma .nf,.chroma .fm{color:var(--chroma-function)!important}.chroma .s,.chroma .s1,.chroma .s2,.chroma .sb,.chroma .sc,.chroma .sx,.chroma .si,.chroma .sh{color:var(--chroma-string)!important}.chroma .dl{color:var(--chroma-function)!important}.chroma .sr{color:var(--chroma-operator)!important}.chroma .m,.chroma .mi,.chroma .mf,.chroma .mh,.chroma .mb,.chroma .mo,.chroma .il{color:var(--chroma-number)!important}.chroma .c,.chroma .c1,.chroma .cm,.chroma .cp,.chroma .cs,.chroma .ch,.chroma .cpf{color:var(--chroma-comment)!important;font-style:normal!important}.chroma .o,.chroma .ow{color:var(--chroma-operator)!important;font-weight:700}.chroma .nv,.chroma .vc,.chroma .vg,.chroma .vi,.chroma .vm{color:var(--chroma-variable)!important}.chroma .nc{color:var(--chroma-type)!important}.chroma .no{color:var(--chroma-constant)!important}.chroma .na{color:var(--chroma-attribute)!important}.chroma .py{color:var(--chroma-constant)!important}.chroma .nt{color:var(--chroma-tag)!important}.chroma .err{color:var(--chroma-error)!important}.chroma .lnt,.chroma .ln{color:var(--chroma-line-number)!important}.chroma .nb,.chroma .bp{color:var(--chroma-function)!important}.chroma .nl{color:var(--chroma-function)!important}.chroma .nd{color:var(--chroma-attribute)!important;font-weight:700}.chroma .ni{color:var(--chroma-operator)!important}.chroma .ne{color:var(--chroma-constant)!important}.chroma .nn{color:var(--chroma-constant)!important}.chroma .hl{background-color:rgba(90,103,216,.1)!important}[data-theme=dark] .chroma .hl{background-color:rgba(129,230,217,.15)!important}.chroma .gd{background-color:rgba(215,58,73,.1)!important;color:var(--chroma-error)!important}[data-theme=dark] .chroma .gd{background-color:rgba(237,135,150,.15)!important}.chroma .gi{background-color:rgba(3,47,98,.1)!important;color:var(--chroma-string)!important}[data-theme=dark] .chroma .gi{background-color:rgba(166,218,149,.15)!important}.post-content .highlight,.post-content .highlight pre,.post-content .highlight pre code,.post-content pre,.post-content pre code,.markdown-body pre,.markdown-body pre code{background-color:var(--code-block-bg)!important}.post-content pre code,.markdown-body pre code{color:var(--chroma-text)!important}.post-content pre,.markdown-body pre,.post-content .highlight,.markdown-body .highlight{padding:1em;border-radius:8px;overflow-x:auto;border:1px solid var(--border-color)!important}.post-content .highlight pre,.markdown-body .highlight pre{border:none!important;padding:0}[data-theme=dark] .post-content pre,[data-theme=dark] .markdown-body pre,[data-theme=dark] .post-content .highlight,[data-theme=dark] .markdown-body .highlight{border:none!important}.post-content pre code,.markdown-body pre code{padding:0;background:0 0!important;border-radius:0}.chroma *,.chroma code *,.post-content pre code *,.markdown-body pre code *,.highlight code *{font-style:normal!important}.chroma .ge,.chroma .ge *{font-style:normal!important}#giscus-container{margin-top:3rem;margin-bottom:2rem;padding:2rem;background:var(--bg-card);border-radius:12px;border:1px solid var(--border-color);box-shadow:var(--shadow-sm);transition:all var(--transition-normal)}#giscus-container:hover{box-shadow:var(--shadow-hover)}#giscus-container::before{content:"💬 评论";display:block;font-size:1.5rem;font-weight:600;color:var(--text-head);margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:2px solid var(--accent);font-family:var(--font-ui)}#giscus-container.loading::before{display:none}.giscus-frame{width:100%;min-height:400px;border:none;border-radius:8px;background:0 0}#giscus-container.loading{position:relative;min-height:200px}#giscus-container.loading::after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40px;height:40px;border:3px solid var(--border-color);border-top:3px solid var(--accent);border-radius:50%;animation:spin 1s linear infinite}#giscus-container:not(.loading)::after{display:none!important}#giscus-container iframe{display:block!important;visibility:visible!important;opacity:1!important}@keyframes spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}#giscus-container.error{text-align:center;padding:2rem;color:var(--text-meta)}#giscus-container.error::before{content:"❌ 评论加载失败";color:#e53e3e;border-bottom-color:#e53e3e}@media(max-width:768px){#giscus-container{margin-top:2rem;margin-bottom:1rem;padding:1rem;border-radius:8px}#giscus-container::before{font-size:1.25rem;margin-bottom:1rem}}[data-theme=dark] #giscus-container{background:var(--bg-card);border-color:var(--border-color)}[data-theme=dark] #giscus-container::before{color:var(--text-head);border-bottom-color:var(--accent)}.post-content-wrapper{margin-bottom:2rem}.post-content-wrapper+#giscus-container{margin-top:2rem}.three-column-layout #giscus-container{grid-column:1/-1;margin-top:2rem}@media print{#giscus-container{display:none!important}}@media(prefers-reduced-motion:reduce){#giscus-container,#giscus-container::before{transition:none}#giscus-container.loading::after{animation:none;border-top-color:var(--border-color)}}@media(prefers-contrast:high){#giscus-container{border-width:2px}#giscus-container::before{border-bottom-width:3px}}#giscus-container:focus-within{outline:2px solid var(--accent);outline-offset:2px}#giscus-container.loading{background:linear-gradient(90deg,var(--bg-card) 25%,var(--accent-dim) 50%,var(--bg-card) 75%);background-size:200% 100%;animation:loading-shimmer 1.5s infinite}@keyframes loading-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}[data-theme=dark] #giscus-container.loading{background:linear-gradient(90deg,var(--bg-card) 25%,rgba(129,230,217,.1) 50%,var(--bg-card) 75%);background-size:200% 100%}.comments-count{display:inline-flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-meta);margin-bottom:1rem}.comments-count::before{content:"💬";font-size:1rem}.comments-prompt{text-align:center;color:var(--text-meta);font-style:italic;margin:1rem 0;padding:1rem;background:var(--accent-dim);border-radius:8px;border-left:4px solid var(--accent)}[data-theme=dark] .comments-prompt{background:rgba(129,230,217,.15);border-left-color:var(--accent)}@font-face{font-family:source serif pro;src:url(/fonts/SourceSerifPro-Regular.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:maple mono;src:url(/fonts/MapleMonoNormalNL-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:pingfang sc;src:url(/fonts/PingFangSC-Regular.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}:root{--font-article:"Source Serif Pro", "PingFang SC", "Noto Serif CJK SC", "Songti SC",
        serif;--font-ui:"Source Serif Pro", "PingFang SC", -apple-system, BlinkMacSystemFont,
        "Segoe UI", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-code:"Maple Mono", "PingFang SC", "JetBrains Mono", "Fira Code", "Consolas",
        "Courier New", monospace}body,header,footer,.sidebar,.menu,.breadcrumbs,.post-meta{font-family:var(--font-ui)!important}.post-content,.post-title,.post-header h1,.post-content h2,.post-content h3{font-family:var(--font-article)}.post-content code,.post-content pre code,.post-content pre{font-family:var(--font-code)}@import "_variables.css";@import "_mixins.css";@import "_page-headers.css";@import "_cards.css";@import "archives-clean.css";@import "code-highlight.css";*{box-sizing:border-box}body{background-color:var(--bg-body);color:var(--text-main);transition:background-color var(--transition-normal),color var(--transition-normal);line-height:1.8;font-family:var(--font-ui);margin:0;padding:0}body{scrollbar-width:none;-ms-overflow-style:none}body::-webkit-scrollbar{display:none}.nav{position:fixed;top:0;left:0;right:0;z-index:100;background-color:var(--bg-nav-blur,rgba(247,248,249,.95));border-bottom:1px solid var(--border-color);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:background-color var(--transition-normal),border-bottom var(--transition-normal)}[data-theme=dark] .nav{--bg-nav-blur:rgba(25, 32, 42, 0.95);border-bottom:1px solid var(--border-color)}.nav a{color:var(--text-head)}.nav a.active{color:var(--accent);border-bottom:2px solid var(--accent)}.nav a:hover{color:var(--accent)}.main{padding-top:60px}a{color:var(--accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--accent-hover)}.button-primary,.btn-primary{background-color:var(--accent);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:.9em;font-weight:500;text-decoration:none;transition:all var(--transition-normal);display:inline-block}.button-primary:hover,.btn-primary:hover{background-color:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,.1)}.button-secondary,.btn-secondary{background-color:initial;color:var(--accent);border:1px solid var(--accent);padding:8px 16px;border-radius:6px;font-size:.9em;font-weight:500;text-decoration:none;transition:all var(--transition-normal);display:inline-block}.button-secondary:hover,.btn-secondary:hover{background-color:var(--accent);color:#fff}.post-content p code,.post-content li code,.post-content blockquote code,.post-content table code:not(.chroma *){background-color:var(--accent-dim);color:var(--accent);padding:.2em .4em;border-radius:4px;font-size:.9em;font-family:var(--font-code);border:none;box-shadow:none;letter-spacing:.01em;word-wrap:break-word;margin:0 .1em;vertical-align:middle;position:relative;top:-.05em;line-height:1.7}.post-content li:has(input[type=checkbox]:checked){text-decoration:line-through}.post-content ul:has(input[type=checkbox]){list-style:none;padding-left:0}.post-content ul:has(input[type=checkbox]) li{list-style:none}.post-content li input[type=checkbox]{appearance:none;width:1.3rem;height:1.3rem;margin:0 .5em 0 0;padding:0;border:2px solid #ccc;border-radius:4px;background:#fff;cursor:pointer;position:relative;top:.2em;transition:all var(--transition-fast)}.post-content li input[type=checkbox]:checked{border-color:var(--accent)!important;background-color:var(--accent)!important}.post-content li input[type=checkbox]:checked::after{content:'';position:absolute;left:calc(50% - 3px);top:calc(50% - 6px);width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}body.dark .post-content li input[type=checkbox]{border-color:#444;background:#1d1e20}[data-theme=dark] .post-content li input[type=checkbox]:checked{border-color:var(--accent)!important;background-color:var(--accent)!important}body.dark .post-content li:has(input[type=checkbox]:checked){color:#888}.list{background-color:var(--bg-body)!important}body.dark b,body.dark strong{font-size:1.05em;text-shadow:0 0 2px rgba(255,255,255,.15)}h1{font-size:clamp(2rem,5vw,3.5rem)}h2{font-size:clamp(1.75rem,4vw,2.75rem)}h3{font-size:clamp(1.5rem,3.5vw,2.25rem)}h4{font-size:clamp(1.25rem,3vw,1.75rem)}h5{font-size:clamp(1.1rem,2.5vw,1.5rem)}h6{font-size:clamp(1rem,2vw,1.25rem)}.post-content{font-size:clamp(1rem,1.2vw,1.125rem)}.entry-content{font-size:clamp(.95rem,1.1vw,1.05rem)}.post-content h2{position:relative;padding-left:16px}.post-content h2::before{content:"";position:absolute;left:0;top:10%;height:80%;width:4px;background:var(--accent);border-radius:2px}::selection{background:rgba(90,103,216,.3);color:inherit}[data-theme=dark] ::selection{background:rgba(129,230,217,.4);color:#fff}.toc-container{background-color:var(--bg-body);border-left:2px solid var(--border-color)}.toc-link.active{color:var(--accent)}.post-tags a{background-color:var(--bg-card)!important;border:1px solid var(--border-color)!important;color:var(--text-main)!important}.post-tags a:hover{background-color:var(--accent)!important;color:var(--bg-card)!important;border-color:var(--accent)!important}[data-theme=dark] .post-tags a:hover{color:var(--bg-body)!important}.paginav{background-color:var(--bg-card)!important;border:1px solid var(--border-color)!important;border-radius:12px!important;padding:1rem!important;margin-top:2rem!important}.paginav a{background-color:initial!important;border:none!important;color:var(--text-main)!important}.paginav a:hover{background-color:var(--accent-dim)!important;color:var(--accent)!important;text-decoration:none!important}.paginav a:hover span:not(.title){text-decoration:none!important;box-shadow:none!important}.paginav .title{color:var(--text-meta)!important}@media(max-width:768px){.main{padding-top:50px}h1,h2,h3,h4,h5,h6{margin-top:1.5em;margin-bottom:.8em}.post-content h2{padding-left:12px}.post-content h2::before{width:3px}}.markdown-body h1,.markdown-body h2,.markdown-body h3,.post-content h1,.post-content h2,.post-content h3{color:var(--text-head);font-weight:700;margin-top:2em;margin-bottom:1em;line-height:1.3;letter-spacing:-.02em}.markdown-body h2,.post-content h2{position:relative;padding-left:16px}.markdown-body h2::before,.post-content h2::before{content:"";position:absolute;left:0;top:10%;height:80%;width:4px;background:var(--accent);border-radius:2px}.markdown-body a,.post-content a{color:var(--accent);text-decoration:none;border-bottom:1px solid transparent;transition:border-bottom .3s ease;font-weight:500}.markdown-body a:hover,.post-content a:hover{border-bottom:1px solid var(--accent)}.markdown-body blockquote,.post-content blockquote{margin:1.5em 0;padding:1em 1.5em;background:var(--accent-dim);border-left:4px solid var(--accent);border-radius:4px;color:var(--text-main);font-style:normal}.markdown-body pre,.post-content pre,.markdown-body .highlight,.post-content .highlight{background-color:var(--code-block-bg);border-radius:8px;overflow-x:auto;padding:1em;margin:1.5em 0;border:1px solid var(--border-color)!important}.markdown-body .highlight pre,.post-content .highlight pre{border:none!important;padding:0;margin:0}[data-theme=dark] .markdown-body pre,[data-theme=dark] .post-content pre,[data-theme=dark] .markdown-body .highlight,[data-theme=dark] .post-content .highlight{border:none!important}.markdown-body pre code,.post-content pre code{font-style:normal!important;font-family:fira code,maple mono,monospace;font-size:.9em;line-height:1.6;color:inherit}.markdown-body code,.post-content code{background-color:var(--accent-dim);color:var(--accent);padding:.2em .4em;border-radius:4px;font-family:fira code,maple mono,monospace;font-size:.9em;font-style:normal!important}.markdown-body ul li::marker,.post-content ul li::marker{color:var(--accent)}.markdown-body table,.post-content table{width:100%;border-collapse:collapse;margin:2em 0}.markdown-body th,.post-content th{text-align:left;border-bottom:2px solid var(--border-color);padding:12px;color:var(--text-head)}.markdown-body td,.post-content td{border-bottom:1px solid var(--border-color);padding:12px}.markdown-body hr,.post-content hr{height:1px;border:0;background-color:var(--border-color);margin:4em auto;width:20%}body{background-color:var(--bg-body);color:var(--text-main);transition:background-color .3s ease,color .3s ease;line-height:1.8}::selection{background:rgba(90,103,216,.3);color:inherit}[data-theme=dark] ::selection{background:rgba(129,230,217,.4);color:#fff}.markdown-body img,.post-content img{max-width:85%;height:auto;border-radius:8px;box-shadow:var(--shadow-sm);transition:all .3s ease;display:block;margin:2em auto;border:1px solid var(--border-color);background-color:var(--bg-card);padding:4px}.markdown-body img:hover,.post-content img:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.markdown-body img[width],.post-content img[width]{max-width:85%}.markdown-body img[src*="#center"],.post-content img[src*="#center"]{display:block;margin:2em auto}.markdown-body figure img,.post-content figure img{max-width:100%;margin:0;padding:0}.markdown-body figure,.post-content figure{margin:2em auto;text-align:center;max-width:85%}.markdown-body figcaption,.post-content figcaption{margin-top:.75em;font-size:.9em;color:var(--text-meta);font-style:italic;text-align:center;line-height:1.5}@media(max-width:768px){.markdown-body img,.post-content img{max-width:100%;margin:1.5em auto;padding:2px}.markdown-body figure,.post-content figure{max-width:100%;margin:1.5em auto}}.markdown-body strong,.markdown-body b,.post-content strong,.post-content b{color:var(--text-head);font-weight:600}.markdown-body u,.post-content u{text-decoration-color:var(--accent);text-decoration-thickness:2px}.markdown-body del,.markdown-body s,.post-content del,.post-content s{color:var(--text-meta);text-decoration-color:var(--text-meta)}.markdown-body mark,.post-content mark{background-color:var(--accent);color:#fff;padding:.2em .4em;border-radius:3px;font-weight:500}[data-theme=dark] .markdown-body mark,[data-theme=dark] .post-content mark{background-color:var(--accent);color:#1a202c}@media(max-width:768px){.markdown-body h1,.markdown-body h2,.markdown-body h3,.post-content h1,.post-content h2,.post-content h3{margin-top:1.5em;margin-bottom:.8em}.markdown-body h2,.post-content h2{padding-left:12px}.markdown-body h2::before,.post-content h2::before{width:3px}.markdown-body blockquote,.post-content blockquote{padding:.8em 1.2em;margin:1em 0}.markdown-body pre,.post-content pre{padding:1em}}.home .post-entry .entry-footer .post-meta{display:none}.home .post-entry .entry-footer .entry-date{font-size:12px;color:var(--secondary);opacity:.7}.home .post-entry .entry-footer{display:flex;justify-content:flex-start;margin-top:6px;margin-bottom:6px}.list .post-entry .entry-footer .post-meta{display:none}.list .post-entry .entry-footer .entry-date{font-size:12px;color:var(--secondary);opacity:.7}.list .post-entry .entry-footer{display:flex;justify-content:flex-start;margin-top:6px;margin-bottom:6px}.tag-entry .post-entry .entry-footer .post-meta{display:none}.tag-entry .post-entry .entry-footer .entry-date{font-size:12px;color:var(--secondary);opacity:.7}.tag-entry .post-entry .entry-footer{display:flex;justify-content:flex-start;margin-top:6px;margin-bottom:6px}.category-entry .post-entry .entry-footer .post-meta{display:none}.category-entry .post-entry .entry-footer .entry-date{font-size:12px;color:var(--secondary);opacity:.7}.category-entry .post-entry .entry-footer{display:flex;justify-content:flex-start;margin-top:6px;margin-bottom:6px}.archive-entry .archive-meta{display:none}.archive-entry .archive-date{font-size:12px;color:var(--secondary);opacity:.7;position:absolute;right:1.5rem;top:1rem}.archive-entry{position:relative;padding-right:100px}@media(max-width:768px){.home .post-entry .entry-footer .entry-date,.list .post-entry .entry-footer .entry-date,.tag-entry .post-entry .entry-footer .entry-date,.category-entry .post-entry .entry-footer .entry-date{font-size:11px}.archive-entry{padding-right:80px}.archive-entry .archive-date{font-size:11px;right:1rem;top:1rem}}@media(min-width:1300px){body:has(.three-column-layout) .main{max-width:1500px!important;margin:0 auto;padding-top:80px!important}.three-column-layout{display:grid;grid-template-columns:340px 1fr 280px;grid-template-rows:auto;gap:2rem;padding:0 1rem;margin:0 auto;align-items:start}.three-column-layout .toc-sidebar{position:sticky;top:calc(60px + 2rem);height:fit-content;max-height:calc(100vh - 60px - 2rem)}.three-column-layout .toc-sidebar .toc{height:fit-content;max-height:calc(100vh - 60px - 2rem);overflow-y:auto;font-size:.95em;background-color:var(--bg-body);border-radius:12px;box-shadow:var(--shadow-sm);padding:1em;border-left:2px solid var(--border-color)}.three-column-layout .toc-sidebar .toc .details{font-size:1.1em;font-weight:600;color:var(--text-head);margin-bottom:.5rem;display:block;text-decoration:none!important;border:none!important;box-shadow:none!important;list-style:none!important}.three-column-layout .toc-sidebar .toc a{display:block;padding:4px 12px;color:var(--text-main);text-decoration:none;transition:all var(--transition-fast);position:relative;margin:0;border:none!important;box-shadow:none!important}.three-column-layout .toc-sidebar .toc ul{margin:0;padding-left:0;list-style:none!important}.three-column-layout .toc-sidebar .toc a{padding-left:12px;padding-right:12px}.three-column-layout .toc-sidebar .toc a{font-weight:500;font-size:.95em}.three-column-layout .toc-sidebar .toc>ul>li>a,.three-column-layout .toc-sidebar .toc .inner>ul>li>a{padding-left:0}.three-column-layout .toc-sidebar .toc li li>a,.three-column-layout .toc-sidebar .toc .inner ul ul>li>a{padding-left:1rem}.three-column-layout .toc-sidebar .toc li li li>a,.three-column-layout .toc-sidebar .toc .inner ul ul ul>li>a{padding-left:2rem}.three-column-layout .toc-sidebar .toc li li li li>a,.three-column-layout .toc-sidebar .toc .inner ul ul ul ul>li>a{padding-left:3rem}.three-column-layout .toc-sidebar .toc li li li li li>a,.three-column-layout .toc-sidebar .toc .inner ul ul ul ul ul>li>a{padding-left:4rem}.three-column-layout .toc-sidebar .toc li li li li li li>a,.three-column-layout .toc-sidebar .toc .inner ul ul ul ul ul ul>li>a{padding-left:5rem}.three-column-layout .toc-sidebar .toc a:hover{color:var(--accent);text-decoration:none}.three-column-layout .post-content-wrapper{min-width:0;line-height:1.7;font-size:1.05em}.three-column-layout .recent-posts-sidebar{position:sticky;top:calc(60px + 2rem);height:fit-content;max-height:calc(100vh - 60px - 2rem);overflow-y:auto;font-size:.95em;background-color:var(--bg-body);border-radius:12px;box-shadow:var(--shadow-sm);padding:1em;border:1px solid var(--border-color)}[data-theme=dark] .three-column-layout .toc-sidebar .toc,[data-theme=dark] .three-column-layout .recent-posts-sidebar{background-color:var(--bg-card);box-shadow:var(--shadow-sm)}.three-column-layout .recent-posts-sidebar{padding:20px}.three-column-layout .recent-posts-sidebar h4{margin-top:0;margin-bottom:1rem;font-size:1.1em;color:var(--text-head)}.three-column-layout .recent-posts-sidebar .latest-posts{list-style:none;padding:0;margin:0}.three-column-layout .recent-posts-sidebar .latest-posts li{padding:10px 0;border-bottom:1px solid var(--border-color)}.three-column-layout .recent-posts-sidebar .latest-posts li:last-child{border-bottom:none}.three-column-layout .recent-posts-sidebar .latest-posts a{display:block;color:var(--text-head);font-weight:500;text-decoration:none;transition:all var(--transition-fast)}.three-column-layout .recent-posts-sidebar .latest-posts a:hover{color:var(--accent)}.three-column-layout .recent-posts-sidebar .post-date{display:block;font-size:.8em;color:var(--text-meta);margin-top:4px}.three-column-layout .recent-posts-sidebar .latest-posts li:hover{background-color:initial;margin:0;padding:10px 0;border-radius:0}.three-column-layout .recent-posts-sidebar:hover{transform:none;box-shadow:var(--shadow-sm);border-color:var(--border-color)}[data-theme=dark] .three-column-layout .recent-posts-sidebar:hover{box-shadow:none;border-color:var(--border-color)}}@media(max-width:1299px){.three-column-layout{display:block}.toc-sidebar,.recent-posts-sidebar{display:none}}