:root{--color-paper:oklch(98.5% .004 250);--color-paper-2:oklch(95.5% .006 250);--color-rule:oklch(89% .006 250);--color-rule-2:oklch(32% .014 258);--color-neutral:oklch(50% .012 255);--color-muted:oklch(34% .018 257);--color-ink:oklch(24% .02 258);--color-graphite:oklch(22% .016 260);--color-graphite-2:oklch(27% .016 260);--color-on-graphite:oklch(90% .008 250);--color-accent:oklch(58% .2 256);--color-accent-ink:oklch(99% .003 250);--color-focus:var(--color-accent);--font-sans:"Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--text-xs:.8rem;--text-sm:.9rem;--text-base:1rem;--text-md:1.15rem;--text-lg:1.35rem;--text-xl:1.7rem;--text-display:clamp(1.6rem, 1.5vw + 1rem, 2.1rem);--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--rule:1px solid var(--color-rule);--radius:6px;--radius-card:10px;--gutter:clamp(1rem, 3vw, 1.5rem);--rail-w:300px;--max-w:76rem;--top-h:56px;--ease-out:cubic-bezier(.16, 1, .3, 1);--dur-short:.18s}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-paper:oklch(15% .012 255);--color-paper-2:oklch(19% .012 255);--color-rule:oklch(29% .01 255);--color-rule-2:oklch(36% .012 255);--color-neutral:oklch(64% .01 250);--color-muted:oklch(76% .008 250);--color-ink:oklch(94% .006 250);--color-graphite:oklch(11% .012 260);--color-graphite-2:oklch(16% .012 260);--color-on-graphite:oklch(90% .008 250);--color-accent:oklch(74% .14 256);--color-accent-ink:oklch(15% .012 255);color-scheme:dark}}:root[data-theme=dark]{--color-paper:oklch(15% .012 255);--color-paper-2:oklch(19% .012 255);--color-rule:oklch(29% .01 255);--color-rule-2:oklch(36% .012 255);--color-neutral:oklch(64% .01 250);--color-muted:oklch(76% .008 250);--color-ink:oklch(94% .006 250);--color-graphite:oklch(11% .012 260);--color-graphite-2:oklch(16% .012 260);--color-on-graphite:oklch(90% .008 250);--color-accent:oklch(74% .14 256);--color-accent-ink:oklch(15% .012 255);color-scheme:dark}html{scroll-padding-top:calc(var(--top-h) + 1rem);font-size:106.25%;overflow-x:clip}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-sans);font-size:var(--text-base);word-break:keep-all;overflow-wrap:anywhere;-webkit-font-smoothing:antialiased;margin:0;line-height:1.75;overflow-x:clip}*{box-sizing:border-box}a{color:inherit;text-decoration:none}a:hover{text-underline-offset:.18em;text-decoration:underline}a:active{color:var(--color-accent)}a,button{transition:color var(--dur-short) var(--ease-out), background-color var(--dur-short) var(--ease-out), border-color var(--dur-short) var(--ease-out)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}h1,h2,h3{letter-spacing:-.02em;text-wrap:balance;min-width:0;margin:0;font-weight:800;line-height:1.3}p,ul,ol,figure{margin:0}ul,ol{padding:0}img{max-width:100%;height:auto;display:block}.muted{color:var(--color-neutral);font-weight:400}[disabled],[aria-disabled=true]{opacity:.55;cursor:not-allowed;pointer-events:none}.top{top:env(safe-area-inset-top,0px);z-index:300;background:var(--color-paper);border-bottom:var(--rule);position:sticky}.top__in{max-width:var(--max-w);padding-inline:var(--gutter);min-height:var(--top-h);justify-content:space-between;align-items:center;gap:var(--space-md);margin-inline:auto;display:flex}.top__logo{font-weight:800;font-size:var(--text-md);color:var(--color-accent);letter-spacing:-.02em;white-space:nowrap}.top__nav ul{gap:var(--space-md);list-style:none;display:flex}.top__nav a{font-size:var(--text-sm);white-space:nowrap;min-height:44px;font-weight:500;line-height:44px;display:inline-block}.top__nav a[aria-current=page]{color:var(--color-accent)}@media (width<=40rem){.top__nav ul{gap:var(--space-sm)}.top__nav a{font-size:var(--text-xs)}}.shell{max-width:var(--max-w);padding:var(--space-lg) var(--gutter) var(--space-2xl);gap:var(--space-xl);margin-inline:auto;display:grid}.main{min-width:0}@media (width>=64rem){.shell--rail{grid-template-columns:minmax(0, 1fr) var(--rail-w);gap:var(--space-2xl)}}.rail{gap:var(--space-lg);align-content:start;min-width:0;display:grid}.rail__box{border:var(--rule);border-radius:var(--radius);padding:var(--space-md)}.rail__head{font-size:var(--text-base);margin-bottom:var(--space-sm);font-weight:800}.rail__toc{display:none}@media (width>=64rem){.rail__toc{display:block}.rail__sticky{top:calc(var(--top-h) + var(--space-md));position:sticky}}.intro{max-width:60ch;color:var(--color-muted);margin-bottom:var(--space-lg);font-size:var(--text-base);letter-spacing:0;text-wrap:pretty;font-weight:400}.sec{margin-bottom:var(--space-xl)}.sec__head{font-size:var(--text-lg);padding-bottom:var(--space-xs);border-bottom:var(--rule);margin-bottom:var(--space-md)}.plist{list-style:none;display:grid}.plist__link{gap:var(--space-sm);align-items:flex-start;min-height:44px;display:flex}.plist__body{gap:var(--space-2xs);min-width:0;display:grid}.plist__title{font-weight:700;line-height:1.4}.plist__link:hover .plist__title{text-underline-offset:.15em;text-decoration:underline}.plist__link:hover{text-decoration:none}.plist__meta{font-size:var(--text-xs);color:var(--color-neutral);gap:var(--space-xs);display:flex}.thumb{aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius);border:var(--rule);background:var(--color-paper-2);flex:none;width:112px}.thumb--empty{font-size:var(--text-xs);color:var(--color-neutral);place-items:center;font-weight:700;display:grid}.thumb--sm{width:64px}.plist--grid{gap:var(--space-md)}.plist--grid .plist__item{padding-bottom:var(--space-md);border-bottom:var(--rule)}@media (width>=48rem){.plist--grid{column-gap:var(--space-xl);grid-template-columns:repeat(2,minmax(0,1fr))}}.plist--list .plist__item{padding-block:var(--space-md);border-bottom:var(--rule)}.plist--rail .plist__item{padding-block:var(--space-xs);border-bottom:var(--rule)}.plist--rail .plist__item:last-child{border-bottom:0}.plist--rail .plist__title{font-size:var(--text-sm)}.plist__rank{color:var(--color-accent);flex:0 0 1.2em;font-weight:800;line-height:1.4}.plist--titles .plist__item{padding-block:var(--space-2xs)}.plist--titles .plist__title{font-weight:400;font-size:var(--text-sm)}.cats{list-style:none}.cats a{padding-block:var(--space-xs);border-bottom:var(--rule);font-size:var(--text-sm);justify-content:space-between;align-items:center;min-height:40px;display:flex}.cats li:last-child a{border-bottom:0}.cats__n{color:var(--color-neutral);font-variant-numeric:tabular-nums}.topics{gap:var(--space-lg);display:grid}@media (width>=40rem){.topics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=64rem){.topics{grid-template-columns:repeat(4,minmax(0,1fr))}}.topic__name{font-size:var(--text-base);color:var(--color-accent);margin-bottom:var(--space-xs)}.more{font-size:var(--text-sm);color:var(--color-accent);margin-top:var(--space-xs);white-space:nowrap;min-height:40px;line-height:40px;display:inline-block}.ad{min-height:100px;margin-block:var(--space-lg);border:1px dashed var(--color-rule);background:var(--color-paper-2);border-radius:var(--radius);place-items:center;display:grid}.ad span{font-size:var(--text-xs);color:var(--color-neutral)}.ad--tall{min-height:600px}.ad--mid{min-height:250px}.art{max-width:46rem}.crumb{font-size:var(--text-xs);color:var(--color-neutral);margin-bottom:var(--space-sm)}.crumb ol{gap:var(--space-xs);flex-wrap:wrap;list-style:none;display:flex}.crumb li+li:before{content:"›";margin-right:var(--space-xs)}.crumb a{color:var(--color-accent);white-space:nowrap}.crumb li:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:24ch;overflow:hidden}.art__title{font-size:var(--text-display)}.byline{font-size:var(--text-xs);color:var(--color-neutral);margin-top:var(--space-sm);gap:var(--space-xs) 0;flex-wrap:wrap;display:flex}.byline span+span:before{content:"|";margin-inline:var(--space-sm);color:var(--color-rule)}.hero{margin-top:var(--space-md)}.hero img{aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius);border:var(--rule);width:100%}.toc{margin-top:var(--space-lg);border:var(--rule);border-radius:var(--radius);padding:var(--space-sm) var(--space-md)}.toc__head{font-weight:800;font-size:var(--text-sm);cursor:pointer}.toc__list{counter-reset:toc;margin-top:var(--space-xs);list-style:none}.toc__list li{counter-increment:toc;font-size:var(--text-sm)}.toc__list li:before{content:counter(toc) ". ";color:var(--color-neutral)}.toc__list li[data-depth="3"]{padding-left:1.4em}.toc__list a{color:var(--color-accent);padding-block:var(--space-2xs);line-height:1.9;display:inline}@media (width>=64rem){.art .toc{display:none}}.brief{margin-top:var(--space-lg);padding:var(--space-md);background:var(--color-paper-2);border-radius:var(--radius)}.brief__head{font-size:var(--text-base);margin-bottom:var(--space-xs)}.brief ol{padding-left:1.4em}.brief li::marker{color:var(--color-accent);font-weight:700}.brief--end{margin-top:var(--space-xl)}.prose{margin-top:var(--space-lg);counter-reset:sec}.prose>h2{font-size:var(--text-lg);margin-top:var(--space-xl);margin-bottom:var(--space-sm);scroll-margin-top:calc(var(--top-h) + 1rem)}.prose>h2:not(#faq-head):not(#src-head){counter-increment:sec}.prose>h2:not(#faq-head):not(#src-head):before{content:counter(sec) ". "}.prose h3{font-size:var(--text-md);margin-top:var(--space-lg);margin-bottom:var(--space-xs);scroll-margin-top:calc(var(--top-h) + 1rem)}.prose p+p{margin-top:var(--space-md)}.prose ul,.prose ol{margin-top:var(--space-sm);padding-left:1.4em}.prose li+li{margin-top:var(--space-xs)}.prose li::marker{color:var(--color-accent);font-weight:600}.prose img{margin-block:var(--space-md);border-radius:var(--radius);border:var(--rule)}.prose table{border-collapse:collapse;width:100%;margin-block:var(--space-md);font-size:var(--text-sm);display:block;overflow-x:auto}.prose th,.prose td{border:var(--rule);padding:var(--space-xs) var(--space-sm);text-align:left;vertical-align:top}.prose th{background:var(--color-paper-2);font-weight:700}.prose kbd{border:var(--rule);background:var(--color-paper-2);border-radius:4px;padding:0 .35em;font-size:.85em}.prose details{margin-block:var(--space-md);border:var(--rule);border-radius:var(--radius);padding:var(--space-sm) var(--space-md)}.prose summary{cursor:pointer;font-weight:700}.prose a{color:var(--color-accent);text-underline-offset:.15em;text-decoration:underline}.faq h3:before{content:"Q. ";color:var(--color-accent)}.sources ul{font-size:var(--text-sm)}.related{margin-top:var(--space-2xl)}.foot{border-top:var(--rule);background:var(--color-paper-2)}.foot__in{max-width:var(--max-w);padding:var(--space-xl) var(--gutter);gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(10rem,max-content));margin-inline:auto;display:grid}.foot__head{font-size:var(--text-sm);margin-bottom:var(--space-xs);font-weight:800}.foot__nav ul{list-style:none;display:grid}.foot__nav a{font-size:var(--text-sm);color:var(--color-muted);white-space:nowrap;min-height:36px;line-height:36px;display:inline-block}.foot__nav--sites a:after{content:" ↗";color:var(--color-neutral)}.foot__copy{font-size:var(--text-xs);color:var(--color-neutral);margin-top:var(--space-sm);grid-column:1/-1}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.15s!important;animation-duration:.15s!important}}
