.highlight{background-color:#0d1117;color:#c9d1d9}.highlight table td{padding:5px}.highlight table pre{margin:0}.highlight .c,.highlight .ch,.highlight .cd,.highlight .cm,.highlight .c1,.highlight .cs,.highlight .cp,.highlight .cpf{color:#8b949e;font-style:italic}.highlight .k,.highlight .kd,.highlight .kn,.highlight .kp,.highlight .kr,.highlight .kt,.highlight .kv{color:#ff7b72;font-weight:bold}.highlight .o,.highlight .ow{color:#ff7b72}.highlight .s,.highlight .sa,.highlight .sb,.highlight .sc,.highlight .dl,.highlight .sd,.highlight .s2,.highlight .se,.highlight .sh,.highlight .si,.highlight .sx,.highlight .sr,.highlight .s1,.highlight .ss{color:#a5d6ff}.highlight .m,.highlight .mb,.highlight .mf,.highlight .mh,.highlight .mi,.highlight .il,.highlight .mo,.highlight .mx{color:#79c0ff}.highlight .kc,.highlight .no{color:#79c0ff;font-weight:bold}.highlight .nf,.highlight .fm{color:#d2a8ff;font-weight:bold}.highlight .nc,.highlight .nn{color:#ffa657;font-weight:bold}.highlight .nb,.highlight .bp{color:#ffa657}.highlight .nv,.highlight .vc,.highlight .vg,.highlight .vi,.highlight .vm{color:#79c0ff}.highlight .na{color:#79c0ff}.highlight .nt{color:#7ee787}.highlight .nd{color:#d2a8ff}.highlight .p{color:#c9d1d9}.highlight .err{color:#f85149;background-color:rgba(248,81,73,0.15)}.highlight .gd{color:#ffdcd7;background-color:rgba(248,81,73,0.15)}.highlight .gi{color:#aff5b4;background-color:rgba(46,160,67,0.15)}.highlight .ge{font-style:italic}.highlight .gs{font-weight:bold}.highlight .gh{color:#8b949e;font-weight:bold}.highlight .gu{color:#79c0ff}.highlight .w{color:#484f58}html,body{background:#fafafa}html{height:100%}body{color:#212427;font-family:monospace;font-size:16px;line-height:1.4;margin:0;min-height:100%;overflow-wrap:break-word}.back-nav{font-family:monospace;font-size:14px;margin:0.5rem 0 1.75rem 0}.back-nav a{color:#00e;text-decoration:none}.back-nav a:hover{text-decoration:underline}.post-title{font-family:monospace;font-size:26px;font-weight:bold;line-height:1.3;margin:1rem 0 0.35rem 0}.post-meta{text-align:left;font-family:monospace;font-size:13.5px;color:#666666;margin:0.35rem 0 2rem 0}.home-header{margin-top:0.5rem}.site-title{font-family:monospace;font-size:26px;font-weight:bold;letter-spacing:0.5px;margin:0 0 0.4rem 0}.site-title a{color:#212427;text-decoration:none}.site-title a:visited{color:#212427}.site-title a:hover{color:#00e}.site-bio{font-family:Verdana, Geneva, Tahoma, sans-serif;font-size:14.5px;line-height:1.55;color:#333333;margin:0.4rem 0 1rem 0}.home-nav{font-family:monospace;font-size:14px;margin:1rem 0 1.5rem 0;display:flex;flex-wrap:wrap;gap:0.65rem}.home-nav a{color:#00e;text-decoration:none}.home-nav a:hover{text-decoration:underline}hr.site-divider{text-align:left;border:0;border-top:1px dashed #cccccc;margin:1.75rem 0 1.25rem 0}hr.site-divider:before,hr.site-divider:after{content:none}.view-switcher{display:flex;justify-content:space-between;align-items:baseline;font-family:monospace;font-size:14px;margin:0 0 1.5rem 0}.view-switcher .view-active{color:#666666;font-weight:normal;letter-spacing:0.5px}.view-switcher .view-switch{color:#00e;text-decoration:underline;text-underline-offset:2.5px}.view-switcher .view-switch:visited{color:#00e}.view-switcher .view-switch:hover{color:#cc0000}.gallery-content{font-family:Verdana, Geneva, Tahoma, sans-serif;font-size:15px;line-height:1.65}.gallery-content .gallery-intro{font-size:14.5px;color:#444444;margin:0.5rem 0 2rem 0}.gallery-content .photo-roll-header{font-family:monospace;font-size:14px;font-weight:bold;color:#212427;margin:2.75rem 0 1.5rem 0;padding-bottom:0.35rem;border-bottom:1px dashed #cccccc;display:flex;justify-content:space-between;align-items:baseline}.gallery-content .photo-roll-header .roll-count{font-size:12px;font-weight:normal;color:#888888}.gallery-content .photo-roll-end{font-family:monospace;font-size:12px;color:#888888;text-align:right;margin:-1.5rem 0 2rem 0}.gallery-content .photo-stream{display:flex;flex-direction:column;gap:3rem;margin:1.5rem 0 3rem 0}.gallery-content .photo-card{margin:0;padding:0}.gallery-content .photo-card .photo-link{display:block;cursor:zoom-in;text-decoration:none;line-height:0}.gallery-content .photo-card .photo-link img{width:100%;height:auto;display:block;border:0}.gallery-content .photo-card .photo-caption{margin-top:0.65rem;font-size:13.5px;line-height:1.5;color:#555555;display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:0.5rem}.gallery-content .photo-card .photo-caption .caption-left{display:flex;align-items:baseline;gap:0.6rem}.gallery-content .photo-card .photo-caption .caption-left .caption-idx{font-family:monospace;font-size:13px;font-weight:bold;color:#212427}.gallery-content .photo-card .photo-caption .caption-left .caption-text{font-family:Verdana, Geneva, Tahoma, sans-serif}.gallery-content .photo-card .photo-caption .caption-meta{font-family:monospace;font-size:12.5px;color:#888888}.gallery-content .gallery-footer{display:flex;justify-content:space-between;align-items:baseline;font-family:monospace;font-size:13.5px;margin:2.5rem 0 3.5rem 0}.gallery-content .gallery-footer .end-of-roll{color:#888888}.gallery-content .gallery-footer .back-to-top{color:#00e;text-decoration:none}.gallery-content .gallery-footer .back-to-top:hover{text-decoration:underline;color:#cc0000}.gallery-content p{margin:1rem 0}.section-title{font-family:monospace;font-size:15px;font-weight:normal;margin:2rem 0 1rem 0;color:#212427}.post-list{list-style:none;padding:0;margin:0}.post-list .post-item{display:flex;align-items:baseline;margin:0.55rem 0;gap:1.25rem}.post-list .post-item .post-date{font-family:monospace;font-size:13.5px;color:#666666;width:95px;flex-shrink:0}.post-list .post-item .post-link{font-family:Verdana, Geneva, Tahoma, sans-serif;font-size:14.5px;line-height:1.45;color:#00e;text-decoration:underline}.post-list .post-item .post-link:visited{color:#551a8b}.post-list .post-item.show-more{margin-top:1.25rem;padding-left:calc(95px + 1.25rem);font-family:monospace;font-size:13.5px}.post-list .post-item.show-more a{text-decoration:none}.post-list .post-item.show-more a:hover{text-decoration:underline}@media (max-width: 520px){.post-list .post-item{flex-direction:column;gap:0.2rem}.post-list .post-item .post-date{width:auto}.post-list .post-item.show-more{padding-left:0}}.post-content{font-family:Verdana, Geneva, Tahoma, sans-serif;font-size:15px;line-height:1.65}.post-content h2,.post-content h3,.post-content h4,.post-content h5,.post-content h6{font-family:monospace}.post-footer{margin-top:3.5rem}.post-footer hr.site-divider{margin-bottom:1.5rem}.post-footer .post-nav{display:flex;justify-content:space-between;align-items:baseline;font-family:monospace;font-size:13.5px;gap:0.5rem}.post-footer .post-nav .post-nav-item{flex:1}.post-footer .post-nav .post-nav-item.post-nav-prev{text-align:left}.post-footer .post-nav .post-nav-item.post-nav-home{text-align:center;flex:0 0 auto}.post-footer .post-nav .post-nav-item.post-nav-next{text-align:right}.post-footer .post-nav .post-nav-item a{color:#00e;text-decoration:none}.post-footer .post-nav .post-nav-item a:visited{color:#00e}.post-footer .post-nav .post-nav-item a:hover{text-decoration:underline;color:#cc0000}.post-footer .post-nav .post-nav-item .post-nav-disabled{color:#cccccc;cursor:default;user-select:none}h2,h3,h4,h5,h6{margin-top:3rem}hr{margin:2rem 0}p{margin:1rem 0}li{margin:0.4rem 0}*:target{background:yellow}.w{max-width:650px;margin:2.5rem 0 3rem 6vw;padding:1rem 1.5rem;box-sizing:border-box}@media (max-width: 720px){.w{margin:1.5rem auto;padding:1rem 1.25rem}}hr{text-align:center;border:0}hr:before{content:"/////"}hr:after{content:attr(data-content) "/////"}table{width:100%}table,th,td{border:thin solid black;border-collapse:collapse;padding:0.4rem}code{font-family:monospace;font-size:0.88em;background:#f4f4f4;color:#212427;padding:0.15em 0.35em;border-radius:3px}div.highlighter-rouge{margin:1.75rem 0;border:1px solid #30363d;border-radius:4px;overflow:hidden;background:#0d1117}div.highlighter-rouge pre{margin:0;padding:0.9rem 1.15rem;overflow-x:auto;background:#0d1117}div.highlighter-rouge code{background:transparent;color:#c9d1d9;padding:0;border-radius:0;font-size:13.5px;line-height:1.5;white-space:pre}blockquote{font-style:italic;border:0;border-left:3px solid #cccccc;margin:1.5rem 0;padding:0.25rem 0 0.25rem 1.15rem;color:#444444}blockquote p{margin:0.5rem 0}blockquote p:first-child{margin-top:0}blockquote p:last-child{margin-bottom:0}img{max-width:100%;display:block;margin:0 auto}a{color:#00e;text-decoration:underline;text-underline-offset:2.5px}a:visited{color:#551a8b}a:hover{color:#cc0000}
