@charset "UTF-8";@keyframes slideIn{from{transform:translateY(50%)scale(.8);opacity:0}to{transform:translateY(0)scale(1);opacity:1}}/*!modern-normalize v1.1.0 | MIT License | https://github.com/sindresorhus/modern-normalize*/*,::before,::after{box-sizing:border-box}html{-moz-tab-size:4;tab-size:4}html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}body{font-family:system-ui,-apple-system,segoe ui,Roboto,Helvetica,Arial,sans-serif,apple color emoji,segoe ui emoji}hr{height:0;color:inherit}abbr[title]{text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Consolas,liberation mono,Menlo,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}table{text-indent:0;border-color:inherit}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}::-moz-focus-inner{border-style:none;padding:0}:-moz-focusring{outline:1px dotted ButtonText}:-moz-ui-invalid{box-shadow:none}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}.bg{color:var(--c-txt);background-color:var(--c-bg-alt)}.chroma{color:var(--c-txt);background-color:var(--c-bg-alt)}.chroma .x{color:#cb4b16}.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:#ffc}.chroma .lnt{white-space:pre;user-select:none;margin-right:.4em;padding:0 .4em;color:#495050}.chroma .ln{white-space:pre;user-select:none;margin-right:.4em;padding:0 .4em;color:#495050}.chroma .line{display:flex}.chroma .k{color:#719e07}.chroma .kc{color:#cb4b16}.chroma .kd{color:#268bd2}.chroma .kn{color:#719e07}.chroma .kp{color:#719e07}.chroma .kr{color:#268bd2}.chroma .kt{color:#dc322f}.chroma .nb{color:#b58900}.chroma .bp{color:#268bd2}.chroma .nc{color:#268bd2}.chroma .no{color:#cb4b16}.chroma .nd{color:#268bd2}.chroma .ni{color:#cb4b16}.chroma .ne{color:#cb4b16}.chroma .nf{color:#268bd2}.chroma .nt{color:#268bd2}.chroma .nv{color:#268bd2}.chroma .s{color:#2aa198}.chroma .sa{color:#2aa198}.chroma .sb{color:#586e75}.chroma .sc{color:#2aa198}.chroma .dl{color:#2aa198}.chroma .s2{color:#2aa198}.chroma .se{color:#cb4b16}.chroma .si{color:#2aa198}.chroma .sx{color:#2aa198}.chroma .sr{color:#dc322f}.chroma .s1{color:#2aa198}.chroma .ss{color:#2aa198}.chroma .m{color:#2aa198}.chroma .mb{color:#2aa198}.chroma .mf{color:#2aa198}.chroma .mh{color:#2aa198}.chroma .mi{color:#2aa198}.chroma .il{color:#2aa198}.chroma .mo{color:#2aa198}.chroma .o{color:#719e07}.chroma .ow{color:#719e07}.chroma .c{color:#586e75}.chroma .ch{color:#586e75}.chroma .cm{color:#586e75}.chroma .c1{color:#586e75}.chroma .cs{color:#719e07}.chroma .cp{color:#719e07}.chroma .cpf{color:#719e07}.chroma .gd{color:#dc322f}.chroma .ge{font-style:italic}.chroma .gr{color:#dc322f;font-weight:700}.chroma .gh{color:#cb4b16}.chroma .gi{color:#719e07}.chroma .gs{font-weight:700}.chroma .gu{color:#268bd2}:root{--offset:0;--vw:1vw}html{scroll-behavior:smooth;font-size:1rem}body{--c-bg:#f3f6f6;--c-bg-alt:#dee8e5;--c-txt:#545250;--c-txt-alt:#6d6b69;--c-txt-em:#000}@media(prefers-color-scheme:dark){body{--c-bg:#27343a;--c-bg-alt:#364045;--c-txt:#c8c6c4;--c-txt-alt:#a19f9d;--c-txt-em:#fff}#page img{filter:brightness(.9)}#page img:hover{filter:none}}body,button,input,select,textarea{color:var(--c-txt);background-color:var(--c-bg);line-height:calc(1.4em + .2vw);font-family:trebuchet ms,Tahoma,Verdana,-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft Yahei,sans-serif;letter-spacing:.05rem;transition:color .5s,background-color .5s,border-color .5s}pre,code,pre tt{font-family:cascadia code,Consolas,Menlo,Monaco,lucida console,lucida sans typewriter,dejavu sans mono,bitstream vera sans mono,liberation mono,nimbus mono l,courier new,yahei consolas hybrid,monospace,segoe ui emoji,pingfang sc,microsoft yahei;letter-spacing:normal}pre{padding:.7em 1.1em;overflow:auto;font-size:.9em;line-height:1.2;white-space:pre;color:var(--c-txt);background-color:var(--c-bg-alt)}pre code{padding:0;margin:0;background:0 0}code{background:var(--c-bg-alt);padding:0 3px;margin:0 4px}blockquote{margin:1.5em 1em;font-family:Palatino,Optima,Georgia,source han serif sc vf,source han serif cn vf,source han serif sc,source han serif cn,noto serif cjk sc,source-han-serif-sc,serif;font-style:normal;font-weight:400!important;letter-spacing:.07rem;color:var(--c-txt-alt)}blockquote::before{content:"“";position:absolute;opacity:.3;font-size:80px;transform:translate(-20px,5px)}blockquote strong{font-weight:400;text-decoration:#54bab9 underline 3px}blockquote p{margin-left:1.2em}blockquote cite{font-weight:700;font-style:normal;margin-left:1em}blockquote cite::before{content:"—— "}a{color:var(--c-txt);text-decoration:none;border-bottom:solid 1px var(--c-bg-alt);transition-property:color,border-color;transition-duration:.2s}a:hover{color:#54bab9;border-bottom-color:#54bab9}a:active{border-bottom-style:dashed}a.icon-link{border-bottom:none}table{border-collapse:collapse;border-spacing:0;empty-cells:show;width:100%;max-width:100%}table th,table td{padding:1.5%;border:1px solid}table th{font-weight:700;vertical-align:bottom}hr{color:var(--c-bg-alt);border-top:none;border-width:3px 0 0;border-style:dashed}button,[type=button],[type=reset],[type=submit]{border:1px solid var(--c-txt-alt)}button:hover,[type=button]:hover,[type=reset]:hover,[type=submit]:hover{border-color:#54bab9}button:active,[type=button]:active,[type=reset]:active,[type=submit]:active{border-style:dashed}input[type=text],input[type=email],input[type=url]{width:100%;border:1px solid var(--c-txt-alt);border-width:0 0 1px;background-color:transparent}textarea{width:100%;max-width:100%;padding:2px 6px;border:1px solid var(--c-txt-alt);background-color:transparent}#page{display:flex;flex-direction:column;min-height:100vh}#page img{transition:filter .3s}#bg-img{position:fixed;z-index:-1;top:0;width:100vw;height:100vh;background-image:var(--bg-img);background-position:50%;background-size:cover;opacity:.05}main#site-main{flex-grow:1;margin-top:1em}.wrapper{width:100%;max-width:100%;margin:0 auto;padding:0 1em}#home-btn{border:none;position:absolute}#home-btn>img{width:1.5em;height:auto;border-radius:50%}.title-area{display:flex;align-items:baseline;flex-direction:row-reverse;margin-bottom:2em}.title-area .title-area-l{flex:1}h1#page-title{margin:0;font-size:2em;line-height:normal}.feather{display:inline-block;vertical-align:-.125em;width:1em;height:1em}#page.home{justify-content:center}#home-center{display:flex;flex-direction:column;justify-content:center;padding:0 10vw;font-size:1.2em}#home-title{line-height:normal;margin-bottom:.3em}#home-social>a{padding-right:.5em;font-size:1.4em}#home-nav{margin:1em 0;letter-spacing:normal}#home-nav>a{display:inline-block;border:1px solid var(--c-txt-alt);padding:0 .4em;font-size:.8em;margin-top:.5em}#home-nav>a:hover{border-color:#54bab9}#home-nav>a:active{border-style:dashed}#recent-posts{margin-top:2em}.recent-posts-list{list-style:none;padding-left:0;font-size:1rem}.recent-posts-list li{margin-bottom:.2em}.recent-posts-list span{margin-right:.5em;color:var(--c-txt-alt)}.recent-posts-list a{display:block}#home-footer{padding:0 10vw;font-size:.8em;letter-spacing:normal}#page.error-404{justify-content:center;align-items:center}.banner-404{font-size:1.5em;padding:1em}.btn-404>a{display:inline-block;font-size:.8em;border:1px solid var(--c-txt-alt);padding:.2em .4em;margin-bottom:.4em}.btn-404>a:hover{border-color:#54bab9}.btn-404>a:active{border-style:dashed}.post-meta{margin-bottom:.5em;display:flex}#toc-btn{position:relative;top:-1em;color:var(--c-txt-alt);font-size:.8em}#toc-btn:hover{color:#54bab9}#toc{display:none;color:var(--c-txt-alt);padding:1em;background-color:var(--c-bg-alt)}.toc-title{display:none;padding-right:1em;margin-top:0;font-weight:700}#TableOfContents{font-size:.9em}#TableOfContents a{display:block;border-bottom:none;color:var(--c-txt-alt)}#TableOfContents a:hover{color:#54bab9}#TableOfContents ul{margin:0}.content{margin-top:1.5rem;text-justify:inter-ideograph;overflow-wrap:break-word}.content a{text-decoration:none;border:none;box-shadow:inset 0 -4px #54bab9;transition-property:box-shadow;transition-duration:.1s}.content a:hover{box-shadow:inset 0 -1em #54bab9;color:var(--c-txt)}.content h1,.content h2,.content h3,.content h4,.content h5,.content h6{font-weight:700;margin-top:1.5rem;margin-bottom:1rem}.content blockquote{text-align:left}.content figure{height:auto;margin:0;text-align:center}.content figcaption>p{margin-top:.1rem;margin-bottom:1rem;font-size:.8em;font-style:italic;color:var(--c-txt-alt)}.content figure.left{float:left;margin-right:1em;max-width:50%}.content figure.right{float:right;margin-left:1em;max-width:50%}.content figure.big{width:calc(var(--vw) * 100);margin-left:-1em}.content img{display:block;max-width:100%;height:auto;margin:auto}.content ul,.content ol{padding:0;margin-left:1.8em}.content a.anchor{box-shadow:none;opacity:.7;font-size:1em}.content a.anchor:hover{color:#54bab9;opacity:1}.content a.anchor .anchor-icon{visibility:hidden}.content a.anchor:focus .anchor-icon{visibility:visible}.content h1:hover .anchor-icon,.content h2:hover .anchor-icon,.content h3:hover .anchor-icon,.content h4:hover .anchor-icon,.content h5:hover .anchor-icon,.content h6:hover .anchor-icon{visibility:visible}.footnotes img{max-height:20em}.footnotes{font-size:.8em}.footnotes p{margin:0}.footnotes hr{width:auto;height:2em;border:none;text-align:center}.footnotes hr::after{content:"* * *";display:block;font-size:2em}.footnotes a{box-shadow:none;text-decoration:underline;transition-property:color}.footnotes a:hover{box-shadow:none;color:#54bab9}.footnotes a.footnote-backref{text-decoration:none}a.footnote-ref{box-shadow:none;text-decoration:none;padding:1px 2px;border-radius:2px;background-color:var(--c-bg-alt);transition-property:background-color}a.footnote-ref:hover{box-shadow:none;background-color:#54bab9}hr.post-end{margin:2rem auto 1rem 0;width:50%}.post-info{font-size:.8rem;line-height:normal;color:var(--c-txt-alt)}.post-info p{margin:.8em 0}.post-info svg{margin-right:.7em}.post-info a{border-bottom:none;text-decoration:underline;color:var(--c-txt-alt)}.post-info a:hover{color:#54bab9}.post-info .tag{margin-right:.5em}.post-info .tag::before{content:"#"}.post-nav{display:flex;justify-content:space-between;gap:1em;margin-top:1.5em;margin-bottom:2em;font-size:1.2em;padding:.5em;border:1px solid var(--c-txt-alt)}.post-nav>a{flex-basis:50%;flex-grow:1;border:none}.post-nav .next-post{text-align:left}.post-nav .prev-post{text-align:right}.post-nav .post-nav-label{font-size:.8em;opacity:.8;text-transform:uppercase;color:var(--c-txt-alt)}#scroll-top-btn{display:none;position:fixed;margin:0;padding:0;bottom:.8rem;left:calc(var(--offset) - 2.5rem);line-height:0;font-size:1.5rem;border:none;color:var(--c-txt-alt);background:0 0;cursor:pointer;animation:slideIn .2s ease-out}#scroll-top-btn:hover{color:#54bab9}.album-meta{color:var(--c-txt-alt);font-size:.8rem}.album-meta>p{margin:0}.album-meta>p.album-desc{margin-top:1em;font-size:.95rem}.album-meta>p>.feather{margin-right:.5em}.posts-group{display:block;margin-bottom:1.9em;line-height:normal}.posts-group .post-year{padding-top:6px;margin-right:1.8em;font-size:1.6em;color:var(--c-txt-alt)}.posts-group .post-year:hover{cursor:pointer;color:#54bab9}.posts-group .posts-list{flex-grow:1;margin:0;padding:0;list-style:none}.posts-group .post-item>a{display:flex;justify-content:space-between;align-items:baseline;padding:12px 0}.posts-group .post-day{flex-shrink:0;margin-left:1em;color:var(--c-txt-alt)}.album{margin-top:2.5em;margin-bottom:1em}.album-title{margin-bottom:0;font-weight:400}.album-title>a{border:none}.album-info{display:inline-block;margin-top:.5em;margin-bottom:.8em;font-size:.8em;color:var(--c-txt-alt)}.album-row{display:flex;flex-wrap:wrap;gap:.5em;border:none!important}.img-tile{height:100px}.img-tile>img{max-height:100%;min-width:100%;object-fit:cover;vertical-align:bottom}#site-header{display:none;background:var(--c-bg-alt);padding:.2em .8em}#site-branding{display:inline-block;margin-right:1em;font-weight:700}#site-branding>a{border:none}#site-nav{display:inline-block;font-size:.8em}#site-nav>a{margin-right:.2em;border:none}#site-nav>a::before{content:"~/";color:var(--c-txt-alt)}#site-nav>a.active{color:var(--c-txt-em)}#site-nav>a.active:hover{color:#54bab9}#site-footer{font-size:.8em;padding-top:1em;margin-top:2em;background-color:var(--c-bg-alt);letter-spacing:normal}p.site-copy{margin-top:0}.site-nav>span{margin:0 .2em;color:var(--c-txt-alt)}.site-nav>span:last-child{display:none}#comments{font-size:.95rem;margin-top:3em;overflow-wrap:break-word;text-align:initial}.comment-counter{margin-left:.5em}.comment-form{margin-top:1em;border:3px double var(--c-txt-alt);padding:.5em}.comment-form label{display:inline-block;width:100%;margin-top:.5em;font-size:.9em}.comment-form button{width:100%;margin-top:1em;margin-bottom:.2em;line-height:2}.comment-form .form-wrapper{display:flex;gap:.5em}.comment-preview{width:100%;min-height:1em;padding:2px 6px;border:1px dashed var(--c-txt-alt)}.comment-group{margin-top:2em}.comment-group article{display:flex;margin:1em 0;padding-top:1em;border-top:1px solid var(--c-bg-alt)}.comment-avatar{margin-right:.8em}.comment-avatar>img{width:40px;height:auto;border-radius:50%}.comment-wrapper{position:relative;width:100%}.comment-wrapper>header{font-size:.9em}.comment-wrapper>header .comment-date{color:var(--c-txt-alt)}.comment-wrapper>main{margin:1em 0;overflow-wrap:anywhere}.comment-wrapper img{max-width:100%}.reply-btn{position:absolute;top:0;right:0;font-size:.8em}.replies{margin-left:calc(7% + 1em)}@media all and (min-width:550px){html{font-size:1.1em}#site-footer{background:0 0}#site-footer>.footer-inner{display:flex;padding-top:1em;border-top:2px solid var(--c-bg-alt)}.posts-group{display:flex}.footer-l{flex-grow:1}.site-nav>span{color:var(--c-bg-alt)}.recent-posts-list a{display:inline}.img-tile{height:150px}}@media all and (min-width:810px){main#site-main{margin-top:3em}#home-center,#home-footer{padding-left:15vw;padding-right:15vw}.wrapper{max-width:780px;text-align:justify}#home-btn>img{width:2em}#page.error-404{flex-direction:row}.content a.anchor{float:left;margin-left:-1em}.posts-group{display:flex}.content figure.big{margin-left:calc(390px - var(--vw) * 50 - 1em)}.img-tile{height:200px}}@media all and (min-width:1250px){main#site-main{margin-top:4.5em}.wrapper{max-width:980px}#home-btn{top:.2em;right:.8em}#home-btn>img{width:1.5em}#site-header{display:block}.content a.anchor{float:left;margin-left:-1em}.posts-group{display:flex}.content figure.big{margin-left:calc(490px - var(--vw) * 50 - 1em)}}@media all and (min-width:1530px){:root{--offset:280px}main#site-main{margin-top:6em}#home-center,#home-footer{padding-left:16vw;padding-right:16vw}.wrapper{margin-left:var(--offset)}.sidebar{position:sticky;float:left;top:2em;width:calc(var(--offset) - 2em);padding:0 .5rem;margin-left:calc(0px - var(--offset));text-align:right}#toc-btn{display:none}#toc{display:block!important;padding:0 0 0 1em;border-right:2px solid var(--c-bg-alt);background:0 0}#toc .toc-title{display:block}#TableOfContents{direction:rtl;font-size:.8em;line-height:1.4}#TableOfContents a{display:inline}.album{width:calc(var(--vw) * 100 - var(--offset) - 1em);margin-top:3em}.album-title{margin-top:0;margin-bottom:.5em}.album-info{display:block;margin:0;line-height:1.5}.album-info>.separator{display:none}.album-row{gap:1em}.content>figure{text-align:left}.content>figure>img{margin-left:0}.content>figure.big{width:calc(var(--vw) * 100 - var(--offset) - 1em);margin-left:0}.content>figure.right{margin-right:calc(-280px + 1em)}}@media all and (min-width:1800px){:root{--offset:380px}html{font-size:1.2em}}html.han-la hanla:after{content:" ";display:inline;font-family:Arial;font-size:.89em}html.han-la code hanla,html.han-la pre hanla,html.han-la kbd hanla,html.han-la samp hanla{display:none}html.han-la ol>hanla,html.han-la ul>hanla{display:none}.katex{font-size:1em!important}.katex-display>.katex{max-width:100%}.katex-display{height:120%}.katex-display>.katex>.katex-html{max-width:100%;overflow-x:auto;overflow-y:hidden;padding-left:2px;padding-right:2px;padding-top:2px;padding-bottom:2px}