:root[data-sky=night]{--paper:#12161f;--ink:#f1ede4;--text:#d8d4ca;--muted:#8d939e;--link:#a9bdf2;--link-hover:#d2ddfb;--rule:#262c38;--tint:#1a1f2a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.blog{--font-head:var(--font-bitter), var(--font-kr), "Apple SD Gothic Neo", "Malgun Gothic", Georgia, serif;max-width:1240px;margin:24px auto 80px;padding:0 24px}.blog .masthead{margin-bottom:40px}.blog-masthead-compact{margin-bottom:28px}.blog-masthead-compact a{display:inline-block}.blog .blog-masthead-compact .ink{width:150px}.blog-grid{grid-template-columns:190px minmax(0,1fr) 210px;align-items:start;column-gap:56px;display:grid}.blog-main{min-width:0}.blog-left,.blog-right{scrollbar-width:none;max-height:calc(100vh - 48px);padding-top:4px;font-size:15px;position:sticky;top:24px;overflow-y:auto}.side-title{font-family:var(--font-head);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;font-size:12px;font-weight:600}.side-list{margin:0 0 32px;padding:0;list-style:none}.side-list li{margin:0;padding:0}.side-list a{color:var(--text);justify-content:space-between;align-items:baseline;gap:12px;padding:5px 0;line-height:1.45;text-decoration:none;display:flex}.side-list a:hover{color:var(--ink)}.side-list a[aria-current=page],.side-list a.is-open{color:var(--ink);font-weight:600}.side-list .count{font-variant-numeric:tabular-nums;color:var(--muted);font-size:13px;font-weight:400}.side-series{border-left:1px solid var(--rule);margin:2px 0 10px;padding:0 0 0 12px;list-style:none}.side-series li{padding:4px 0}.side-series a{-webkit-line-clamp:2;color:var(--muted);-webkit-box-orient:vertical;padding:0;font-size:13.5px;font-weight:400;display:-webkit-box;overflow:hidden}.side-text{color:var(--muted);margin:0 0 32px;font-size:14.5px;line-height:1.65}.toc ul{border-left:1px solid var(--rule);margin:0;padding:0 0 0 12px;list-style:none}.toc li{margin:0;padding:0}.toc a{color:var(--muted);padding:4px 0;font-size:13.5px;line-height:1.5;text-decoration:none;display:block}.toc a:hover{color:var(--ink)}.toc .toc-sub a{padding-left:12px;font-size:13px}.year+.year{margin-top:36px}.year h2{margin:0 0 2px;font-size:22px}.post-list{margin:0;padding:0;list-style:none}.post-item{border-bottom:1px solid var(--rule);margin:0;padding:18px 0}.post-item:last-child{border-bottom:0}.post-title{font-family:var(--font-head);color:var(--ink);font-size:19px;font-weight:500;line-height:1.45;text-decoration:none}.post-title:hover{color:var(--link)}.post-meta{color:var(--muted);margin:4px 0 0;font-size:14px}.post-meta a{color:inherit;-webkit-text-decoration-color:var(--rule);text-decoration-color:var(--rule)}.post-summary{margin:6px 0 0;font-size:15.5px;line-height:1.7}.listing-title{border-bottom:1px solid var(--rule);margin-bottom:28px;padding-bottom:18px}.listing-title h2{margin:0;font-size:28px}.post-header{margin-bottom:36px}.post-header h1{letter-spacing:0;margin:0;font-size:32px;line-height:1.35}.post-header .post-meta{margin-top:12px;font-size:15px}.post-tags{flex-wrap:wrap;gap:2px 14px;margin:4px 0 0;font-size:14px;display:flex}.post-tags a{color:var(--muted);text-decoration:none}.post-tags a:hover{color:var(--ink)}.prose h2{margin:48px 0 12px;font-size:23px}.prose h3{margin:32px 0 8px;font-size:18.5px;font-weight:600}.prose h2,.prose h3{scroll-margin-top:24px}.prose li>ul,.prose li>ol,.prose li>p{margin:4px 0}.prose figure{margin:28px 0}.prose img,.prose video{border-radius:6px;max-width:100%;height:auto;margin:0 auto;display:block}.prose figcaption{text-align:center;color:var(--muted);margin-top:8px;font-size:14px}.prose blockquote{border-left:2px solid var(--ink);margin:24px 0;padding:0 0 0 18px}.prose blockquote p:last-child{margin-bottom:0}.callout{background:var(--tint);border-radius:8px;gap:12px;margin:24px 0;padding:16px 18px;display:flex}.callout-icon{flex:none}.callout-body{min-width:0}.callout-body>:last-child{margin-bottom:0}.code{background:var(--tint);border-radius:8px}.code-language{font-family:var(--font-mono);color:var(--muted);padding:10px 18px 0;font-size:11.5px;display:block}.code pre{font-family:var(--font-mono);color:var(--ink);margin:0;padding:14px 18px 16px;font-size:13.5px;line-height:1.65;overflow-x:auto}.code pre code{font-size:inherit}.mermaid>[role=img]{justify-content:center;display:flex}.mermaid svg{max-width:100%;height:auto}.prose :not(pre)>code{background:var(--tint);border-radius:4px;padding:1px 5px;font-size:.86em}.table{margin:24px 0;overflow-x:auto}.prose table{border-collapse:collapse;width:100%;font-size:15px;line-height:1.6}.prose th,.prose td{border-bottom:1px solid var(--rule);text-align:left;vertical-align:top;padding:9px 12px}.prose th{color:var(--ink);font-weight:600}.prose hr{border:0;border-top:1px solid var(--rule);margin:40px 0}.prose details{margin:16px 0}.prose summary{cursor:pointer}.post-pager{border-top:1px solid var(--rule);grid-template-columns:1fr 1fr;gap:24px;margin-top:56px;padding-top:24px;display:grid}.post-pager a{color:var(--ink);flex-direction:column;gap:2px;line-height:1.5;text-decoration:none;display:flex}.post-pager a:hover span:last-child{text-decoration:underline}.pager-next{text-align:right;grid-column:2}@media (max-width:1100px){.blog-grid{grid-template-columns:180px minmax(0,1fr);column-gap:48px}.blog-right{display:none}}@media (max-width:760px){.blog{padding:0 20px}.blog-grid{display:block}.blog-left{max-height:none;margin-bottom:20px;position:static;overflow:visible}.blog-left .side-title,.blog-left .side-series{display:none}.blog-left .side-list{scrollbar-width:none;border-bottom:1px solid var(--rule);gap:4px 20px;margin:0;padding-bottom:8px;display:flex;overflow-x:auto}.blog-left .side-list>li{flex:none}.post-header h1{font-size:26px}.post-pager{grid-template-columns:1fr}.pager-next{text-align:left;grid-column:1}}@media (max-width:520px){.blog{margin-top:12px}}
