@import 'https://fonts.googleapis.com/css2?family=JetBrains+Mono:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Noto+Sans+SC:wght@400;500;700&display=swap';:root{--mono:"JetBrains Mono", "Fira Code", "Menlo", "Consolas", monospace;--cjk:"Noto Sans SC", -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;--accent:#50fa7b;--code-bg:#282a36;--code-fg:#f8f8f2}html{font-size:13px!important}html,body,.wrapper,.post,.post__content,.sidebar,p,li,a,span,div,code,pre{font-family:var(--mono),var(--cjk)}h1,h2,h3,h4,h5,h6,.sidebar__introduction-title,.sidebar__introduction-title a,.post h1,.post h2,.post h3{font-family:var(--mono),var(--cjk);font-weight:600;letter-spacing:0!important}.sidebar{border-right:none!important;margin-right:0!important}.sidebar__introduction-profileimage{width:200px!important;height:200px!important;border-radius:50%;border:2px solid rgba(128,128,128,.15);transition:transform .3s ease}.sidebar__introduction-profileimage:hover{transform:scale(1.04)}.sidebar__introduction-title{text-transform:none!important;letter-spacing:0!important;margin:.8em 1em!important}.sidebar__introduction-title a,.sidebar__introduction-title h1 a{font-size:1.7rem!important;text-transform:none!important;letter-spacing:0!important;line-height:1.3;display:inline-block}.sidebar__introduction-description{margin:0 1.4em!important}.sidebar__introduction-description p{font-size:1.05rem!important;line-height:1.9!important;opacity:.92;text-align:center}.intro-skills{list-style:none!important;padding:0!important;margin:0!important;display:flex;flex-direction:column;gap:6px;align-items:center}.intro-skills li{font-family:var(--mono)!important;font-size:.95rem!important;padding:4px 12px;border-radius:999px;background:rgba(128,128,128,8%);border:1px solid rgba(128,128,128,.15);color:inherit;opacity:.9;transition:all .2s ease;white-space:nowrap;letter-spacing:.3px;line-height:1.5}.intro-skills li:hover{background:rgba(80,250,123,8%);border-color:rgba(80,250,123,.3);opacity:1;transform:translateY(-1px)}.sidebar__list-item{padding:0 10px!important}.sidebar__list-item i{font-size:1.5rem!important}.footer__sidebar,.sidebar .footer{border-top:1px dashed rgba(128,128,128,.2)!important;padding-top:12px}.footer__copyright{white-space:nowrap;font-size:.85rem;letter-spacing:0;opacity:.75}.footer__copyright p{display:inline;margin:0}.navbar__list-item a{font-family:var(--mono)!important;font-size:1.1rem!important;letter-spacing:.5px}.archive-year{font-family:var(--mono);font-size:2.1rem!important;font-weight:700;margin:1.8em 0 .6em;padding-bottom:8px;border-bottom:1px dashed rgba(128,128,128,.25);opacity:.95}.archive-list{list-style:none;padding:0;margin:0 0 1.8em}.archive-item{padding:18px 0;border-bottom:1px solid rgba(128,128,128,.1)}.archive-item:last-child{border-bottom:none}.archive-item__header{display:flex;align-items:baseline;gap:18px;margin-bottom:8px;flex-wrap:wrap}.archive-item__date{font-family:var(--mono);color:#888;flex-shrink:0;width:72px;font-size:1rem;font-variant-numeric:tabular-nums}.archive-item__title{flex:1;min-width:0}.archive-item__title a{font-size:1.75rem!important;font-weight:600;text-decoration:none;border-bottom:1px dotted transparent;transition:all .2s ease;line-height:1.4}.archive-item__title a:hover{border-bottom-color:initial;opacity:.85}.archive-item__meta{font-size:.95rem;color:#888;font-family:var(--mono);opacity:.85;flex-shrink:0;font-variant-numeric:tabular-nums}.archive-item__summary{font-size:1.15rem;line-height:1.8;color:#666;margin:10px 0 0 90px;opacity:.88}[data-theme=dark] .archive-item__summary{color:#b0b0b0}.post h1{font-size:2.6rem!important;margin-top:.4em;line-height:1.3}.post h2{font-size:1.8rem!important;margin-top:1.4em}.post h3{font-size:1.4rem!important}.post__content p,.post__content li{font-size:1.1rem!important;line-height:1.9!important}.post__content figure{margin:1.8em auto;text-align:center;max-width:100%}.post__content figure.small{max-width:50%}.post__content figure img,.post__content figure video{display:block;margin:0 auto;width:100%;height:auto;border-radius:6px;border:1px solid rgba(128,128,128,.15)}.post__content figure video{background:#000}.post__meta{font-family:var(--mono);font-size:1rem!important;opacity:.85}.post__meta-item{margin-right:1.4em;font-size:1rem!important}.post__meta-text{font-size:1rem!important}pre,.highlight pre{position:relative;background:var(--code-bg)!important;color:var(--code-fg)!important;padding:16px 18px!important;border-radius:8px!important;overflow-x:auto;font-size:.95rem!important;line-height:1.65;border:1px solid rgba(255,255,255,8%);box-shadow:0 2px 10px rgba(0,0,0,.1)}pre code{background:0 0!important;color:inherit!important;padding:0!important;font-family:var(--mono)!important}:not(pre)>code{background:rgba(80,250,123,.1);color:#50fa7b;padding:2px 6px;border-radius:4px;font-size:.92em;font-family:var(--mono)!important}[data-theme=dark] :not(pre)>code{background:rgba(80,250,123,.12)}.code-copy-btn{position:absolute;top:8px;right:8px;padding:4px 10px;font-size:.8rem;font-family:var(--mono);color:#aaa;background:rgba(255,255,255,8%);border:1px solid rgba(255,255,255,.12);border-radius:4px;cursor:pointer;opacity:0;transition:all .2s ease;z-index:2}pre:hover .code-copy-btn{opacity:1}.code-copy-btn:hover{color:#50fa7b;background:rgba(80,250,123,.1);border-color:rgba(80,250,123,.3)}.code-copy-btn.copied{color:#50fa7b;border-color:rgba(80,250,123,.4)}@media(min-width:1200px){body.body:has(.floating-toc) .post{padding-right:220px}}.floating-toc{position:fixed;right:20px;top:90px;width:180px;max-height:calc(100vh - 180px);padding:6px 0 6px 14px;font-family:var(--mono);font-size:.88rem;background:0 0;border:none;border-left:1px dashed rgba(128,128,128,.25);border-radius:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;overflow-y:auto;z-index:50;opacity:.6;transition:opacity .2s ease}.floating-toc:hover{opacity:1}.floating-toc__header{display:flex;align-items:center;gap:6px;padding-bottom:6px;margin-bottom:6px;border-bottom:1px dashed rgba(128,128,128,.18);font-weight:500;font-size:.78rem;text-transform:uppercase;letter-spacing:1px;opacity:.55}.floating-toc__header i{font-size:.72rem;opacity:.6}.floating-toc__nav ul{list-style:none;padding-left:0;margin:0}.floating-toc__nav ul ul{padding-left:14px;margin-top:4px}.floating-toc__nav li{line-height:1.5;margin:4px 0}.floating-toc__nav a{display:block;padding:2px 0;color:inherit;text-decoration:none;opacity:.6;transition:all .15s ease;word-break:break-word;font-size:.88rem}.floating-toc__nav a:hover{opacity:1;color:#50fa7b}.floating-toc__nav a.toc-active{opacity:1;color:#50fa7b;font-weight:500}.floating-toc::-webkit-scrollbar{width:4px}.floating-toc::-webkit-scrollbar-track{background:0 0}.floating-toc::-webkit-scrollbar-thumb{background:rgba(128,128,128,.3);border-radius:2px}@media(max-width:1100px){.floating-toc{display:none}}.visit-counter{position:fixed;bottom:18px;right:18px;padding:6px 12px;font-family:var(--mono);font-size:.82rem;background:rgba(128,128,128,8%);color:inherit;border:1px solid rgba(128,128,128,.18);border-radius:6px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:99;opacity:.55;transition:opacity .3s ease,background .3s ease}.visit-counter:hover{opacity:.95;background:rgba(128,128,128,.14)}.visit-counter i{color:inherit;opacity:.65;margin-right:6px;font-size:.82rem}.visit-counter .count{font-weight:600;opacity:.9}@media(max-width:768px){.visit-counter{bottom:10px;right:10px;font-size:.75rem;padding:5px 9px}}@media(max-width:768px){.sidebar__introduction-profileimage{width:150px!important;height:150px!important}.archive-item__meta{width:100%;margin-left:90px}.archive-item__summary{margin-left:0}.archive-item__title a{font-size:1.4rem!important}.post h1{font-size:1.9rem!important}.post h2{font-size:1.4rem!important}.post__content figure.small{max-width:72%}}