@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=IBM+Plex+Sans:wght@400;700&family=Newsreader:opsz,wght@6..72,400;6..72,700&display=swap";:root{color-scheme:light;--color-paper:oklch(96.5% .014 82);--color-paper-raised:oklch(94% .016 82);--color-ink:oklch(19% .014 58);--color-muted:oklch(43% .014 62);--color-faint:oklch(48% .012 70);--color-rule:oklch(76% .018 78);--color-accent:oklch(48% .15 31);--color-focus:oklch(52% .18 31);--color-selection:oklch(86% .07 54);--font-display:"Newsreader", "Noto Serif KR", ui-serif, serif;--font-body:"IBM Plex Sans", "Noto Sans KR", ui-sans-serif, sans-serif;--font-mono:"IBM Plex Mono", "D2Coding", ui-monospace, monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-md:1.25rem;--text-lg:1.5625rem;--text-xl:1.953rem;--text-2xl:2.441rem;--text-3xl:3.052rem;--text-display:clamp(2.75rem, 8vw, 5.25rem);--space-3xs:.125rem;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--space-3xl:6rem;--space-4xl:9rem;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--rule-hair:1px;--rule-double:3px;--radius-sm:2px;--radius-md:4px}*,:before,:after{box-sizing:border-box}html,body{overflow-x:clip}html{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);scroll-behavior:smooth;text-rendering:optimizelegibility;font-size:100%}body{background:var(--color-paper);min-width:20rem;font-size:var(--text-base);padding-bottom:env(safe-area-inset-bottom);margin:0;line-height:1.65}::selection{background:var(--color-selection);color:var(--color-ink)}a{color:inherit;text-decoration-color:var(--color-accent);text-decoration-thickness:var(--rule-hair);text-underline-offset:.2em}a:focus-visible,summary:focus-visible{border-radius:var(--radius-sm);outline:3px solid var(--color-focus);outline-offset:3px}a:active,summary:active{color:var(--color-accent)}a[aria-disabled=true],summary[aria-disabled=true]{cursor:not-allowed;opacity:.55;pointer-events:none}img,svg{max-width:100%;display:block}h1,h2,h3,p,ol,ul,blockquote,pre,figure{margin:0}h1,h2,h3{font-family:var(--font-display);overflow-wrap:anywhere;min-width:0;font-style:normal;font-weight:700;line-height:1.08}code,pre{font-family:var(--font-mono)}.skip-link{z-index:10;padding:var(--space-sm) var(--space-md);background:var(--color-ink);color:var(--color-paper);position:absolute;inset-block-start:var(--space-sm);inset-inline-start:var(--space-sm);transform:translateY(-200%)}.skip-link:focus{transform:none}.site-shell{width:min(100%,80rem);padding-inline:max(clamp(1rem, 4vw, 3rem), env(safe-area-inset-left));margin-inline:auto}.masthead{gap:var(--space-sm);padding-block:var(--space-lg) 0;text-align:center;display:grid}.masthead__issue{justify-content:space-between;align-items:center;gap:var(--space-md);color:var(--color-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums;letter-spacing:.08em;display:flex}.masthead__wordmark{color:var(--color-ink);font-family:var(--font-display);letter-spacing:-.045em;white-space:nowrap;font-size:2rem;font-weight:700;line-height:.9;text-decoration:none;display:block}.masthead__nav--desktop{display:none}.masthead__nav a,.masthead__menu a,.masthead__menu summary{white-space:nowrap}.masthead__nav a[aria-current=page]{color:var(--color-accent);text-decoration-thickness:2px}.masthead__menu{font-size:var(--text-sm);text-align:start;position:relative}.masthead__menu summary{cursor:pointer;border-block:var(--rule-hair) solid var(--color-rule);place-items:center;min-height:2.75rem;list-style:none;display:grid}.masthead__menu summary::-webkit-details-marker{display:none}.masthead__menu summary:after{content:" +";color:var(--color-accent)}.masthead__menu[open] summary:after{content:" −"}.masthead__menu nav{border-bottom:var(--rule-hair) solid var(--color-rule);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.masthead__menu nav a{place-items:center;min-height:2.75rem;text-decoration:none;display:grid}.masthead__rule{height:var(--rule-double);border-block:var(--rule-hair) solid var(--color-ink)}main{min-height:50dvh}.index-intro{gap:var(--space-lg);padding-block:var(--space-2xl) var(--space-3xl);display:grid}.index-intro h1{letter-spacing:-.035em;max-width:14ch;font-size:clamp(2.4rem,7vw,4.75rem)}.index-intro p{max-width:44ch;color:var(--color-muted);font-family:var(--font-display);font-size:var(--text-md);line-height:1.45}.writing-index{margin-top:var(--space-2xl);padding-block-end:var(--space-4xl)}.section-heading{justify-content:space-between;align-items:baseline;gap:var(--space-md);border-bottom:var(--rule-hair) solid var(--color-ink);padding-block-end:var(--space-sm);display:flex}.section-heading h2{font-family:var(--font-body);font-size:var(--text-base)}.section-heading p{color:var(--color-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.post-list{padding:0;list-style:none}.post-row{gap:var(--space-sm);padding-block:var(--space-lg);border-bottom:var(--rule-hair) solid var(--color-rule);display:grid}.post-row time{color:var(--color-muted);font-family:var(--font-body);font-size:var(--text-xs);font-variant-numeric:tabular-nums;white-space:nowrap}.post-row__body{gap:var(--space-xs);min-width:0;display:grid}.post-row__body h3{font-size:var(--text-xl);letter-spacing:-.02em}.post-row__body h3 a{text-decoration:none}.post-row__body p{max-width:62ch;color:var(--color-muted)}.post-row__tags{gap:var(--space-xs);color:var(--color-faint);font-size:var(--text-xs);flex-wrap:wrap;padding:0;list-style:none;display:flex}.post-row__tags li:before{content:"#";color:var(--color-accent)}.empty-index{gap:var(--space-xs);padding-block:var(--space-xl);border-bottom:var(--rule-hair) solid var(--color-rule);display:grid}.empty-index p:last-child{color:var(--color-muted)}.page,.post{padding-block:var(--space-2xl) var(--space-4xl)}.page__header,.post__header{gap:var(--space-lg);border-bottom:var(--rule-hair) solid var(--color-ink);padding-block-end:var(--space-2xl);display:grid}.page__header h1,.post__header h1{letter-spacing:-.035em;max-width:18ch;font-size:clamp(2.5rem,7vw,4.5rem)}.page__header p,.post__description{max-width:50ch;color:var(--color-muted);font-family:var(--font-display);font-size:var(--text-md)}.back-link{width:fit-content;min-height:2.75rem;font-size:var(--text-sm);white-space:nowrap;line-height:2.75rem}.post__meta{gap:var(--space-sm) var(--space-lg);color:var(--color-muted);font-family:var(--font-body);font-size:var(--text-xs);font-variant-numeric:tabular-nums;flex-wrap:wrap;display:flex}.prose{gap:var(--space-lg);max-width:68ch;font-size:clamp(var(--text-base), 1.5vw, 1.125rem);padding-block-start:var(--space-2xl);display:grid}.prose h2,.prose h3{margin-block-start:var(--space-xl)}.prose h2{font-size:var(--text-2xl)}.prose h3{font-size:var(--text-xl)}.prose p,.prose li{max-width:68ch}.prose ul,.prose ol{gap:var(--space-xs);padding-inline-start:var(--space-lg);display:grid}.prose blockquote{border-inline-start:var(--rule-double) solid var(--color-accent);color:var(--color-muted);font-family:var(--font-display);font-size:var(--text-md);padding-inline-start:var(--space-lg)}.prose pre{max-width:100%;padding:var(--space-lg);border-block:var(--rule-hair) solid var(--color-rule);background:var(--color-paper-raised);font-size:var(--text-sm);line-height:1.55;overflow-x:auto}.prose :not(pre)>code{padding:var(--space-3xs) var(--space-2xs);background:var(--color-paper-raised);font-size:.9em}.prose table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:var(--text-sm);font-variant-numeric:tabular-nums;line-height:1.45}.prose th,.prose td{padding:var(--space-sm) var(--space-md);border-bottom:var(--rule-hair) solid var(--color-rule);vertical-align:top}.prose thead th{border-top:var(--rule-hair) solid var(--color-ink);background:var(--color-paper-raised);font-size:var(--text-xs);word-break:keep-all;line-height:1.35}.prose tbody tr:last-child td{border-bottom-color:var(--color-ink)}.prose table:has(>thead>tr>th:nth-child(7):last-child) th:first-child{width:2.5rem}.prose table:has(>thead>tr>th:nth-child(7):last-child) th:nth-child(3){width:5rem}.prose table:has(>thead>tr>th:nth-child(7):last-child) th:nth-child(4),.prose table:has(>thead>tr>th:nth-child(7):last-child) th:nth-child(5),.prose table:has(>thead>tr>th:nth-child(7):last-child) th:nth-child(6){width:5.25rem}.prose table:has(>thead>tr>th:nth-child(7):last-child) th:nth-child(7){width:3.25rem}.prose table:has(>thead>tr>th:nth-child(7):last-child) :is(th,td):first-child{text-align:center}.prose table:has(>thead>tr>th:nth-child(7):last-child) :is(th,td):nth-child(n+3){text-align:end}.prose table:has(>thead>tr>th:nth-child(7):last-child) td:nth-child(n+3){white-space:nowrap}.prose hr{width:100%;height:var(--rule-double);margin-block:var(--space-xl);border:0;border-block:var(--rule-hair) solid var(--color-rule)}.post-navigation{gap:var(--space-md);padding-block-start:var(--space-3xl);display:grid}.post-navigation a{gap:var(--space-xs);padding-block:var(--space-md);border-top:var(--rule-hair) solid var(--color-rule);text-decoration:none;display:grid}.post-navigation a span{color:var(--color-muted);font-size:var(--text-xs)}.comments{gap:var(--space-xl);max-width:68ch;margin-inline:auto;padding-block-start:var(--space-3xl);display:grid}.comments__header{gap:var(--space-xs);border-top:var(--rule-hair) solid var(--color-ink);padding-block-start:var(--space-lg);display:grid}.comments__header h2{font-size:var(--text-xl)}.comments__header p,.comments noscript{color:var(--color-muted);font-size:var(--text-sm)}.comments .giscus,.comments .giscus-frame{width:100%}.tag-index,.tag-group,.tag-group ol{gap:var(--space-lg);display:grid}.tag-group{border-bottom:var(--rule-hair) solid var(--color-rule);padding-block-end:var(--space-xl)}.tag-group h2{font-size:var(--text-xl)}.tag-group ol{padding:0;list-style:none}.tag-group li{justify-content:space-between;align-items:baseline;gap:var(--space-md);display:flex}.tag-group time{color:var(--color-muted);font-family:var(--font-body);font-size:var(--text-xs);font-variant-numeric:tabular-nums;white-space:nowrap}.colophon{padding-block:var(--space-lg) var(--space-xl);border-top:var(--rule-hair) solid var(--color-ink);color:var(--color-muted);font-family:var(--font-body);font-size:var(--text-xs);line-height:1.65}.colophon p{max-width:86ch}@media (hover:hover) and (pointer:fine){a:hover,summary:hover{color:var(--color-accent);text-decoration-thickness:2px}}@media (width>=40rem){.masthead{gap:var(--space-md);padding-block-start:var(--space-xl)}.masthead__nav--desktop{justify-content:center;align-items:center;gap:var(--space-xl);min-height:2.75rem;font-size:var(--text-sm);display:flex}.masthead__nav--desktop a{place-items:center;min-height:2.75rem;display:grid}.masthead__menu{display:none}.index-intro{padding-block:var(--space-3xl) var(--space-4xl);grid-template-columns:minmax(0,1.55fr) minmax(0,.75fr);align-items:end}.post-row{gap:var(--space-xl);grid-template-columns:7rem minmax(0,1fr) 9rem}.post-row__tags{text-align:end;justify-content:flex-end}.page__header,.post__header{padding-block-end:var(--space-3xl)}.prose{margin-inline:auto}.post-navigation{grid-template-columns:repeat(2,minmax(0,1fr))}.post-navigation a[rel=next]{text-align:end}}@media (width<=39.999rem){.prose table{overscroll-behavior-inline:contain;table-layout:auto;max-width:100%;display:block;overflow-x:auto}.prose table:has(>thead>tr>th:nth-child(7):last-child) th:first-child{min-width:2.5rem}.prose table:has(>thead>tr>th:nth-child(7):last-child) th:nth-child(2){min-width:14rem}.prose table:has(>thead>tr>th:nth-child(7):last-child) th:nth-child(3){min-width:5.25rem}.prose table:has(>thead>tr>th:nth-child(7):last-child) th:nth-child(4),.prose table:has(>thead>tr>th:nth-child(7):last-child) th:nth-child(5),.prose table:has(>thead>tr>th:nth-child(7):last-child) th:nth-child(6){min-width:5.5rem}.prose table:has(>thead>tr>th:nth-child(7):last-child) th:nth-child(7){min-width:3.5rem}}@media (width>=60rem){.site-shell{padding-inline:var(--space-2xl)}.page,.post{padding-block-start:var(--space-3xl)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
