.art{background:var(--bg-surface)}.lp.art{overflow-x:clip}.art-prog{z-index:40;background:0 0;height:2px;position:sticky;top:64px}.art-prog i{background:var(--primary);transform-origin:0;height:2px;transition:transform .1s linear;display:block}.art-shell{grid-template-columns:minmax(0,680px) 200px;justify-content:center;gap:64px;max-width:1080px;margin:0 auto;padding:52px 32px 0;display:grid}.art-main{min-width:0}.art-back{width:fit-content;color:var(--text-3);margin-bottom:26px;font-size:13px;font-weight:600;display:block}.art-back:hover{color:var(--primary-600)}.art-kicker{justify-content:space-between;align-items:center;gap:16px;min-height:26px;display:flex}.art-lang{border:1px solid var(--border-hairline);background:var(--bg-surface-2);border-radius:6px;flex:none;align-items:center;gap:2px;padding:2px;display:inline-flex}.art-lang a{color:var(--text-3);border-radius:4px;padding:3px 8px;font-size:11.5px;font-weight:600}.art-lang a:hover{color:var(--text-1)}.art-lang a.on{background:var(--bg-surface);color:var(--text-1);box-shadow:0 1px 2px #0f11150f}.art h1{letter-spacing:-.03em;color:var(--text-1);text-wrap:pretty;margin:12px 0 0;font-size:38px;font-weight:650;line-height:1.16}.art.kr-body h1{letter-spacing:-.022em;word-break:keep-all}.art-dek{color:var(--text-3);text-wrap:pretty;margin:16px 0 0;font-size:18px;line-height:1.55}.art.kr-body .art-dek{word-break:keep-all;font-size:17px}.art-meta{color:var(--text-4);flex-wrap:wrap;align-items:baseline;gap:8px;margin:22px 0 0;font-size:12.5px;display:flex}.art-meta .mono{font-family:var(--ff-mono);font-variant-numeric:tabular-nums;font-size:11.5px}.art-meta .dot{color:var(--border-strong)}.art-body{border-top:1px solid var(--border-hairline);margin-top:14px;padding:22px 0 8px}.art-hero{margin:0}.art-hero img{border:1px solid var(--border-hairline);background:var(--bg-surface-3);border-radius:10px;width:100%;height:auto;display:block}.art-body p{color:var(--text-2);text-wrap:pretty;margin:20px 0 0;font-size:17px;line-height:1.75}.art.kr-body .art-body p{word-break:keep-all;font-size:16.5px;line-height:1.85}.art-body strong{color:var(--text-1);font-weight:650}.art-body em{color:var(--text-1);font-style:italic}.art-body code{font-family:var(--ff-mono);background:var(--bg-surface-3);color:var(--text-1);overflow-wrap:break-word;border-radius:4px;padding:2px 5px;font-size:.85em}.art-body h2{letter-spacing:-.02em;color:var(--text-1);border-top:1px solid var(--border-hairline);margin:52px 0 0;padding-top:20px;font-size:22px;font-weight:650}.art-body h3{letter-spacing:-.015em;color:var(--text-1);margin:40px 0 0;font-size:17.5px;font-weight:650}.art.kr-body .art-body h2,.art.kr-body .art-body h3{word-break:keep-all}.art-body h2,.art-body h3{scroll-margin-top:88px}.art-body ul{flex-direction:column;gap:14px;margin:20px 0 0;padding:0;list-style:none;display:flex}.art-body li{color:var(--text-2);text-wrap:pretty;font-size:16.5px;line-height:1.7}.art.kr-body .art-body li{word-break:keep-all}.art-body ul>li{padding-left:18px;position:relative}.art-body ul>li:before{content:"";background:var(--border-strong);border-radius:50%;width:5px;height:5px;position:absolute;top:11px;left:0}.art-body ol{flex-direction:column;gap:14px;margin:20px 0 0;padding-left:22px;display:flex}.art-body blockquote{border-left:2px solid var(--primary);margin:34px 0 0;padding:0 0 0 22px}.art-body blockquote p{color:var(--text-1);letter-spacing:-.012em;margin:0;font-size:19px;font-weight:500;line-height:1.6}.art.kr-body .art-body blockquote p{word-break:keep-all;font-size:18px}.art-body hr{border:0;border-top:1px solid var(--border-hairline);margin:40px 0 0}.art-body img{border:1px solid var(--border-hairline);border-radius:10px;max-width:100%;height:auto;margin:28px 0 0;display:block}.art-hero img{margin:0}.art-body .table-wrap{margin:24px 0 0;overflow-x:auto}.art-body table{border-collapse:collapse;width:100%;font-size:14px}.art-body th,.art-body td{border:1px solid var(--border-hairline);text-align:left;vertical-align:top;color:var(--text-2);padding:8px 12px}.art-body th{background:var(--bg-surface-2);color:var(--text-1);white-space:nowrap;font-weight:650}.art-body ul:has(input[type=checkbox])>li{padding-left:0}.art-body ul:has(input[type=checkbox])>li:before{content:none}.art-body input[type=checkbox]{accent-color:var(--primary);margin-right:8px}.art-rail{position:relative}.art-rail .rail-in{padding-bottom:60px;position:sticky;top:88px}.art-rail .rt-lbl{letter-spacing:.1em;text-transform:uppercase;color:var(--text-4);font-size:11px;font-weight:600;display:block}.rail-toc{border-left:1px solid var(--border-hairline);flex-direction:column;margin-top:12px;display:flex}.rail-toc a{color:var(--text-3);word-break:keep-all;border-left:1px solid #0000;margin-left:-1px;padding:7px 0 7px 13px;font-size:13px;line-height:1.45}.rail-toc a.sub{padding-left:24px;font-size:12.5px}.rail-toc a:hover{color:var(--text-1)}.rail-toc a.on{color:var(--text-1);border-left-color:var(--primary);font-weight:600}.art .faq{margin:48px 0 0}.art .faq h2{letter-spacing:-.015em;color:var(--text-1);margin:0 0 14px;font-size:19px;font-weight:650}.art .faq dt{color:var(--text-1);margin-top:18px;font-weight:600}.art .faq dd{color:var(--text-2);margin:6px 0 0;font-size:15.5px;line-height:1.7}.art-tags{border-top:1px solid var(--border-hairline);flex-wrap:wrap;gap:8px;margin:48px 0 0;padding-top:26px;display:flex}.art-tags a{color:var(--text-2);border:1px solid var(--border-hairline);background:var(--bg-surface-2);border-radius:20px;padding:5px 12px;font-size:12.5px;font-weight:500}.art-tags a:hover{border-color:var(--primary);color:var(--primary-600)}.art-next{margin-top:46px}.art-next .gh h2{letter-spacing:.1em;text-transform:uppercase;color:var(--text-1);margin:0 0 8px;font-size:13px;font-weight:600}.art-next .toc-row{grid-template-columns:30px 108px 1fr auto}.art-next .toc-row .thumb{width:108px}.art .art-footer{border-top:1px solid var(--border-hairline);margin-top:48px;padding-top:24px}.art .art-footer .post{color:var(--text-4);margin:0 0 14px;font-size:14px;font-style:italic}.art .art-footer .product{font-size:14.5px;font-weight:600}.art .art-nav{flex-wrap:wrap;justify-content:space-between;gap:12px 16px;margin-top:24px;padding-bottom:80px;display:flex}.art .art-nav a{color:var(--text-2);font-size:14px;font-weight:600}@media (max-width:1000px){.art-shell{grid-template-columns:minmax(0,680px);gap:0}.art-rail{display:none}}@media (max-width:640px){.art-shell{padding:32px 20px 0}.art h1{font-size:29px}.art-dek{font-size:16px}.art.kr-body .art-dek{font-size:15.5px}.art-next .toc-row{grid-template-columns:26px 84px 1fr}.art-next .toc-row .thumb{width:84px}}
