:root{color-scheme:dark;--bg:#101216;--fg:#d6d8dc;--fg-title:#e8dcc6;--fg-muted:#8f939a;--accent:#8aa2ff;--accent-soft:#8aa2ff38;--line:#262a31;--code-bg:#171a20;--font:"Pretendard Variable", Pretendard, "Apple SD Gothic Neo", "Noto Sans KR", "Noto Sans CJK KR", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", "Noto Sans CJK SC", -apple-system, BlinkMacSystemFont, system-ui, "Segoe UI", sans-serif;--font-title:"Noto Serif KR", "Nanum Myeongjo", "AppleMyungjo", "Batang", Georgia, "Times New Roman", serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--measure:40em;--gutter:16px;--step--2:.8125rem;--step--1:.9375rem;--step-0:1.125rem;--step-1:1.3125rem;--step-2:1.5rem;--step-3:clamp(1.75rem, 1.2rem + 2vw, 2.5rem);--leading:1.7;--leading-tight:1.25;--space-1:.25rem;--space-2:.5rem;--space-3:1rem;--space-4:1.5rem;--space-5:2.5rem;--space-6:4rem;--header-h:56px;--ease:cubic-bezier(.2, 0, 0, 1);--jewel-a:#8aa2ff;--jewel-b:#6fe0c8;--jewel-c:#c1a8ff;--jewel-gloss:#fffffff2;--jewel-soft:#8aa2ff42}:root[data-theme=light]{color-scheme:light;--bg:#f6f2ea;--fg:#2a2c31;--fg-title:#1f2228;--fg-muted:#65666a;--accent:#2b55d6;--accent-soft:#2b55d624;--line:#e2dccf;--code-bg:#ede7db;--jewel-a:#2b55d6;--jewel-b:#2fb5a0;--jewel-c:#7a5af5;--jewel-gloss:#ffffffd9;--jewel-soft:#2b55d629}@media (width<=480px){:root{--step-0:1.0625rem;--header-h:48px}}*,:before,:after{box-sizing:border-box}html{scroll-padding-top:calc(var(--header-h) + 1.5rem);-webkit-text-size-adjust:100%;text-size-adjust:100%;scrollbar-color:var(--line) transparent}body{background:var(--bg);color:var(--fg);font-family:var(--font);font-size:var(--step-0);line-height:var(--leading);font-feature-settings:"tnum" 1;word-break:keep-all;overflow-wrap:anywhere;-webkit-font-smoothing:antialiased;margin:0}::selection{background:var(--jewel-soft);color:var(--accent)}.theme-toggle{appearance:none;color:var(--fg-muted);width:24px;height:24px;margin-left:var(--space-1);cursor:pointer;transition:color .15s var(--ease), box-shadow .3s var(--ease);background:0 0;border:0;border-radius:50%;place-items:center;padding:4px;display:inline-grid}.theme-toggle svg{width:16px;height:16px;transition:opacity .25s var(--ease), transform .4s var(--ease);grid-area:1/1}.theme-toggle:hover{color:var(--accent);box-shadow:0 0 0 4px var(--jewel-soft)}.theme-toggle .icon-moon{opacity:0;transform:rotate(-60deg)scale(.7)}:root[data-theme=light] .theme-toggle .icon-sun{opacity:0;transform:rotate(60deg)scale(.7)}:root[data-theme=light] .theme-toggle .icon-moon{opacity:1;transform:none}body{transition:background-color .25s var(--ease), color .25s var(--ease)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}a{color:inherit;text-decoration:underline 1px;text-decoration-color:var(--fg-muted);text-underline-offset:.18em;transition:text-decoration-color .15s var(--ease), text-underline-offset .15s var(--ease), color .15s var(--ease)}a:hover{text-decoration-color:var(--accent);text-underline-offset:.24em;color:var(--accent)}.post-body a{background-image:linear-gradient(90deg, var(--fg-muted), var(--fg-muted));transition:color .15s var(--ease);background-position:0 100%;background-repeat:no-repeat;background-size:100% 1px;padding-bottom:1px;text-decoration:none}.post-body a:hover{color:var(--accent);background-image:linear-gradient(90deg, var(--jewel-a) 0%, var(--jewel-b) 22%, var(--jewel-gloss) 34%, var(--jewel-c) 48%, var(--jewel-a) 70%, var(--jewel-b) 100%);background-position:0 100%;background-size:320% 2px;animation:2.2s linear infinite shimmer}@keyframes shimmer{0%{background-position:0 100%}to{background-position:320% 100%}}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}@media (prefers-reduced-motion:reduce){.post-body a:hover,.post-list li:hover :is(h2,h3) a{animation:none}.theme-toggle,.theme-toggle svg,.post-list-thumb img{transition:none}}.wrap{max-width:var(--measure);padding-inline:var(--gutter);margin-inline:auto}.site-header{height:var(--header-h);justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.site-header-bar{z-index:10;background:color-mix(in srgb, var(--bg) 52%, transparent);backdrop-filter:blur(12.6px)saturate(1.5);border-bottom:1px solid color-mix(in srgb, var(--line) 70%, transparent);transition:background-color .25s var(--ease);position:sticky;top:0}@supports not (backdrop-filter:blur(1px)){.site-header-bar{background:var(--bg)}}.site-header a{color:inherit;text-decoration:none}.site-header a:hover{color:var(--accent)}.site-title{font-family:var(--font-title);letter-spacing:0;color:var(--fg-title);font-weight:600}.site-header nav{align-items:center;gap:var(--space-1);font-size:var(--step--2);letter-spacing:.02em;color:var(--fg-muted);display:flex}.site-header nav a{transition:color .15s var(--ease), box-shadow .3s var(--ease);border-radius:999px;padding:.3em .75em;line-height:1.3;display:inline-block}.site-header nav a:hover,.site-header nav a:focus-visible{color:var(--accent);box-shadow:0 0 0 4px var(--jewel-soft);outline:none}.site-header nav a.nav-subscribe{color:var(--fg);box-shadow:inset 0 0 0 1px var(--line)}.site-header nav a.nav-subscribe:hover,.site-header nav a.nav-subscribe:focus-visible{color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent), 0 0 0 4px var(--jewel-soft)}.site-title,.site-header nav a{white-space:nowrap}@media (width<=480px){.site-header{gap:var(--space-2)}.site-header nav{gap:0}.site-header nav a{padding-inline:.45em}}@media (width<=400px){.site-header{gap:var(--space-1)}.site-title{font-size:.9rem}.site-header nav a{padding-inline:.28em}.theme-toggle{margin-left:0}}main{padding-block:clamp(2.5rem, 1.5rem + 3vw, 4.5rem) var(--space-5)}@media (width<=480px){main{padding-block:var(--space-5) var(--space-5)}}.home-heading{margin:0 0 var(--space-5);font-size:var(--step-3);line-height:var(--leading-tight);letter-spacing:-.01em;color:var(--fg-title);font-weight:700;font-family:var(--font-title)}.list-heading{margin:0 0 var(--space-1);font-size:var(--step-3);line-height:var(--leading-tight);letter-spacing:-.01em;color:var(--fg-title);font-weight:700;font-family:var(--font-title)}.list-count{margin:0 0 var(--space-4);color:var(--fg-muted);font-size:var(--step--1)}.post-list{margin:0;padding:0;list-style:none}.post-list li{border-top:1px solid var(--line);padding-block:2rem}.post-list li:first-child{border-top:0;padding-top:0}.post-list time{font-size:var(--step--1);color:var(--fg-muted);font-variant-numeric:tabular-nums;display:block}.post-list h2{margin:var(--space-1) 0 var(--space-2);font-size:var(--step-2);letter-spacing:-.005em;text-wrap:balance;color:var(--fg-title);font-weight:600;line-height:1.4;font-family:var(--font-title)}.post-list :is(h2,h3) a{transition:color .15s var(--ease);background-image:linear-gradient(90deg,#0000,#0000);background-position:0 100%;background-repeat:no-repeat;background-size:100% 1px;padding-bottom:1px;text-decoration:none}.post-list li:hover h2 a{color:var(--accent);background-image:linear-gradient(90deg, var(--jewel-a) 0%, var(--jewel-b) 22%, var(--jewel-gloss) 34%, var(--jewel-c) 48%, var(--jewel-a) 70%, var(--jewel-b) 100%);background-size:320% 2px;animation:2.2s linear infinite shimmer}.post-list li.has-thumb{gap:var(--space-4);grid-template-columns:minmax(0,1fr) 168px;align-items:start;display:grid}.post-list-thumb{border-radius:4px;margin-top:.35rem;display:block;overflow:hidden}.post-list-thumb img{object-fit:cover;width:168px;height:112px;transition:transform .6s var(--ease), filter .6s var(--ease);display:block}.post-list li:hover .post-list-thumb img{transform:scale(1.05)}:root:not([data-theme=light]) .post-list-thumb img{filter:brightness(.88)}:root:not([data-theme=light]) .post-list li:hover .post-list-thumb img{filter:brightness()}@media (width<=480px){.post-list li.has-thumb{gap:var(--space-3);grid-template-columns:minmax(0,1fr) 96px}.post-list-thumb img{width:96px;height:64px}}.post-list p{color:var(--fg-muted);font-size:var(--step--1);text-wrap:pretty;margin:0;line-height:1.6}.site-footer{gap:var(--space-3);padding-block:var(--space-4) var(--space-5);border-top:1px solid var(--line);color:var(--fg-muted);font-size:var(--step--2);flex-wrap:wrap;display:flex}.site-footer a{text-decoration:none}.site-footer a:hover{text-decoration:underline}.plain h1{font-size:var(--step-3);line-height:var(--leading-tight);letter-spacing:-.01em;color:var(--fg-title);font-family:var(--font-title);margin:0 0 var(--space-3)}.post-header{margin-bottom:var(--space-4)}.post-meta{margin:0 0 var(--space-2);color:var(--fg-muted);font-size:var(--step--1);gap:var(--space-1) var(--space-3);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;display:flex}.post-reading{margin-top:calc(.15rem - var(--space-1));font-size:calc(var(--step--2) * .85);letter-spacing:.01em;flex-basis:100%;order:1;line-height:1.3}.post-subscribe{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--line)}.post-subscribe-lead{font-family:var(--font-title);font-size:var(--step-1);color:var(--fg-title);margin:0;line-height:1.4}.post-subscribe .sub-hint{margin:0}.post-subscribe .sub-hint a{color:inherit}.post-subscribe .sub-hint a:hover{color:var(--accent)}.post-footer{margin-top:var(--space-5);gap:var(--space-3);font-size:var(--step--1);flex-direction:column;display:flex}.post h1{font-size:var(--step-3);letter-spacing:-.01em;color:var(--fg-title);font-weight:700;line-height:1.25;font-family:var(--font-title);text-wrap:balance;margin:0}.post-tags{gap:var(--space-1) var(--space-3);color:var(--fg-muted);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.post-tags a{text-decoration:none}.post-tags a:before{content:"#";opacity:.6}.post-tags a:hover{text-decoration:underline}.post-cover{margin:var(--space-4) 0 0}.post-cover img{border-radius:4px;width:100%;height:auto;display:block}.post-cover figcaption{font-size:var(--step--2);color:var(--fg-muted);text-align:center;margin-top:.6em}:root:not([data-theme=light]) :is(.post-cover img,.post-body img){filter:brightness(.88)}.post-body{font-size:calc(var(--step-0) * .95);line-height:var(--leading)}.post-body>:first-child{margin-top:0}.post-body p{text-wrap:pretty;margin:0 0 1.4em}.post-body h2,.post-body h3,.post-body h4{letter-spacing:-.005em;color:var(--fg-title);font-weight:600;line-height:1.35;font-family:var(--font-title);margin:2.2em 0 .7em}.post-body h2{font-size:var(--step-2)}.post-body h3{font-size:var(--step-1)}.post-body h4{font-size:var(--step-0)}.post-body ul,.post-body ol{margin:0 0 1.4em;padding-left:1.4em}.post-body li{margin-bottom:.4em}.post-body li>p{margin-bottom:.6em}.post-body blockquote{border-left:1px solid var(--fg-muted);color:var(--fg-muted);margin:1.6em 0;padding-left:1.2em}.post-body blockquote p:last-child{margin-bottom:0}.post-body hr{border:0;border-top:1px solid var(--line);margin:2.4em 0}.post-body img,.post-body video{border-radius:4px;max-width:100%;height:auto;margin:1.8em auto;display:block}.post-body figure{margin:1.8em 0}.post-body figure img,.post-body figure video{margin:0}.post-body figcaption{font-size:var(--step--2);color:var(--fg-muted);text-align:center;margin-top:.6em}.post-body .table-caption{font-size:calc(var(--step--2) * .92);color:var(--fg-muted);text-align:center;margin:-1.4em 0 2.6em}.post-body iframe{aspect-ratio:16/9;background:var(--code-bg);border:0;border-radius:4px;width:100%;height:auto;margin:1.8em 0;display:block}.post-body code{font-family:var(--font-mono);background:var(--code-bg);border-radius:3px;padding:.1em .35em;font-size:.875em}.post-body pre{background:var(--code-bg);padding:var(--space-3);font-size:var(--step--1);border-radius:4px;margin:0 0 1.4em;line-height:1.55;overflow-x:auto}.post-body pre code{font-size:inherit;background:0 0;padding:0}.post-body table{border-collapse:collapse;width:100%;font-size:var(--step--1);margin:2.2em 0;display:block;overflow-x:auto}.post-body th,.post-body td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.5em .75em}.post-body th,.post-body strong{font-weight:600}.post-body sup{line-height:0}.post-body a{text-decoration-color:var(--fg-muted)}.post-pair{margin:0}.post-body sup a{color:var(--accent);background:0 0;padding:0 .15em;font-size:.8em}.post-body .footnotes{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--line);font-size:var(--step--1);color:var(--fg-muted)}.post-body .footnotes h2{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.post-body .footnotes ol{padding-left:1.4em}.post-body .footnotes li{margin-bottom:.6em}.post-body .footnotes p{margin:0;display:inline}.post-body .footnotes a[data-footnote-backref]{background:0 0;margin-left:.3em}.post-body :target:not(h2,h3,h4){background:var(--jewel-soft);transition:background .6s var(--ease)}.post-pair a{text-decoration:none}.post-pair a:hover{text-decoration:underline}.related{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--line)}.related>h2{margin:0 0 var(--space-3);font-size:var(--step-0);font-weight:600;font-family:var(--font-title);color:var(--fg-title)}.related-list li{padding-block:1.1rem}.related-list h3{margin:var(--space-1) 0 0;font-family:var(--font-title);font-size:var(--step-1);color:var(--fg-title);text-wrap:balance;font-weight:600;line-height:1.4}.related-list li.has-thumb{grid-template-columns:minmax(0,1fr) 120px}.related-list .post-list-thumb{margin-top:.15rem}.related-list .post-list-thumb img{width:120px;height:80px}@media (width<=480px){.related-list li.has-thumb{grid-template-columns:minmax(0,1fr) 84px}.related-list .post-list-thumb img{width:84px;height:56px}}.comments{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--line)}.comments h2{margin:0 0 var(--space-3);font-size:var(--step-0);letter-spacing:-.01em;font-weight:600}#remark42{min-height:6rem;font-size:var(--step--1);color:var(--fg-muted)}.post-rail{display:none}@media (width>=1240px){.post-rail{gap:var(--space-4);top:calc(var(--header-h) + 3.5rem);bottom:var(--space-5);width:13rem;font-size:var(--step--2);z-index:5;flex-direction:column;line-height:1.45;display:flex;position:fixed;left:calc(50% - 38rem)}}.post-toc{gap:var(--space-3);flex-direction:column;min-height:0;display:flex}.post-toc a{color:var(--fg-muted);transition:color .15s var(--ease);text-decoration:none}.post-toc a:hover{color:var(--accent)}.toc-title{font-family:var(--font-title);font-weight:600;font-size:var(--step--1);line-height:1.35;color:var(--fg-title)!important}.toc-list{flex-direction:column;min-height:0;display:flex;position:relative}.post-toc ol{background:linear-gradient(var(--line), var(--line)) 4px 0 / 1px 100% no-repeat;scrollbar-width:none;margin:0 0 0 -4px;padding:0 0 0 4px;list-style:none;overflow-y:auto}.post-toc li{margin:0}.post-toc li a{padding:.3em 0 .3em .9em;display:block;position:relative}.post-toc li.toc-d3 a{padding-left:1.8em}.post-toc a.is-current{color:var(--fg-title)}.toc-dot{background:var(--fg-title);opacity:0;width:6px;height:6px;transition:transform .32s var(--ease), opacity .2s var(--ease);pointer-events:none;border-radius:50%;position:absolute;top:0;left:-2.5px}.toc-dot.is-on{opacity:1}.rail-comments{color:var(--fg-muted);font-variant-numeric:tabular-nums;align-items:center;gap:.45em;margin-top:auto;text-decoration:none;display:inline-flex}.rail-comments svg{width:16px;height:16px}.rail-comments:hover{color:var(--accent)}.rail-count:not(:empty):before{content:"· "}.post-body{position:relative}.sidenote{width:13rem;font-size:var(--step--2);color:var(--fg-muted);line-height:1.55;position:absolute;left:calc(100% + 2rem)}.sidenote p{margin:0 0 .4em}.sidenote-num{color:var(--accent);font-variant-numeric:tabular-nums;margin-right:.4em}.post-body.has-sidenotes .footnotes{display:none}.side-mark{width:1.7rem;color:var(--fg-muted);font:inherit;font-size:var(--step--2);font-variant-numeric:tabular-nums;cursor:pointer;transition:color .15s var(--ease);background:0 0;border:0;border-radius:999px;flex-direction:column;align-items:center;gap:.1rem;padding:.15rem 0 0 .3rem;line-height:1;display:flex;position:absolute;left:100%}.side-mark svg{width:16px;height:16px;transition:box-shadow .15s var(--ease);border-radius:50%;display:block}.side-mark:hover,.side-mark:focus-visible,.side-mark.is-open{color:var(--accent);outline:none}.side-mark:hover svg,.side-mark:focus-visible svg,.side-mark.is-open svg{box-shadow:0 0 0 4px var(--jewel-soft);background:var(--jewel-soft)}.side-mark[hidden]{display:none}.side-mark.is-inline{vertical-align:baseline;flex-direction:row;gap:.25em;width:auto;margin-left:.4em;padding:.1em .3em;display:inline-flex;position:static}.side-mark.is-inline svg{width:14px;height:14px}::highlight(side-quote){background-color:var(--jewel-soft)}.side-select{z-index:55;background:var(--code-bg);color:var(--fg);border:1px solid var(--line);font:inherit;font-size:var(--step--2);cursor:pointer;border-radius:999px;padding:.3rem .7rem;position:absolute}.side-select:hover{color:var(--accent);box-shadow:0 0 0 4px var(--jewel-soft)}.side-select[hidden]{display:none}.side-card{z-index:20;background:var(--code-bg);width:13rem;color:var(--fg);border:1px solid var(--line);font-size:var(--step--2);word-break:keep-all;overflow-wrap:anywhere;border-radius:4px;padding:.7rem .8rem;line-height:1.55;position:absolute;left:calc(100% + 2rem)}.side-card.is-sheet{z-index:60;width:auto;max-height:70vh;padding:1rem 16px calc(1rem + env(safe-area-inset-bottom));font-size:var(--step--1);border-width:1px 0 0;border-radius:12px 12px 0 0;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -8px 32px #00000059}.side-card p{margin:0}.side-c+.side-c,.side-c+.side-form{border-top:1px solid var(--line);margin-top:.8rem;padding-top:.8rem}.side-c-head{flex-wrap:wrap;align-items:baseline;gap:.5em;display:flex}.side-c-name{color:var(--fg-title);font-weight:600}.side-c-date{color:var(--fg-muted);font-variant-numeric:tabular-nums}.side-c-body{white-space:pre-wrap;margin-top:.2rem!important}.side-c-meta{color:var(--fg-muted);flex-wrap:wrap;gap:.7em;display:flex;margin-top:.3rem!important}.side-card .side-below,.side-reply{color:var(--fg-muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:none;animation:none}.side-card .side-below:hover,.side-reply:hover{color:var(--accent);background:0 0}.side-r{border-left:1px solid var(--line);margin:.5rem 0 0 .6rem;padding-left:.6rem}.side-r .side-c-body{color:var(--fg-muted)}.side-r+.side-form,.side-c>.side-form{margin:.6rem 0 0}.side-form{flex-direction:column;gap:.45rem;display:flex}.side-form-title{color:var(--fg-muted)}.side-card .side-quote{border-left:2px solid var(--line);font-family:var(--font-title);color:var(--fg-muted);-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;margin:0;padding-left:.6rem;display:-webkit-box;overflow:hidden}.side-name,.side-text{box-sizing:border-box;background:var(--bg);width:100%;color:var(--fg);border:1px solid var(--line);font:inherit;border-radius:4px;padding:.4rem .5rem}.side-text{resize:vertical;min-height:4.5em}.side-name:focus,.side-text:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--jewel-soft);outline:none}.side-error{color:var(--accent)}.side-error[hidden]{display:none}.side-buttons{gap:.5rem;display:flex}.side-send,.side-close{font:inherit;cursor:pointer;border:1px solid var(--line);color:var(--fg);background:0 0;border-radius:999px;padding:.3rem .8rem}.side-send{background:var(--fg-title);color:var(--bg);border-color:var(--fg-title)}.side-send:hover,.side-close:hover{box-shadow:0 0 0 4px var(--jewel-soft)}.side-send:disabled{opacity:.5;cursor:wait}.fig-diagram{margin:3em 0}.post-body .fig-diagram figcaption{font-size:calc(var(--step--2) * .92);margin-top:1em}.fig-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.fig-diagram svg{width:100%;height:auto;font-family:inherit;display:block}@media (width<=600px){.fig-diagram svg{min-width:600px}.fig-diagram{position:relative}.fig-scroll:not(.is-end){-webkit-mask-image:linear-gradient(90deg,#000 85%,#0000);mask-image:linear-gradient(90deg,#000 85%,#0000)}.fig-diagram figcaption:after{content:" · 옆으로 밀어 보기"}.fig-diagram:lang(en) figcaption:after{content:" · swipe to see more"}}.fig-diagram text{fill:var(--fg)}.fig-diagram .t-title{fill:var(--fg-title);font-size:16px;font-weight:600;font-family:var(--font-title)}.fig-diagram .t-label{font-size:14px}.fig-diagram .t-big{font-size:16px;font-weight:600}.fig-diagram .t-strong{font-weight:600}.fig-diagram .t-quiet{fill:var(--fg-muted);font-size:12px}.fig-diagram .b{fill:none;stroke:var(--fg-muted);stroke-width:1.25px}.fig-diagram .b-dash{fill:none;stroke:var(--fg-muted);stroke-width:1.25px;stroke-dasharray:4 4}.fig-diagram .b-tint{fill:var(--code-bg);stroke:var(--fg-muted);stroke-width:1.25px}.fig-diagram .b-main{fill:var(--accent);fill-opacity:.12;stroke:var(--accent);stroke-width:2px}.fig-diagram .ln{fill:none;stroke:var(--fg-muted);stroke-width:1.25px}.fig-diagram .ln-faint{fill:none;stroke:var(--line);stroke-width:1.25px}.fig-diagram .ln-accent{fill:none;stroke:var(--accent);stroke-width:2px;stroke-dasharray:6 4}.fig-diagram .d-arrow{fill:var(--fg-muted)}.fig-diagram .land{fill:var(--code-bg);stroke:none}.fig-diagram .coast{fill:none;stroke:var(--fg-muted);stroke-width:.6px;stroke-linejoin:round}.fig-diagram .ln-red{fill:none;stroke:#e5484d;stroke-width:3px;stroke-linecap:round}.fig-diagram .ln-dash{stroke-dasharray:7 5}.fig-diagram .dot-red{fill:#e5484d}.fig-diagram .t-red{fill:#e5484d;font-size:13px;font-weight:600}.fig-diagram .t-place{letter-spacing:.04em;font-size:13px}.fig-diagram .t-halo{paint-order:stroke;stroke:var(--bg);stroke-width:4px;stroke-linejoin:round}.bubble{z-index:50;background:var(--code-bg);width:max-content;max-width:min(16rem,100vw - 16px);color:var(--fg);border:1px solid var(--line);font-size:calc(var(--step--1) * .8);word-break:keep-all;border-radius:4px;padding:.52rem .64rem;line-height:1.55;position:absolute}.bubble[hidden]{display:none}.bubble.is-following{pointer-events:none}.bubble p{margin:0 0 .4em;display:inline}.bubble-post{flex-direction:column;gap:.25em;width:min(16rem,100vw - 16px);display:flex}.bubble-img{aspect-ratio:16/9;object-fit:cover;border-radius:4px 4px 0 0;width:calc(100% + 1.28rem);max-width:none;margin:-.52rem -.64rem .36rem;display:block}:root:not([data-theme=light]) .bubble-img{filter:brightness(.9)}.bubble-post strong{font-family:var(--font-title);color:var(--fg-title);font-weight:600;font-size:calc(var(--step-0) * .8);line-height:1.35}.bubble-date,.bubble-host{color:var(--fg-muted);font-size:calc(var(--step--2) * .8);font-variant-numeric:tabular-nums}.bubble-sum{color:var(--fg-muted);-webkit-line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.bubble-host{padding:.28rem .48rem}.post-body :is(h2#참고,h2#참고-문헌,h2#references,h2#sources)+:is(ul,ol){font-family:var(--font-title);font-size:var(--step--1);color:var(--fg-muted);line-height:1.5}.post-body :is(h2#참고,h2#참고-문헌,h2#references,h2#sources)+:is(ul,ol) li{margin-bottom:.35em}@media (prefers-reduced-motion:reduce){.post-toc a,.toc-dot{transition:none}}.sub-block{margin-top:var(--space-5)}.sub-block h2{margin:0 0 var(--space-2)}.sub-form{gap:var(--space-2);margin:var(--space-3) 0;flex-wrap:wrap;display:flex}.sub-form input[type=email]{min-width:0;font:inherit;font-size:var(--step--1);color:var(--fg);background:var(--code-bg);border:1px solid var(--line);border-radius:999px;flex:14rem;padding:.65em 1.1em}.sub-form input[type=email]:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--jewel-soft);outline:none}.sub-form button,.post-body a.sub-button{font:inherit;font-size:var(--step--1);color:var(--bg);background:var(--fg-title);cursor:pointer;transition:box-shadow .3s var(--ease);background-image:none;border:0;border-radius:999px;padding:.65em 1.4em;text-decoration:none;display:inline-block}.sub-form button:hover,.post-body a.sub-button:hover{box-shadow:0 0 0 4px var(--jewel-soft);color:var(--bg)}.sub-trap{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.sub-hint{font-size:var(--step--2);color:var(--fg-muted);line-height:1.6}
