:root{--color-primary:rgb(124, 181, 185);--color-primary-hover:rgb(169, 220, 224);--color-primary-light:rgb(169, 220, 224);--color-accent:rgb(169, 220, 224);--color-accent-hover:rgb(169, 220, 224);--color-accent-light:rgb(169, 220, 224);--color-code:#6ca5aa;--color-code-bg:rgba(218, 240, 255, 0.2);--color-pre-bg:#f6f8fa;--color-pre-shadow:#e1e4e8;--color-pre-text:#333;--color-bg:#ffffff;--color-bg-light:#ffffff;--color-text:#1f2937;--color-text-muted:#6b7280;--color-border:#e5e7eb}.text-indigo-500{color:var(--color-primary)!important}.hover\:text-indigo-600:hover{color:var(--color-primary-hover)!important}.text-indigo-600{color:var(--color-primary-hover)!important}.bg-white{background-color:var(--color-bg-light)!important}.text-black,.text-gray-900{color:var(--color-text)!important}.text-gray-700,.text-gray-600,.text-gray-500{color:var(--color-text-muted)!important}.border-gray-200,.divide-gray-200>:not([hidden])~:not([hidden]){border-color:var(--color-border)!important}@import 'https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css';@import 'https://api.fontshare.com/v2/css?f[]=satoshi@1,2,3,4,5,6,7,8,9&display=swap';@font-face{font-family:cygnito mono;src:url(/fonts/cygnito-mono-regular.woff2)format('woff2');font-weight:400;font-style:normal;font-display:swap}html,body,p,div,h1,h2,h3,h4,h5,h6{font-family:manrope,pretendard,-apple-system,BlinkMacSystemFont,system-ui,sans-serif!important}p{line-height:1.8em!important}:lang(ko){font-family:wanted-sans,manrope,-apple-system,BlinkMacSystemFont,system-ui,sans-serif!important}article,section,main,.content,li,blockquote{line-height:1.8em}code,pre,.highlight{font-family:sf mono,Monaco,inconsolata,roboto mono,source code pro,monospace!important}code{font-weight:600;padding:2px 4px;font-size:.875rem;color:var(--color-code);background-color:var(--color-code-bg);border-radius:3px}pre,.highlight{display:block;margin:20px 0;padding:16px;font-size:1rem;line-height:1.8;white-space:pre-wrap;word-break:break-all;background-color:var(--color-pre-bg)!important;box-shadow:0 1px 3px var(--color-pre-shadow);border-radius:12px;width:100%;box-sizing:border-box}.highlight pre{margin:0;padding:16px;background-color:initial!important;box-shadow:none}pre code,.highlight code,.highlight pre code{padding:0;font-size:.875rem;color:var(--color-pre-text)!important;background-color:initial!important}.chroma{background-color:var(--color-pre-bg)!important;border-radius:12px;padding:16px;margin:24px 0}.chroma code{color:var(--color-pre-text)!important;background:0 0!important}code .hll{background-color:#f0f5fa}code .c,code .cm,code .c1,code .cp,code .cs,code .sd{color:#969896;font-style:italic}code .err,code .gr,code .gt,code .ge{color:#d21d00}code .err{background-color:#ffdce0}code .k,code .kc,code .kd,code .kn,code .kp,code .kr,code .kt{color:#a71d5d}code .o,code .ow{color:#333}code .gd{background-color:#ffdce0;border:1px solid #d21d00}code .gi{background-color:#e6ffec;border:1px solid #2da44e}code .gh,code .gu{color:#795da3;font-weight:700}code .go,code .gp,code .gs{color:#333}code .m,code .mf,code .mh,code .mi,code .mo,code .il{color:#0086b3}code .s,code .s1,code .s2,code .sb,code .sc,code .se,code .sh,code .si,code .sx,code .sr,code .ss{color:#4180c6}code .na,code .nf,code .nd,code .nn,code .bp,code .nl{color:#795da3}code .nc{color:#0086b3}code .no{color:#795da3}code .ni,code .nv,code .vc,code .vg,code .vi{color:#ed6a43}code .ne{color:#d21d00}code .nt{color:#63a3a4}code .w{color:#333}.css .o,.css .o+.nt,.css .nt+.nt{color:#a71d5d}.prose img,.content img{margin-bottom:40px}header img{margin-bottom:0!important}header a{display:inline-flex;align-items:center}body{background-color:var(--color-bg)!important}.spacer{height:20px;margin:10px 0}.divider{border:none;border-top:1px solid var(--color-border);margin:20px 0;opacity:.3}.tag-chip{display:inline-flex;align-items:center;justify-content:center;padding:.25rem .75rem;border-radius:6px;background-color:rgba(var(--color-accent-light),.1);color:var(--color-primary);font-size:.75rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;text-decoration:none;border:1px solid color-mix(in srgb,var(--color-primary) 20%,white);transition:all .2s ease}.tag-chip:hover{color:var(--color-primary-hover);background-color:color-mix(in srgb,var(--color-primary) 14%,white);border-color:color-mix(in srgb,var(--color-primary) 35%,white)}.article-banner-wrap{border-radius:16px}.article-meta-group>*+*{margin-top:1rem}.line-clamp-3 h1,.line-clamp-3 h2,.line-clamp-3 h3,.line-clamp-3 h4{font-size:inherit!important;font-weight:inherit!important;line-height:inherit!important;margin:0!important;color:inherit!important}.article-tag-row{padding-top:.25rem}@media(min-width:1280px){.article-tag-row{padding-bottom:1.5rem}}.article-meta-to-banner{margin-top:2.5rem}@media(min-width:640px){.article-meta-to-banner{margin-top:3rem}}.article-banner-image{width:100%;border-radius:16px;clip-path:inset(0 round 16px)}h2{color:var(--color-primary)!important}header a[aria-label] span{font-family:cygnito mono,monospace!important;font-size:1.25rem!important;letter-spacing:-.03em;color:#ff6254;transition:color .2s ease}header a[aria-label]:hover span{color:var(--color-accent-hover)!important;background-color:initial!important}table{width:100%!important;box-sizing:border-box}table th{font-size:.875em!important}table td{font-size:.875em!important}@media(min-width:1280px){.grid-rows-\[auto_1fr\]{column-gap:2.5rem}}.prose div[style*="grid-template-columns: 1.5fr 1fr"],.prose div[style*="grid-template-columns:1.5fr 1fr"],.content div[style*="grid-template-columns: 1.5fr 1fr"],.content div[style*="grid-template-columns:1.5fr 1fr"]{display:grid!important;grid-template-columns:1.5fr 1fr!important;gap:1.5rem!important;margin:1.5rem 0!important;align-items:start!important;width:100%!important;box-sizing:border-box!important}.prose div[style*="grid-template-columns: 1.5fr 1fr"]>div,.prose div[style*="grid-template-columns:1.5fr 1fr"]>div,.content div[style*="grid-template-columns: 1.5fr 1fr"]>div,.content div[style*="grid-template-columns:1.5fr 1fr"]>div{min-width:0;box-sizing:border-box}.prose div[style*="grid-template-columns: 1.5fr 1fr"] img,.prose div[style*="grid-template-columns:1.5fr 1fr"] img,.content div[style*="grid-template-columns: 1.5fr 1fr"] img,.content div[style*="grid-template-columns:1.5fr 1fr"] img{width:100%!important;height:auto!important;display:block!important;margin:0!important;margin-bottom:0!important}@media screen and (max-width:768px){.prose div[style*="grid-template-columns: 1.5fr 1fr"],.prose div[style*="grid-template-columns:1.5fr 1fr"],.content div[style*="grid-template-columns: 1.5fr 1fr"],.content div[style*="grid-template-columns:1.5fr 1fr"]{grid-template-columns:1fr!important;gap:1rem!important}.prose div[style*="grid-template-columns: 1fr 1fr"],.prose div[style*="grid-template-columns:1fr 1fr"],.content div[style*="grid-template-columns: 1fr 1fr"],.content div[style*="grid-template-columns:1fr 1fr"]{grid-template-columns:1fr!important;gap:1rem!important}}mjx-container[display=true],.MathJax-display{display:block!important;margin:24px 0!important;padding:32px 40px!important;background-color:#f8fcff!important;box-shadow:0 0 8px #D8E5EE!important;border-radius:12px!important;width:100%!important;box-sizing:border-box!important;overflow-x:auto!important}mjx-container[display=false],.MathJax{display:inline!important}.lang-toggle{display:inline-flex;align-items:center;border-radius:999px;border:1px solid var(--color-border);overflow:hidden}.lang-toggle__item{display:inline-flex;align-items:center;justify-content:center;padding:.2rem .6rem;font-family:satoshi,sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:lowercase;text-decoration:none;color:var(--color-text-muted);transition:all .2s ease;cursor:pointer}.lang-toggle__item--active{background-color:var(--color-primary);color:#fff;cursor:default}a.lang-toggle__item:hover{color:var(--color-primary)}.language-switch-link{display:inline-flex;align-items:center;justify-content:center;padding:.25rem .75rem;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-primary);background-color:var(--color-primary-light);border-radius:999px;text-decoration:none;transition:all .2s ease}.language-switch-link:hover{background-color:var(--color-primary);color:#fff}