:root{--color-primary:#416689;--color-primary-hover:#5A7B9C;--color-primary-dark:#2F4A65;--color-primary-tint:#EBF1F6;--color-primary-bg:rgba(65, 102, 137, 0.06);--color-primary-bg-hover:rgba(65, 102, 137, 0.05);--color-primary-border:rgba(65, 102, 137, 0.2);--color-primary-accent:rgba(65, 102, 137, 0.5);--color-primary-90:rgba(65, 102, 137, 0.9);--color-primary-strong:rgba(65, 102, 137, 0.98);--color-on-primary:#fff;--color-on-primary-muted:rgba(238, 238, 238, 0.55);--color-on-primary-hover:rgba(255, 255, 255, 0.85);--color-on-primary-border:rgba(255, 255, 255, 0.25);--color-on-primary-overlay:rgba(255, 255, 255, 0.15);--color-on-primary-overlay-hover:rgba(255, 255, 255, 0.2);--color-on-primary-overlay-active:rgba(255, 255, 255, 0.3);--color-on-primary-scrolled:rgba(255, 255, 255, 0.8);--color-bg:#FFFFFF;--color-bg-alt:#F8F9FA;--color-bg-warning:#FFF9E8;--color-zebra:#FFFFFF;--color-border:#E9E9E9;--color-border-light:#F0F0F0;--color-border-code:#e1e5e9;--color-divider:#EEE;--color-text:#555;--color-text-heading:#333;--color-text-strong:#444;--color-text-muted:#999;--color-text-secondary:#666;--color-text-link:#416689;--color-black:#000;--color-success:#28a745;--color-error:#8A1F11;--color-error-bg:#FBE3E4;--color-error-text:#C00;--color-inline-code:#B94A48;--color-code-bg:#f6f8fa;--color-code-border:#eaecef;--color-code-text:#24292f;--color-code-comment:#6a737d;--color-code-muted:#6e7781;--color-code-keyword:#d73a49;--color-code-string:#032f62;--color-code-number:#005cc5;--color-scrollbar-track:#f1f3f4;--color-scrollbar-thumb:#c1c8cd;--color-scrollbar-thumb-hover:#a8b2ba;--shadow-card:0 1px 2px rgba(0, 0, 0, 0.03);--font-sans:"Noto Sans SC",sans-serif;--font-mono:"Cascadia Code",Menlo,Monaco,Consolas,"Lucida Console","Courier New",monospace}*,::after,::before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body{background-color:var(--color-bg);color:var(--color-text-strong);font-family:var(--font-sans);font-size:87.5%;display:flex;flex-direction:column;min-height:100vh;margin:0}a{color:var(--color-primary);text-decoration:none}a:active,a:hover{color:var(--color-text-strong)}pre{position:relative;margin:1.5em 0;padding:0;border:1px solid var(--color-border-code);background-color:var(--color-bg);overflow:hidden}.code-header{position:relative;top:0;left:0;right:0;height:40px;line-height:40px;padding:0 16px;font-size:.875em;font-weight:600;color:var(--color-on-primary);background-color:var(--color-primary);z-index:1;border-bottom:1px solid var(--color-primary-dark);display:flex;align-items:center;justify-content:space-between}.copy-button{position:relative;background-color:var(--color-on-primary-overlay-hover);color:var(--color-on-primary);border:none;padding:4px 12px;cursor:pointer;font-size:.75em;line-height:1.4;transition:background-color .3s cubic-bezier(.4, 0, .2, 1);font-family:var(--font-sans);font-weight:500}.copy-button:hover{background-color:var(--color-on-primary-overlay-active)}.copy-button.copied{background-color:var(--color-success)}.copy-button.copied::after{content:"已复制";position:absolute;top:-30px;right:0;background-color:var(--color-success);color:var(--color-on-primary);padding:4px 8px;font-size:.75em;white-space:nowrap;animation:fadeOut 1.5s ease-in-out}@keyframes fadeOut{0%{opacity:1}70%{opacity:1}100%{opacity:0}}.code-content{max-height:500px;overflow:auto;background-color:inherit;counter-reset:line-counter}.code-content::-webkit-scrollbar{width:8px;height:8px}.code-content::-webkit-scrollbar-track{background:var(--color-scrollbar-track)}.code-content::-webkit-scrollbar-thumb{background:var(--color-scrollbar-thumb)}.code-content::-webkit-scrollbar-thumb:hover{background:var(--color-scrollbar-thumb-hover)}pre code{display:block;font-family:var(--font-mono);font-size:.875em;padding:0;color:var(--color-code-text);background:0 0;line-height:1.5;white-space:pre;border:none;border-radius:0}.code-line{padding:0 16px;padding-left:60px;position:relative;min-height:1.5em;transition:background-color .15s cubic-bezier(.4, 0, .2, 1);display:block}.code-line:hover{background-color:var(--color-primary-bg-hover)}.code-line::before{counter-increment:line-counter;content:counter(line-counter);position:absolute;left:0;top:0;bottom:0;color:var(--color-code-muted);text-align:right;width:48px;padding-right:12px;border-right:1px solid var(--color-code-border);user-select:none;pointer-events:none;background-color:var(--color-code-bg);font-size:.8125em;font-weight:500;height:100%;display:flex;align-items:center;justify-content:flex-end;line-height:1.5}.h-keyword{color:var(--color-code-keyword);font-weight:600}.h-string{color:var(--color-code-string)}.h-comment{color:var(--color-code-comment);font-style:italic}.h-number{color:var(--color-code-number)}code{font-family:var(--font-mono);font-size:.92857em;padding:2px 4px;color:var(--color-inline-code);background:var(--color-divider)}blockquote{margin:1em 0;padding:10px 15px;border-left:8px solid var(--color-primary);background-color:var(--color-primary-tint);color:var(--color-text-strong);font-style:normal}input[type=email],input[type=password],input[type=text],input[type=url],textarea{padding:8px 12px;border:1px solid var(--color-border);width:100%;border-radius:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;font-family:var(--font-sans);font-size:1em;transition:border-color .3s cubic-bezier(.4, 0, .2, 1)}input[type=email]:focus,input[type=password]:focus,input[type=text]:focus,input[type=url]:focus,textarea:focus{outline:0;border-color:var(--color-primary)}textarea{resize:vertical}.comment-content a,.post-content a,.post-meta a{border-bottom:1px solid var(--color-divider)}.comment-content a:hover,.post-content a:hover,.post-meta a:hover{border-bottom-color:transparent}.widget-list li a{border-bottom:none}.browsehappy{padding:8px 0;background:var(--color-error-bg);color:var(--color-error);text-align:center}.browsehappy a{color:var(--color-error);text-decoration:underline;font-weight:700}#header{padding-top:25px;border-bottom:1px solid var(--color-divider);background:var(--color-primary-strong)}#logo{color:var(--color-on-primary);font-size:2.5em}.description{margin:.5em 0 0;color:var(--color-on-primary-muted);font-style:italic}#nav-menu{margin:15px 0 0;padding:0}#nav-menu a{display:block;margin-right:-1px;padding:0 20px;border:1px solid var(--color-on-primary-border);border-bottom:none;height:32px;line-height:32px;color:var(--color-on-primary-hover);float:left;transition:background-color .3s cubic-bezier(.4, 0, .2, 1),color .3s cubic-bezier(.4, 0, .2, 1)}#nav-menu .current,#nav-menu a:hover{background:var(--color-on-primary-overlay);color:var(--color-on-primary)}#search{position:relative;margin-top:15px}#search input{padding-right:30px}#search button{position:absolute;right:4px;top:2px;border:none;padding:0;width:24px;height:24px;background:0 0;color:var(--color-text-muted);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .3s cubic-bezier(.4, 0, .2, 1)}#search button:hover{color:var(--color-primary)}.post{padding:20px;border:1px solid var(--color-border);border-left:3px solid var(--color-primary-accent);background:var(--color-bg);margin-top:20px}.post:not(.single){transition:border-left-color .4s cubic-bezier(.25, .8, .25, 1)}.post:not(.single):hover{border-left-color:var(--color-primary)}.post-header{margin-bottom:20px}.post-title{margin:0 0 12px 0;font-size:1.35em;line-height:1.4}.post-title a{color:var(--color-text-heading);text-decoration:none}.post:not(.single) .post-title a{transition:color .3s cubic-bezier(.4, 0, .2, 1)}.post:not(.single) .post-title a:hover{color:var(--color-primary)}.post-meta{margin:0;padding:0;display:flex;flex-wrap:wrap;gap:16px;color:var(--color-text-muted);font-size:.875em}.post-meta li{display:inline-flex;align-items:center;gap:5px;margin:0;padding:0;border:none}.post-meta i,.post-meta svg{flex-shrink:0;opacity:.7}.post:not(.single) .post-meta i,.post:not(.single) .post-meta svg{transition:opacity .3s cubic-bezier(.4, 0, .2, 1)}.post:not(.single) .post-meta li:hover i,.post:not(.single) .post-meta li:hover svg{opacity:1}.post-meta a{color:var(--color-text-secondary);text-decoration:none;border-bottom:1px solid transparent;transition:color .3s cubic-bezier(.4, 0, .2, 1),border-bottom-color .25s cubic-bezier(.4, 0, .2, 1)}.post-meta a:hover{color:var(--color-primary);border-bottom-color:var(--color-primary)}.post-content{margin:20px 0;color:var(--color-text);line-height:1.8;font-size:.95em}.post .tags{clear:both;margin:20px 0 0 0;padding:20px 0 0 0;border-top:1px solid var(--color-border-light);color:var(--color-text-secondary);font-size:.9em}.post-footer{margin-top:20px;padding-top:20px;border-top:1px solid var(--color-border-light);text-align:right}.post-near{margin:20px 0;padding:0;color:var(--color-text-muted);display:flex;justify-content:space-between;flex-wrap:wrap;gap:25px}.post-near-item{flex:1;min-width:220px;padding:20px;border:1px solid var(--color-border);background:var(--color-bg);transition:border-color .3s cubic-bezier(.4, 0, .2, 1),background-color .3s cubic-bezier(.4, 0, .2, 1)}.post-near-item:hover{border-color:var(--color-primary);background:var(--color-primary-bg-hover)}.post-near-label{display:block;margin-bottom:12px;font-weight:700;color:var(--color-primary);font-size:.9em;text-transform:uppercase;letter-spacing:.5px}.post-near-content{line-height:1.6}.post-near-content a{color:var(--color-text-strong);text-decoration:none;display:block;padding:5px 0;transition:color .3s cubic-bezier(.4, 0, .2, 1)}.post-near-content a:hover{color:var(--color-primary)}.post-near-empty{color:var(--color-text-muted);font-style:italic;padding:5px 0}.archive-header{margin:20px 0;padding:20px;background:var(--color-primary-bg);border:1px solid var(--color-border);border-left:4px solid var(--color-primary)}.archive-title{margin:0 0 10px 0;padding:0;color:var(--color-text-heading);font-size:1.8em;font-weight:700;line-height:1.3}.archive-meta{color:var(--color-text-secondary);font-size:.95em;margin-top:8px}.archive-meta .archive-count{display:inline-block;padding:4px 12px;background:var(--color-on-primary-scrolled);border:1px solid var(--color-primary-border)}.archive-meta strong{color:var(--color-primary);font-weight:600;font-size:1.1em}.archive-list{margin:0}.archive-item{margin-bottom:20px}.archive-item-header{margin-bottom:20px}.archive-item-footer{margin-top:20px;padding-top:20px;border-top:1px solid var(--color-border-light);text-align:right}.read-more-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 20px;background:var(--color-primary);color:var(--color-on-primary)!important;border:1px solid var(--color-primary);font-size:.875em;font-weight:500;text-decoration:none;transition:background-color .3s cubic-bezier(.4, 0, .2, 1)}.read-more-btn:hover{background:var(--color-primary-90)}.archive-empty{text-align:center;padding:80px 30px;background:var(--color-bg);border:1px solid var(--color-border);margin:20px 0}.archive-empty .empty-icon{margin-bottom:20px;opacity:.3}.archive-empty .empty-icon i,.archive-empty .empty-icon svg{font-size:80px;width:80px;height:80px;color:var(--color-text-muted)}.archive-empty .empty-title{margin:0 0 10px 0;color:var(--color-text-secondary);font-size:1.5em;font-weight:600}.archive-empty .empty-desc{margin:0 0 30px 0;color:var(--color-text-muted);font-size:.95em;line-height:1.6}.back-home-btn{display:inline-block;padding:10px 30px;background:var(--color-primary);color:var(--color-on-primary)!important;border:1px solid var(--color-primary);text-decoration:none;font-size:.9em;font-weight:500;transition:background-color .3s cubic-bezier(.4, 0, .2, 1)}.back-home-btn:hover{background:var(--color-primary-90)}@media (max-width:768px){.archive-header{padding:20px;margin:20px 0 30px}.archive-title{font-size:1.4em}.archive-item{padding:16px}.archive-empty{padding:60px 20px}}h3.archive-title{margin:1em 0 -1em;padding-top:20px;color:var(--color-text-muted);font-size:1em}.more{text-align:center}.more a{border:none}.protected .text{width:50%}.page-navigator{list-style:none;margin:25px 0;padding:0;text-align:center}.page-navigator li{display:inline-block;margin:0 4px}.page-navigator a{display:inline-block;padding:0 10px;height:30px;line-height:30px;border:1px solid var(--color-border);background:var(--color-bg);transition:background-color .3s cubic-bezier(.4, 0, .2, 1),border-color .3s cubic-bezier(.4, 0, .2, 1)}.page-navigator a:hover{background:var(--color-bg-alt);text-decoration:none;border-color:var(--color-primary)}.page-navigator .current a{color:var(--color-on-primary);background:var(--color-primary);border-color:var(--color-primary)}#comments{padding-top:20px}.comment-list,.comment-list ol{list-style:none;margin:0;padding:0}.comment-list li{padding:14px;margin-top:10px;border:1px solid var(--color-border);background:var(--color-bg)}.comment-list li.comment-level-odd{background:var(--color-bg-alt)}.comment-list li.comment-level-even{background:var(--color-bg)}.comment-list li.comment-by-author{background:var(--color-bg-warning)}.comment-list li .comment-reply{text-align:right;font-size:.92857em}.comment-meta a{color:var(--color-text-muted);font-size:.92857em}.comment-author{display:block;margin-bottom:3px;color:var(--color-text-strong)}.comment-author .avatar{float:left;margin-right:10px}.comment-author cite{font-weight:700;font-style:normal}.comment-list .respond{margin-top:15px;border-top:1px solid var(--color-divider)}.respond .cancel-comment-reply{float:right;margin-top:15px;font-size:.92857em}#comment-form label{display:block;margin-bottom:.5em;font-weight:700}#comment-form .required:after{content:" *";color:var(--color-error-text)}#secondary{padding-top:20px;word-wrap:break-word}.widget{margin-bottom:25px;padding:20px;border:1px solid var(--color-border);background:var(--color-bg);transition:border-color .3s cubic-bezier(.4, 0, .2, 1)}.widget-title{margin-top:0;padding-bottom:12px;border-bottom:3px solid var(--color-primary-strong);color:var(--color-text-strong);font-size:1.1em;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.widget-list{list-style:none;padding:0;margin-top:15px}.widget-list li{margin:5px 0;line-height:1.6}.widget-list li a{display:block;padding:10px 0;color:var(--color-text-strong);transition:color .3s cubic-bezier(.4, 0, .2, 1),background-color .25s cubic-bezier(.4, 0, .2, 1)}.widget-list li a:hover{color:var(--color-primary);background:var(--color-primary-bg-hover)}.widget-list li ul{margin-left:15px}#body{flex:1}#footer{margin-top:25px;padding:3em 0;line-height:1.5;color:var(--color-text-muted);background:var(--color-primary-tint);width:100%}.footer-text{font-size:14px;text-align:left}.footer-right .footer-text{text-align:justify;-moz-text-align-last:left;text-align-last:left;word-break:normal;overflow-wrap:normal}@media screen and (max-width:600px){.footer-container{display:block;padding:0 20px}.footer-left,.footer-right{width:100%;text-align:left}}@media screen and (min-width:601px){.footer-container{display:flex;justify-content:space-between;padding:0 24px}.footer-left,.footer-right{width:calc(50% - 48px);text-align:left}}.error-page{margin-top:100px;margin-bottom:100px}.modern-button{background-color:var(--color-primary);border:none;color:var(--color-on-primary);padding:10px 20px;text-align:center;text-decoration:none;display:inline-block;font-size:16px;margin:4px 2px;cursor:pointer;transition:background-color .3s ease}.modern-button:hover{background-color:var(--color-primary-hover)}.comment-content,.post-content{word-wrap:break-word}.comment-content{line-height:1.5}.comment-content h2,.post-content h2{font-size:1.28571em}.comment-content img,.comment-content video,.post-content img,.post-content video{max-width:100%;display:block;margin:0 auto}.comment-content a img,.post-content a img{background:var(--color-bg);position:relative;bottom:-4px}.post-content .post-header-image{width:100%;margin-bottom:20px;border:none}.archive-item-excerpt,.comment-content,.description,.post-content,.post-near-content,.widget-list{text-align:justify;-moz-text-align-last:left;text-align-last:left;word-break:normal;overflow-wrap:normal}.comment-content h1,.comment-content h2,.comment-content h3,.comment-content h4,.comment-content h5,.comment-content h6,.post-content h1,.post-content h2,.post-content h3,.post-content h4,.post-content h5,.post-content h6{text-align:left;text-align-last:left}.code-line,code,pre,pre code,table,table td,table th{text-align:left!important;-moz-text-align-last:left!important;text-align-last:left!important}.code-line,pre{white-space:pre}.browsehappy,.protected .text{text-align:left}.MathJax.CTXT-CHTML,.MathJax_Display,mjx-container[display=true]{text-align:center!important;-moz-text-align-last:center!important;text-align-last:center!important;margin:1em 0}.MathJax:not(.MathJax_Display),mjx-container:not([display=true]){text-align:inherit;-moz-text-align-last:inherit;text-align-last:inherit}.aligncenter,div.aligncenter{display:block;margin-left:auto;margin-right:auto}.alignleft{float:left}.alignright{float:right}img.alignleft{margin:0 15px 0 0}img.alignright{margin:0 0 0 15px}.back-home-btn:focus-visible,.modern-button:focus-visible,.post-near-item:focus-within,.read-more-btn:focus-visible,.widget-list li a:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.archive-header,.archive-item,.post,.post-near-item,.widget{box-shadow:var(--shadow-card)}::selection{background:var(--color-primary);color:var(--color-on-primary)}::-moz-selection{background:var(--color-primary);color:var(--color-on-primary)}tbody tr:nth-child(2n) td{background-color:var(--color-zebra)}@media (max-width:767px){body{font-size:81.25%}#nav-menu a{float:none;display:inline-block;margin:0 -2px}}@media (max-width:768px){#header{text-align:center}.description{text-align:center;-moz-text-align-last:center;text-align-last:center}.post{padding:16px}.post-meta{justify-content:flex-start;gap:12px;font-size:.85em}.post-title{font-size:1.2em;text-align:left}}@media (min-width:1200px){.container{max-width:952px}}.hidden{display:none!important;visibility:hidden}.sr-only{border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only.focusable:active,.sr-only.focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.invisible{visibility:hidden}.single{transition:border-left-color .4s cubic-bezier(.25, .8, .25, 1)}.single:hover{border-left-color:var(--color-primary)}table{width:100%;border-collapse:collapse;margin-bottom:1em;border:1px solid var(--color-border)}table td,table th{border:1px solid var(--color-border);padding:8px;text-align:left}table th{background-color:var(--color-primary-strong);font-weight:700;color:var(--color-on-primary)}table td{background-color:var(--color-primary-bg-hover)}hr{margin:2em auto;width:100px;border:1px solid var(--color-border);border-width:2px 0 0 0}ol,ul{padding-left:1.5em;margin-bottom:1em}ol li,ul li{margin-bottom:.5em}@media print{#footer,#header,#nav-menu,#secondary,.archive-item-footer,.back-home-btn,.code-header .copy-button,.page-navigator,.post-footer,.post-near,.read-more-btn{display:none!important}#main{width:100%!important;float:none!important}.archive-item,.post{border:none!important;box-shadow:none!important;margin:0!important;padding:0!important}body{background:var(--color-bg)!important;color:var(--color-black)!important;font-size:12pt}.archive-item-excerpt,.post-content{color:var(--color-black)!important;line-height:1.5}.post-content a[href]::after{content:" (" attr(href) ")";font-size:.85em;color:var(--color-text)}.post-content a[href^="#"]::after,.post-content a[href^=javascript]::after{content:""}.archive-item,.post{page-break-inside:avoid}h1,h2,h3{page-break-after:avoid}}