@font-face{font-display:swap;font-family:Montserrat;font-style:normal;font-weight:100;src:local("Montserrat Thin "),local("Montserrat-Thin"),url(/static/montserrat-latin-100-8d7d79679b70dbe27172b6460e7a7910.woff2) format("woff2"),url(/static/montserrat-latin-100-ec38980a9e0119a379e2a9b3dbb1901a.woff) format("woff")}@font-face{font-display:swap;font-family:Montserrat;font-style:italic;font-weight:100;src:local("Montserrat Thin italic"),local("Montserrat-Thinitalic"),url(/static/montserrat-latin-100italic-e279051046ba1286706adc886cf1c96b.woff2) format("woff2"),url(/static/montserrat-latin-100italic-3b325a3173c8207435cd1b76e19bf501.woff) format("woff")}@font-face{font-display:swap;font-family:Montserrat;font-style:normal;font-weight:200;src:local("Montserrat Extra Light "),local("Montserrat-Extra Light"),url(/static/montserrat-latin-200-9d266fbbfa6cab7009bd56003b1eeb67.woff2) format("woff2"),url(/static/montserrat-latin-200-2d8ba08717110d27122e54c34b8a5798.woff) format("woff")}@font-face{font-display:swap;font-family:Montserrat;font-style:italic;font-weight:200;src:local("Montserrat Extra Light italic"),local("Montserrat-Extra Lightitalic"),url(/static/montserrat-latin-200italic-6e5b3756583bb2263eb062eae992735e.woff2) format("woff2"),url(/static/montserrat-latin-200italic-a0d6f343e4b536c582926255367a57da.woff) format("woff")}@font-face{font-display:swap;font-family:Montserrat;font-style:normal;font-weight:300;src:local("Montserrat Light "),local("Montserrat-Light"),url(/static/montserrat-latin-300-00b3e893aab5a8fd632d6342eb72551a.woff2) format("woff2"),url(/static/montserrat-latin-300-ea303695ceab35f17e7d062f30e0173b.woff) format("woff")}@font-face{font-display:swap;font-family:Montserrat;font-style:italic;font-weight:300;src:local("Montserrat Light italic"),local("Montserrat-Lightitalic"),url(/static/montserrat-latin-300italic-56f34ea368f6aedf89583d444bbcb227.woff2) format("woff2"),url(/static/montserrat-latin-300italic-54b0bf2c8c4c12ffafd803be2466a790.woff) format("woff")}@font-face{font-display:swap;font-family:Montserrat;font-style:normal;font-weight:400;src:local("Montserrat Regular "),local("Montserrat-Regular"),url(/static/montserrat-latin-400-b71748ae4f80ec8c014def4c5fa8688b.woff2) format("woff2"),url(/static/montserrat-latin-400-0659a9f4e90db5cf51b50d005bff1e41.woff) format("woff")}@font-face{font-display:swap;font-family:Montserrat;font-style:italic;font-weight:400;src:local("Montserrat Regular italic"),local("Montserrat-Regularitalic"),url(/static/montserrat-latin-400italic-6eed6b4cbb809c6efc7aa7ddad6dbe3e.woff2) format("woff2"),url(/static/montserrat-latin-400italic-7583622cfde30ae49086d18447ab28e7.woff) format("woff")}@font-face{font-display:swap;font-family:Montserrat;font-style:normal;font-weight:500;src:local("Montserrat Medium "),local("Montserrat-Medium"),url(/static/montserrat-latin-500-091b209546e16313fd4f4fc36090c757.woff2) format("woff2"),url(/static/montserrat-latin-500-edd311588712a96bbf435fad264fff62.woff) format("woff")}@font-face{font-display:swap;font-family:Montserrat;font-style:italic;font-weight:500;src:local("Montserrat Medium italic"),local("Montserrat-Mediumitalic"),url(/static/montserrat-latin-500italic-c90ced68b46050061d1a41842d6dfb43.woff2) format("woff2"),url(/static/montserrat-latin-500italic-5146cbfe02b1deea5dffea27a5f2f998.woff) format("woff")}@font-face{font-display:swap;font-family:Montserrat;font-style:normal;font-weight:600;src:local("Montserrat SemiBold "),local("Montserrat-SemiBold"),url(/static/montserrat-latin-600-0480d2f8a71f38db8633b84d8722e0c2.woff2) format("woff2"),url(/static/montserrat-latin-600-b77863a375260a05dd13f86a1cee598f.woff) format("woff")}@font-face{font-display:swap;font-family:Montserrat;font-style:italic;font-weight:600;src:local("Montserrat SemiBold italic"),local("Montserrat-SemiBolditalic"),url(/static/montserrat-latin-600italic-cf46ffb11f3a60d7df0567f8851a1d00.woff2) format("woff2"),url(/static/montserrat-latin-600italic-c4fcfeeb057724724097167e57bd7801.woff) format("woff")}@font-face{font-display:swap;font-family:Montserrat;font-style:normal;font-weight:700;src:local("Montserrat Bold "),local("Montserrat-Bold"),url(/static/montserrat-latin-700-7dbcc8a5ea2289d83f657c25b4be6193.woff2) format("woff2"),url(/static/montserrat-latin-700-99271a835e1cae8c76ef8bba99a8cc4e.woff) format("woff")}@font-face{font-display:swap;font-family:Montserrat;font-style:italic;font-weight:700;src:local("Montserrat Bold italic"),local("Montserrat-Bolditalic"),url(/static/montserrat-latin-700italic-c41ad6bdb4bd504a843d546d0a47958d.woff2) format("woff2"),url(/static/montserrat-latin-700italic-6779372f04095051c62ed36bc1dcc142.woff) format("woff")}@font-face{font-display:swap;font-family:Montserrat;font-style:normal;font-weight:800;src:local("Montserrat ExtraBold "),local("Montserrat-ExtraBold"),url(/static/montserrat-latin-800-db9a3e0ba7eaea32e5f55328ace6cf23.woff2) format("woff2"),url(/static/montserrat-latin-800-4e3c615967a2360f5db87d2f0fd2456f.woff) format("woff")}@font-face{font-display:swap;font-family:Montserrat;font-style:italic;font-weight:800;src:local("Montserrat ExtraBold italic"),local("Montserrat-ExtraBolditalic"),url(/static/montserrat-latin-800italic-bf45bfa14805969eda318973947bc42b.woff2) format("woff2"),url(/static/montserrat-latin-800italic-fe82abb0bcede51bf724254878e0c374.woff) format("woff")}@font-face{font-display:swap;font-family:Montserrat;font-style:normal;font-weight:900;src:local("Montserrat Black "),local("Montserrat-Black"),url(/static/montserrat-latin-900-e66c7edc609e24bacbb705175669d814.woff2) format("woff2"),url(/static/montserrat-latin-900-8211f418baeb8ec880b80ba3c682f957.woff) format("woff")}@font-face{font-display:swap;font-family:Montserrat;font-style:italic;font-weight:900;src:local("Montserrat Black italic"),local("Montserrat-Blackitalic"),url(/static/montserrat-latin-900italic-4454c775e48152c1a72510ceed3603e2.woff2) format("woff2"),url(/static/montserrat-latin-900italic-efcaa0f6a82ee0640b83a0916e6e8d68.woff) format("woff")}code[class*=language-],pre[class*=language-]{word-wrap:normal;color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;-webkit-hyphens:none;hyphens:none;line-height:1.5;tab-size:4;text-align:left;white-space:pre;word-break:normal;word-spacing:normal}code[class*=language-] ::selection,code[class*=language-]::selection,pre[class*=language-] ::selection,pre[class*=language-]::selection{background:#073642}pre[class*=language-]{border-radius:.3em;margin:.5em 0;overflow:auto;padding:1em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{border-radius:.3em;padding:.1em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{background:#eee8d5;color:#657b83}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.search-input-wrapper{align-items:center;display:none;margin-right:16px;width:250px}@media(min-width:700px){.search-input-wrapper{display:flex}}.search-icon{color:var(--primary-text-color);margin-right:2px}.search-input{height:100%;width:100%}.search-input .MuiAutocomplete-inputRoot{padding-right:0!important}.search-input .MuiInputBase-input{color:var(--primary-text-color)!important;font-family:sans-serif,Arial,Helvetica,Roboto Mono,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe UI,Apple Color Emoji,Segoe UI Emoji;font-size:16px;font-weight:500;padding-bottom:2px!important}.search-input .MuiInputBase-input :hover{border-bottom-color:var(--primary-text-color)!important;border-bottom:1px}.search-input .MuiInputBase-root{cursor:pointer}.search-input .MuiInputBase-root:before{border-bottom:none!important}.search-input .MuiInput-underline:after{border-bottom-color:var(--primary-text-color)}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#888}::-webkit-scrollbar-thumb:hover{background:#555}.page-header-transparent{background-color:var(--background-transparent-color)!important;transition:.3s}.page-header-wrapper{background-color:var(--background-color);border-bottom:1px solid var(--header-bottom-color);display:flex;height:60px;justify-content:center;position:sticky;top:0;width:100%;z-index:50}.page-header-wrapper .page-header{align-items:center;display:flex;justify-content:space-between;max-width:1200px;padding-left:20px;padding-right:20px;width:100%}.page-header-wrapper .page-header .link{color:var(--primary-text-color)}@media(min-width:700px){.page-header-wrapper .page-header .link{font-size:15px;font-weight:500}}.page-header-wrapper .page-header .link-logo{align-items:center;display:flex;font-size:19px;font-weight:400}.page-header-wrapper .page-header .link-logo .logo{height:27px}.page-header-wrapper .page-header .introduce{background-color:var(--highlight-color);border-radius:6px;color:var(--introduce-text-color);padding:7px 12px}.page-header-wrapper .page-header .introduce:hover{background-color:var(--highlight-hover-color);transition:.5s}@media(min-width:700px){.page-header-wrapper .page-header .introduce{font-size:15px;font-weight:600}}.page-header-wrapper .page-header .front-section .link{padding-right:10px;position:relative}.page-header-wrapper .page-header .front-section .link .primary{color:var(--highlight-color)!important;font-weight:700;margin-right:3px}.page-header-wrapper .page-header .trailing-section{align-items:center;display:flex}.page-header-wrapper .page-header .trailing-section #menu{position:relative}.page-header-wrapper .page-header .trailing-section #menu:before{border-bottom:3px solid var(--highlight-color);bottom:-5px;content:"";display:block;height:4px;left:0;margin-top:.2em;position:absolute;transition:.5s;width:0}.page-header-wrapper .page-header .trailing-section #menu:hover:before{width:100%}.page-header-wrapper .page-header .trailing-section .link{margin-right:10px}@media(min-width:700px){.page-header-wrapper .page-header .trailing-section .link{margin-right:20px}}.page-footer-wrapper{align-items:center;display:flex;height:62px;justify-content:center;margin-top:auto;width:100%}.page-footer-wrapper .page-footer{max-width:1200px;text-align:center;width:100%}.page-footer-wrapper .page-footer .link{color:var(--primary-text-color);font-size:20px;font-weight:700;margin-right:20px}.page-footer-wrapper .page-footer a{color:#3a95ff}.dark-mode-button-wrapper{align-items:center;bottom:20px;display:flex;justify-content:center;position:fixed;right:20px}.dark-mode-button{-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);background-color:#363f47!important;border-radius:50px;box-shadow:0 5px 25px rgba(0,0,0,.12);cursor:pointer;height:50px;width:50px;z-index:3}.dark-mode-icon{color:#fff}a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{border:0;font-size:100%;font:inherit;margin:0;padding:0;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}table{border-collapse:collapse;border-spacing:0}a{outline:none;text-decoration:none}*{appearance:none;box-sizing:border-box}html{font-size:14px;height:100%;overflow-y:scroll;width:100%}body{background-color:var(--background-color)!important;transition:.3s}a{color:var(--link-text-color)}.page-wrapper{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--primary-text-color);font-family:sans-serif,Arial,Helvetica,Roboto Mono,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe UI,Apple Color Emoji,Segoe UI Emoji;justify-content:center;min-height:100vh;word-break:keep-all}.page-wrapper,.page-wrapper .page-content{align-items:center;display:flex;flex-direction:column;width:100%}.page-wrapper .page-content{max-width:1200px;padding:0 20px}.page-wrapper .page-content .blog-template-wrapper{max-width:768px;width:100%}.page-wrapper .page-wrapper-point{overflow:hidden;position:absolute;right:0;top:0;z-index:-20}.page-wrapper .page-wrapper-point .page-wrapper-point-inner{background-color:var(--highlight-color);border-radius:50%;filter:blur(100px);height:600px;opacity:.5;position:relative;transform:translateX(66.6%) translateY(-66.666%);width:600px}@media(min-width:700px){.page-wrapper .page-wrapper-point .page-wrapper-point-inner{transform:translateX(60%) translateY(-60%)}}.icon{color:var(--about-link-icon-color);font-size:21px}.social-links .icon{color:var(--bio-link-icon-color);font-size:30px}@keyframes blinking-cursor{0%{opacity:0}50%{opacity:1}to{opacity:0}}.bio{border-bottom:1px solid var(--header-bottom-color);color:var(--primary-text-color);display:flex;flex-direction:column;margin-bottom:40px;padding:3rem 0;width:100%}@media(min-width:700px){.bio{align-items:center;flex-direction:row}}.bio .myPicture{border-radius:14px;isolation:isolate;width:150px}.bio .introduction{display:flex;flex-direction:column;word-break:keep-all}.bio .introduction .react-rotating-text-cursor{animation:blinking-cursor .8s cubic-bezier(.68,.01,.01,.99) 0s infinite}.bio .introduction strong{display:inline-block;font-weight:600}.bio .introduction.korean{font-size:1.3118rem;font-weight:100;line-height:1.2}.bio .introduction.korean .title{font-size:22px;font-weight:600;line-height:1.4;margin-bottom:12px}@media(min-width:700px){.bio .introduction.korean .title{font-size:28px}}.bio .introduction.korean .description{-webkit-box-orient:vertical;color:var(--secondary-text-color);display:-webkit-box;font-size:16px;font-weight:400;line-height:1.5;margin-bottom:10px;text-overflow:ellipsis}.bio .introduction.english{font-family:montserrat;font-size:1.3118rem;font-weight:100;line-height:1.2}.bio .introduction.english .title{font-size:22px;font-weight:600;line-height:1.4;margin-bottom:12px}@media(min-width:700px){.bio .introduction.english .title{font-size:28px}}.bio .introduction.english .description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--secondary-text-color);display:-webkit-box;font-size:17px;font-weight:400;line-height:1.5;margin-bottom:10px;overflow:hidden;text-overflow:ellipsis}.bio .introduction.english .social-links{display:flex;margin-top:20px}.bio .thumbnail-wrapper{display:none;margin-right:20px}@media(min-width:700px){.bio .thumbnail-wrapper{display:block}}.section-header-wrapper{display:flex;justify-content:start;margin-bottom:8px;width:100%}.section-header-wrapper .section-header{color:var(--highlight-color);font-size:30px;font-weight:700;padding-bottom:5px}.timestamp-section{align-items:center;display:flex;flex-direction:column;justify-content:center;margin-bottom:50px;width:100%;word-break:keep-all}.timestamp-section .body{width:100%}.timestamp-section .body .timestamp{display:flex;flex-direction:column;font-family:var(--font-family);font-size:16px;font-weight:400;justify-items:center;line-height:1.5;padding:10px 0;width:100%}@media(min-width:700px){.timestamp-section .body .timestamp{font-size:18px}}.timestamp-section .body .timestamp .activity .activity-title{color:var(--primary-text-color);font-size:21px;font-weight:700;text-decoration:underline;text-decoration-style:dashed;text-decoration-thickness:1px;text-underline-offset:6px;transition:.3s;width:100%}.timestamp-section .body .timestamp .activity .activity-title:after{content:" ↗ ";font-size:80%;font-weight:700;vertical-align:middle}.timestamp-section .body .timestamp .activity .activity-title:hover{color:var(--highlight-color)}.timestamp-section .body .timestamp .activity .activity-description{background-color:var(--button-background-color);border-bottom-right-radius:5px;border-left:.25em solid var(--markdown-blockquote-border-color);border-top-right-radius:5px;border-radius:5px;color:var(--content-text-color);font-size:16px;margin:8px 0;padding:1.5em 1em}@media(min-width:700px){.timestamp-section .body .timestamp .activity .activity-description{font-size:18px}}.timestamp-section .body .timestamp .job-wrapper{display:flex;margin:12px 0}.timestamp-section .body .timestamp .job-wrapper .job{min-width:115px;width:115px}@media(min-width:700px){.timestamp-section .body .timestamp .job-wrapper .job{min-width:200px;width:200px}}.timestamp-section .body .timestamp .job-wrapper .job .job-title{color:var(--primary-text-color);font-size:18px;font-weight:700;margin-bottom:5px}.timestamp-section .body .timestamp .job-wrapper .job .job-date{align-self:center;color:var(--primary-text-color);margin-right:5px}.timestamp-section .body .timestamp .job-wrapper .job-description{list-style:disc}.timestamp-section .body .timestamp .job-wrapper .job-description .description{margin-bottom:21px}.timestamp-section .body .timestamp .job-wrapper .job-description li{margin-left:18px}.project-section{align-items:center;display:flex;flex-direction:column;justify-content:center;width:100%}.project-section .project-wrapper{display:grid;gap:32px;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.project-section .project{display:flex;flex-direction:column;grid-column:span 2/span 2;margin-bottom:30px;padding:15px 0;width:100%}@media(min-width:700px){.project-section .project{grid-column:span 1/span 1}}.project-section .project .head{font-size:20px;font-weight:700;line-height:30px;margin-bottom:10px}.project-section .project .sub-title{background-color:var(--button-background-color);border-left:.25em solid var(--markdown-blockquote-border-color);border-radius:5px;color:var(--content-text-color);font-size:16px;margin:4px 0;padding:1.5em 1em}@media(min-width:700px){.project-section .project .sub-title{font-size:18px}}.project-section .project .body{display:flex;flex-direction:column;font-size:16px;line-height:1.5;width:100%}@media(min-width:700px){.project-section .project .body{font-size:18px}}.project-section .project .body .affiliation{font-size:16px;font-weight:500;margin-bottom:10px}.project-section .project .body .thumbnail{border-radius:14px;margin-bottom:10px;width:100%}.project-section .project .body .tech-stack{display:flex;flex-wrap:wrap;gap:5px;margin:4px 0 10px}.project-section .project .body .tech-stack .tech{background-color:var(--chip-background-color);border-radius:10px;color:var(--chip-color);font-size:14px;font-weight:700;margin-right:5px;padding:4px 8px}.project-section .project .body .project-description{list-style:disc;margin-left:21px;margin-top:21px}.project-section .project .body .project-description .description{font-family:sans-serif,Arial,Helvetica,Roboto Mono,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe UI,Apple Color Emoji,Segoe UI Emoji;font-weight:500;margin-bottom:21px}@media(min-width:700px){.project-section .project .body{flex-direction:column}}.introduce-section{align-items:center;display:flex;flex-direction:column;justify-content:center;margin-bottom:42px;width:100%}.introduce-section .introduce-wrapper{word-wrap:break-word;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;display:flex;font-weight:500;line-height:1.5}.introduce-section .introduce-wrapper,.introduce-section .introduce-wrapper .description{color:var(--content-text-color);font-family:sans-serif,Arial,Helvetica,Roboto Mono,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe UI,Apple Color Emoji,Segoe UI Emoji;font-size:16px}.introduce-section .introduce-wrapper .description{margin-bottom:20px}@media(min-width:700px){.introduce-section .introduce-wrapper .description{font-size:18px}}.post-header{border-bottom:1px solid var(--post-card-border-color);display:flex;flex-direction:column;justify-content:center;margin-bottom:25px;margin-top:20px;padding-bottom:25px;width:100%;word-break:keep-all}.post-header .thumbnail{border-radius:12px;isolation:isolate;margin-top:36px;width:100%}.post-header .categories{margin-bottom:5px;margin-top:20px}.post-header .categories .category{color:var(--primary-text-color);font-weight:600;margin-right:4px}.post-header .categories .category:hover{text-decoration:underline}.post-header .title{color:var(--primary-text-color);font-size:32px;font-weight:600;line-height:1.3;margin-bottom:6px}.post-header .profileImage{border-radius:50%;height:55px;isolation:isolate;margin-right:15px;width:55px}.post-header .info{align-items:center;color:var(--secondary-text-color);display:flex;flex-wrap:wrap;font-size:12px;font-weight:500;line-height:1.5;margin-top:20px;width:100%}.post-header .info .author{margin-right:4px}.post-header .info strong{color:var(--primary-text-color);font-size:16px;font-weight:600}.post-navigator{border-top:1px solid var(--post-card-border-color);column-gap:1.4%;display:grid;grid-template-columns:49.3% 49.3%;padding-bottom:2rem;padding-top:2rem;width:100%}.post-navigator .post-card{border-radius:6px;color:var(--primary-text-color);cursor:pointer;display:flex;flex-direction:column;height:100%;padding:5px;transition:transform .2s;width:100%}.post-navigator .post-card.prev{margin-right:auto}.post-navigator .post-card.next{margin-left:auto}.post-navigator .post-card .thumbnail{border-radius:14px;isolation:isolate;transition:.2s ease-in-out}.post-navigator .post-card .direction{color:gray;font-size:14px;font-weight:500;margin-bottom:10px;margin-left:3px}.post-navigator .post-card .title{font-size:12px;font-weight:600;line-height:1.4;margin-left:7px;margin-top:7px}@media(min-width:700px){.post-navigator .post-card .title{font-size:16px}}.post-navigator .post-card:hover .title{color:var(--highlight-color);transition-duration:.5s}.markdown .octicon{fill:currentColor;display:inline-block;vertical-align:text-bottom}.markdown .anchor{float:left;line-height:1;margin-left:-20px;padding-right:4px}.markdown .anchor:focus{outline:none}.markdown h1 .octicon-link,.markdown h2 .octicon-link,.markdown h3 .octicon-link,.markdown h4 .octicon-link,.markdown h5 .octicon-link,.markdown h6 .octicon-link{color:#1b1f23;vertical-align:middle;visibility:hidden}.markdown h1:hover .anchor,.markdown h2:hover .anchor,.markdown h3:hover .anchor,.markdown h4:hover .anchor,.markdown h5:hover .anchor,.markdown h6:hover .anchor{text-decoration:none}.markdown h1:hover .anchor .octicon-link,.markdown h2:hover .anchor .octicon-link,.markdown h3:hover .anchor .octicon-link,.markdown h4:hover .anchor .octicon-link,.markdown h5:hover .anchor .octicon-link,.markdown h6:hover .anchor .octicon-link{visibility:visible}.markdown h1:hover .anchor .octicon-link:before,.markdown h2:hover .anchor .octicon-link:before,.markdown h3:hover .anchor .octicon-link:before,.markdown h4:hover .anchor .octicon-link:before,.markdown h5:hover .anchor .octicon-link:before,.markdown h6:hover .anchor .octicon-link:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' aria-hidden='true' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z'/%3E%3C/svg%3E");content:" ";display:inline-block;height:16px;width:16px}.markdown{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;word-wrap:break-word;color:var(--content-text-color);font-family:sans-serif,Arial,Helvetica,Roboto Mono,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe UI,Apple Color Emoji,Segoe UI Emoji;font-size:16px;font-weight:500;line-height:1.5;line-height:1.8}@media(min-width:700px){.markdown{font-size:18px}}.markdown details{display:block}.markdown summary{display:list-item}.markdown a{background-color:initial}.markdown a:active,.markdown a:hover{outline-width:0}.markdown strong{font-weight:inherit;font-weight:bolder}.markdown h1{margin:.67em 0}.markdown img{border-style:none}.markdown code,.markdown kbd,.markdown pre{font-family:sans-serif,Arial,Helvetica,Roboto Mono,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe UI,Apple Color Emoji,Segoe UI Emoji;font-size:1em}.markdown hr{box-sizing:initial;overflow:visible}.markdown input{font:inherit;margin:0;overflow:visible}.markdown [type=checkbox]{box-sizing:border-box;padding:0}.markdown *{box-sizing:border-box}.markdown input{font-family:inherit;font-size:inherit;line-height:inherit}.markdown a{border-bottom:.05em solid;border-color:var(--link-text-color);color:var(--link-text-color);text-decoration:none}.markdown a.anchor{border-bottom:none}.markdown strong{font-weight:700}.markdown hr{background:transparent;border-bottom:1px solid var(--markdown-blockquote-border-color);height:0;margin:15px 0;overflow:hidden}.markdown hr:after,.markdown hr:before{content:"";display:table}.markdown hr:after{clear:both}.markdown table{border-collapse:collapse;border-spacing:0}.markdown td,.markdown th{padding:0}.markdown details summary{cursor:pointer}.markdown h1,.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{color:var(--secondary-text-color);margin-bottom:0;margin-top:0}.markdown h1{font-size:32px}.markdown h1,.markdown h2{font-weight:600}.markdown h2{font-size:24px}.markdown h3{font-size:20px}.markdown h3,.markdown h4{font-weight:600}.markdown h4{font-size:16px}.markdown h5{font-size:14px}.markdown h5,.markdown h6{font-weight:600}.markdown h6{font-size:12px}.markdown p{color:var(--content-text-color);margin-bottom:10px}.markdown blockquote{margin:0}.markdown ol,.markdown ul{margin-bottom:0;margin-top:0;padding-left:0}.markdown ol ol,.markdown ul ol{list-style-type:lower-roman}.markdown ol ol ol,.markdown ol ul ol,.markdown ul ol ol,.markdown ul ul ol{list-style-type:lower-alpha}.markdown dd{margin-left:0}.markdown code,.markdown pre{font-family:sans-serif,Arial,Helvetica,Roboto Mono,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe UI,Apple Color Emoji,Segoe UI Emoji;font-size:12px}.markdown code.language-text{border:1px solid rgba(0,27,55,.1);border-radius:5px;padding:.2em .4em}.markdown :not(pre)>code.language-text{background:var(--button-background-color);color:var(--highlight-color);overflow-wrap:break-word}.markdown pre{margin-bottom:0;margin-top:0}.markdown input::-webkit-inner-spin-button,.markdown input::-webkit-outer-spin-button{appearance:none;margin:0}.markdown :checked+.radio-label{border-color:#0366d6;position:relative;z-index:1}.markdown .border{border:1px solid var(--markdown-border-color)!important}.markdown .border-0{border:0!important}.markdown .border-bottom{border-bottom:1px solid var(--markdown-border-color)!important}.markdown .rounded-1{border-radius:3px!important}.markdown .bg-white{background-color:transparent!important}.markdown .bg-gray-light{background-color:#fafbfc!important}.markdown .text-gray-light{color:#6a737d!important}.markdown .pl-3,.markdown .px-3{padding-left:16px!important}.markdown .px-3{padding-right:16px!important}.markdown .f6{font-size:12px!important}.markdown .lh-condensed{line-height:1.25!important}.markdown .text-bold{font-weight:600!important}.markdown .pl-c{color:#6a737d}.markdown .pl-c1,.markdown .pl-s .pl-v{color:#005cc5}.markdown .pl-e,.markdown .pl-en{color:#6f42c1}.markdown .pl-s .pl-s1,.markdown .pl-smi{color:#24292e}.markdown .pl-ent{color:#22863a}.markdown .pl-k{color:#d73a49}.markdown .pl-pds,.markdown .pl-s,.markdown .pl-s .pl-pse .pl-s1,.markdown .pl-sr,.markdown .pl-sr .pl-cce,.markdown .pl-sr .pl-sra,.markdown .pl-sr .pl-sre{color:#032f62}.markdown .pl-smw,.markdown .pl-v{color:#e36209}.markdown .pl-bu{color:#b31d28}.markdown .pl-ii{background-color:#b31d28;color:#fafbfc}.markdown .pl-c2{background-color:#d73a49;color:#fafbfc}.markdown .pl-c2:before{content:"^M"}.markdown .pl-sr .pl-cce{color:#22863a;font-weight:700}.markdown .pl-ml{color:#735c0f}.markdown .pl-mh,.markdown .pl-mh .pl-en,.markdown .pl-ms{color:#005cc5;font-weight:700}.markdown .pl-mi{color:#24292e;font-style:italic}.markdown .pl-mb{color:#24292e;font-weight:700}.markdown .pl-md{background-color:#ffeef0;color:#b31d28}.markdown .pl-mi1{background-color:#f0fff4;color:#22863a}.markdown .pl-mc{background-color:#ffebda;color:#e36209}.markdown .pl-mi2{background-color:#005cc5;color:#f6f8fa}.markdown .pl-mdr{color:#6f42c1;font-weight:700}.markdown .pl-ba{color:#586069}.markdown .pl-sg{color:#959da5}.markdown .pl-corl{color:#032f62;text-decoration:underline}.markdown .mb-0{margin-bottom:0!important}.markdown .my-2{margin-bottom:8px!important;margin-top:8px!important}.markdown .pl-0{padding-left:0!important}.markdown .py-0{padding-bottom:0!important;padding-top:0!important}.markdown .pl-1{padding-left:4px!important}.markdown .pl-2{padding-left:8px!important}.markdown .py-2{padding-bottom:8px!important;padding-top:8px!important}.markdown .pl-3{padding-left:16px!important}.markdown .pl-4{padding-left:24px!important}.markdown .pl-5{padding-left:32px!important}.markdown .pl-6{padding-left:40px!important}.markdown .pl-7{padding-left:48px!important}.markdown .pl-8{padding-left:64px!important}.markdown .pl-9{padding-left:80px!important}.markdown .pl-10{padding-left:96px!important}.markdown .pl-11{padding-left:112px!important}.markdown .pl-12{padding-left:128px!important}.markdown hr{border-bottom-color:#eee}.markdown kbd{background-color:#fafbfc;border:1px solid #d1d5da;border-radius:3px;box-shadow:inset 0 -1px 0 #d1d5da;color:#444d56;display:inline-block;font:11px SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;line-height:10px;padding:3px 5px;vertical-align:middle}.markdown:after,.markdown:before{content:"";display:table}.markdown:after{clear:both}.markdown>:first-child{margin-top:0!important}.markdown>:last-child{margin-bottom:0!important}.markdown a:not([href]){color:inherit;text-decoration:none}.markdown blockquote,.markdown details,.markdown dl,.markdown ol,.markdown p,.markdown pre,.markdown table,.markdown ul{margin:1em 0}.markdown p{margin:1.625em 0}.markdown hr{background-color:var(--markdown-border-color);border:0;height:.25em;margin:24px 0;padding:0}.markdown blockquote{background-color:var(--button-background-color);border-left:.25em solid var(--markdown-blockquote-border-color);border-radius:5px;color:var(--content-text-color);padding:1.5em 1em}.markdown blockquote>:first-child{margin-top:0}.markdown blockquote>:last-child{margin-bottom:0}.markdown h1,.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{font-weight:600;line-height:1.25;margin-bottom:16px;margin-top:2.2em}.markdown h1{font-size:2em}.markdown h2{font-size:1.5em}.markdown h3{font-size:1.25em}.markdown h4{font-size:1em}.markdown h5{font-size:.875em}.markdown h6{color:#6a737d;font-size:.85em}.markdown ol,.markdown ul{padding-left:2em}.markdown ol ol,.markdown ol ul,.markdown ul ol,.markdown ul ul{margin-bottom:0;margin-top:0}.markdown ol{list-style-type:decimal}.markdown ul{list-style-type:disc}.markdown li{word-wrap:break-all;display:list-item;text-align:-webkit-match-parent}.markdown li>p{margin-top:16px}.markdown li+li{margin-top:.25em}.markdown dl{padding:0}.markdown dl dt{font-size:1em;font-style:italic;font-weight:600;margin-top:16px;padding:0}.markdown dl dd{margin-bottom:16px;padding:0 16px}.markdown table{display:block;overflow:auto;width:100%}.markdown table th{font-weight:600}.markdown table td,.markdown table th{border:1px solid var(--markdown-table-border-color);padding:6px 13px;vertical-align:middle}.markdown table tr{border-top:1px solid var(--markdown-table-border-color)}.markdown figcaption{font-size:14px;margin-bottom:1.325rem}.markdown img{background-color:transparent;box-sizing:initial;display:block;margin:0 auto;max-width:100%}.markdown img[align=right]{padding-left:20px}.markdown img[align=left]{padding-right:20px}.markdown code{background-color:rgba(27,31,35,.05);border-radius:3px;font-size:85%;margin:0;padding:.2em .4em}.markdown pre{word-wrap:normal}.markdown pre>code{background:transparent;border:0;font-size:100%;margin:0;padding:0;white-space:pre;word-break:normal}.markdown .highlight{margin-bottom:16px}.markdown .highlight pre{margin-bottom:0;word-break:normal}.markdown .highlight pre,.markdown pre{background-color:#f6f8fa;border-radius:3px;font-size:85%;line-height:1.45;overflow:auto;padding:16px}.markdown pre code{word-wrap:normal;background-color:initial;border:0;display:inline;line-height:inherit;margin:0;max-width:auto;overflow:visible;padding:0}.markdown .commit-tease-sha{color:#444d56;display:inline-block;font-family:sans-serif,Arial,Helvetica,Roboto Mono,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe UI,Apple Color Emoji,Segoe UI Emoji;font-size:90%}.markdown .full-commit .btn-outline:not(:disabled):hover{border-color:#005cc5;color:#005cc5}.markdown .blob-wrapper{overflow-x:auto;overflow-y:hidden}.markdown .blob-wrapper-embedded{max-height:240px;overflow-y:auto}.markdown .blob-num{color:rgba(27,31,35,.3);cursor:pointer;font-family:sans-serif,Arial,Helvetica,Roboto Mono,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe UI,Apple Color Emoji,Segoe UI Emoji;font-size:12px;line-height:20px;min-width:50px;padding-left:10px;padding-right:10px;text-align:right;-webkit-user-select:none;user-select:none;vertical-align:top;white-space:nowrap;width:1%}.markdown .blob-num:hover{color:rgba(27,31,35,.6)}.markdown .blob-num:before{content:attr(data-line-number)}.markdown .blob-code{line-height:20px;padding-left:10px;padding-right:10px;position:relative;vertical-align:top}.markdown .blob-code-inner{word-wrap:normal;color:#24292e;font-family:sans-serif,Arial,Helvetica,Roboto Mono,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe UI,Apple Color Emoji,Segoe UI Emoji;font-size:12px;overflow:visible;white-space:pre}.markdown .pl-token.active,.markdown .pl-token:hover{background:#ffea7f;cursor:pointer}.markdown .tab-size[data-tab-size="1"]{tab-size:1}.markdown .tab-size[data-tab-size="2"]{tab-size:2}.markdown .tab-size[data-tab-size="3"]{tab-size:3}.markdown .tab-size[data-tab-size="4"]{tab-size:4}.markdown .tab-size[data-tab-size="5"]{tab-size:5}.markdown .tab-size[data-tab-size="6"]{tab-size:6}.markdown .tab-size[data-tab-size="7"]{tab-size:7}.markdown .tab-size[data-tab-size="8"]{tab-size:8}.markdown .tab-size[data-tab-size="9"]{tab-size:9}.markdown .tab-size[data-tab-size="10"]{tab-size:10}.markdown .tab-size[data-tab-size="11"]{tab-size:11}.markdown .tab-size[data-tab-size="12"]{tab-size:12}.markdown .task-list-item{list-style-type:none}.markdown .task-list-item+.task-list-item{margin-top:3px}.markdown .task-list-item input{margin:0 .2em .25em -1.6em;vertical-align:middle}.markdown .table-of-contents{align-items:flex-start;display:flex;flex-direction:column;justify-content:center;position:fixed;right:0;top:75px;width:340px}.markdown .table-of-contents ul{cursor:pointer;list-style-type:none}.markdown .table-of-contents ul li a{border-bottom:none;color:var(--secondary-text-color);font-size:14px;height:30px;padding:6px 2px;width:100%}.markdown .table-of-contents ul p{margin:0}.markdown .gatsby-resp-image-wrapper{display:flex!important;justify-content:center!important;min-width:100%;width:100%!important}.markdown .gatsby-resp-image-wrapper img{height:auto!important;max-width:100%!important;min-width:100%;position:relative!important;width:auto!important}.markdown .gatsby-resp-image-wrapper+em{color:#6a737d;display:block;font-size:16px;font-style:italic;text-align:center}html{--background-color:#fff;--background-transparent-color:#ffffff36;--header-bottom-color:hsla(0,2%,92%,.437);--highlight-color:#6c63ff;--highlight-hover-color:#5048f3;--introduce-text-color:#f5f5f5;--light-text-color:#a8a8a8;--primary-text-color:#0f172a;--secondary-text-color:#0f172a;--content-text-color:#334151;--button-background-color:#f3f3f4;--button-text-color:#363f47;--tab-text-color:#6e6d7a;--tab-hover-text-color:#0d0c22;--tab-selected-background-color:rgba(13,12,34,.05);--bio-link-icon-color:rgba(0,0,0,.54);--about-link-icon-color:#6c63ff;--chip-background-color:#f5f5f5;--chip-color:#171717;--link-text-color:#6e6d7a;--post-card-border-color:#6c63ff;--markdown-table-even-cell-background-color:#f6f8fa;--markdown-table-border-color:#dfe2e5;--markdown-blockquote-border-color:#6c63ff;--markdown-border-color:#e1e4e8}html[data-theme=dark]{--background-color:#232326;--background-transparent-color:#2323267a;--primary-text-color:#e2e8f0;--introduce-text-color:#e2e8f0;--secondary-text-color:#e2e8f0;--content-text-color:#cbd5e1;--header-bottom-color:#393939;--light-text-color:#a8a8a8;--button-background-color:#353535;--button-text-color:#cbd5e1;--tab-text-color:#cbd5e1;--tab-hover-text-color:#acbac7;--tab-selected-background-color:#35353;--chip-background-color:#1b1b1b;--chip-color:#f9f9f9;--bio-link-icon-color:#cbd5e1;--about-link-icon-color:#6c63ff;--link-text-color:#90b0ec;--post-card-border-color:#363f47;--markdown-table-even-cell-background-color:#2d333b;--markdown-table-border-color:#444c56;--markdown-blockquote-border-color:#6c63ff;--markdown-border-color:#e1e4e8}.post-content{display:flex;flex-direction:column;justify-content:center;margin-bottom:20px;width:100%}img.gatsby-resp-image-image,pre.language-typescript{border:1px solid rgba(0,27,55,.1);border-radius:12px}img.gatsby-resp-image-image{width:100%!important}.adsense-wrapper{max-width:100%;width:100%}.adsense-wrapper ins.adsbygoogle{display:block!important;max-width:100%!important}.category-page-header-wrapper{align-items:center;display:flex;flex-direction:column;justify-content:center;margin-bottom:30px;margin-top:30px}.category-page-header-wrapper .category-page-title{border-bottom:3px solid var(--highlight-color);font-size:40px;font-weight:700;margin-bottom:15px;padding-bottom:7px;text-align:center;width:fit-content}.category-page-header-wrapper .category-page-subtitle{font-size:20px;font-weight:500;padding-bottom:10px;text-align:center}.post-card-wrapper{display:flex;justify-content:center;min-height:150px;padding-bottom:20px;padding-top:5px;width:100%}.post-card-wrapper .post-card{color:var(--primary-text-color);display:flex;flex-direction:column;height:100%;max-width:1200px;width:100%}@media(min-width:700px){.post-card-wrapper .post-card{margin-bottom:0}}.post-card-wrapper .post-card:hover .title{color:var(--highlight-color);transition-duration:.5s}.post-card-wrapper .post-card:hover .thumbnail{box-shadow:0 10px 36px 0 rgba(0,0,0,.16),0 0 0 1px rgba(0,0,0,.06);transform:translateY(-8px);transition-duration:.5s}.post-card-wrapper .post-card .thumbnail{border-radius:14px;isolation:isolate;margin:0 0 20px;transition:.2s ease-in-out;width:100%}@media(min-width:700px){.post-card-wrapper .post-card .thumbnail{margin-right:48px;min-height:200px;min-width:200px}}.post-card-wrapper .post-card .title{font-size:26px;font-weight:600;line-height:1.4;margin-bottom:12px}@media(min-width:700px){.post-card-wrapper .post-card .title{font-size:16px}}.post-card-wrapper .post-card .description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--secondary-text-color);display:-webkit-box;font-size:14px;line-height:1.5;margin-bottom:10px;overflow:hidden;text-overflow:ellipsis}.post-card-wrapper .post-card .info{color:var(--light-text-color);display:flex;font-size:14px;margin-top:auto}.post-card-wrapper .post-card .info .categories{display:flex}.post-card-wrapper .post-card .info .categories .category{color:var(--highlight-color);font-weight:600;margin-left:5px}.post-card-wrapper .post-card .info .categories .category:hover{color:var(--highlight-hover-color)}.post-tabs-latest p{color:var(--secondary-text-color);font-size:14px;font-weight:500;padding:0}.post-card-column-wrapper{display:flex;justify-content:center;width:100%}.post-card-column-wrapper .post-card-column{display:grid;gap:2rem;margin-top:20px;width:100%}@media(min-width:700px){.post-card-column-wrapper .post-card-column{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1080px){.post-card-column-wrapper .post-card-column{grid-template-columns:repeat(3,minmax(0,1fr))}}.post-card-column-wrapper .post-card-column .post-card-wrapper{margin-bottom:10px}.post-card-column-more{display:flex;justify-content:center;margin-top:2.4rem}.post-card-column-more button{animation:jittery 4s infinite;animation-delay:10s;background-color:var(--highlight-color);color:var(--introduce-text-color);font-size:16px;font-weight:700;height:40px;width:200px}.post-card-column-more button:hover{background-color:var(--highlight-hover-color)}@keyframes jittery{5%,50%{transform:scale(1)}10%{transform:scale(.9)}15%{transform:scale(1.15)}20%{transform:scale(1.15) rotate(-5deg)}25%{transform:scale(1.15) rotate(5deg)}30%{transform:scale(1.15) rotate(-3deg)}35%{transform:scale(1.15) rotate(2deg)}40%{transform:scale(1.15) rotate(0)}}.post-tabs-wrapper{align-self:flex-start;display:flex;flex-direction:column;justify-content:center;top:0;width:100%}.post-tabs-wrapper .post-tabs{display:flex;height:40px;justify-content:center;margin-bottom:32px;max-width:1240px;padding:.375rem 0;width:100%}.post-tabs-wrapper .post-tabs .mui-tabs .MuiTab-root{color:var(--tab-text-color);font-family:sans-serif,Arial,Helvetica,Roboto Mono,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe UI,Apple Color Emoji,Segoe UI Emoji;font-size:17px;font-weight:500;height:40px;min-height:auto;min-width:auto;padding:10px 12px;transition:all .2s ease}.post-tabs-wrapper .post-tabs .mui-tabs .Mui-selected,.post-tabs-wrapper .post-tabs .mui-tabs .MuiTab-root :hover{color:var(--tab-hover-text-color);transition:all .2s ease}.post-tabs-wrapper .post-tabs .mui-tabs .Mui-selected{background-color:var(--tab-selected-background-color);border-radius:8px;font-weight:600}.post-tabs-wrapper .post-tabs .mui-tabs .MuiTabScrollButton-root{height:40px;width:20px}.post-tabs-wrapper .post-tabs .mui-tabs .MuiTabs-scrollable{height:40px}.post-tabs-wrapper .post-tabs .mui-tabs .MuiTabs-indicator{display:none}