html:has(.site-shell){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;scroll-behavior:smooth}body:has(.site-shell){overscroll-behavior:auto;color:#1a1712;background:#f4efe6;overflow:visible}.site-shell{--site-bg:#f4efe6;--site-card:#fbf8f2;--site-ink:#1a1712;--site-muted:#5f574b;--site-line:#d3cbb8;--site-line-strong:#b9af98;--site-accent:#b85c28;--site-accent-hot:#d06a2e;--site-link:#9a4519;--site-chrome:#1f1b16;--site-chrome-edge:#0d0b08;--site-chrome-ink:#ece7dd;--site-chrome-dim:#b5ab98;--site-tip:#4a6b3c;--site-warn:#a06a10;--site-bad:#b03e30;--site-note:#2f6fa3;background:var(--site-bg);min-height:100dvh;color:var(--site-ink);font-family:var(--font-sans,"IBM Plex Sans KR", "Apple SD Gothic Neo", "Noto Sans KR", sans-serif);-webkit-text-size-adjust:100%;flex-direction:column;line-height:1.7;display:flex}.site-shell *,.site-shell :before,.site-shell :after{box-sizing:border-box}.site-shell a{color:var(--site-link);text-underline-offset:3px}.site-shell a:hover{color:var(--site-accent)}.site-shell button,.site-shell summary,.site-shell [role=button]{cursor:pointer}.site-shell :where(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--site-accent-hot);outline-offset:2px}.site-shell kbd{border:1px solid var(--site-line-strong);color:var(--site-ink);background:#fff;border-bottom-width:2px;padding:0 .4em;font-size:.85em}.site-shell ::selection{background:color-mix(in srgb, var(--site-accent) 30%, transparent);color:var(--site-ink)}.site-container{width:100%;max-width:72rem;margin-inline:auto;padding-inline:1rem}@media (width>=768px){.site-container{padding-inline:1.5rem}}.site-container-narrow{max-width:50rem}.site-main{flex:1 0 auto;padding-block:2rem 4rem}.skip-link{z-index:100;background:var(--site-chrome);padding:.6rem 1rem;position:absolute;top:-4rem;left:.5rem;color:#fff!important}.skip-link:focus{top:.5rem}.site-header{z-index:40;border-bottom:1px solid var(--site-chrome-edge);background:var(--site-chrome);color:var(--site-chrome-ink);position:sticky;top:0}.site-header-bar{justify-content:space-between;align-items:center;gap:1rem;height:3.5rem;display:flex}.site-brand{letter-spacing:-.01em;align-items:center;gap:.6rem;font-size:1.05rem;font-weight:700;text-decoration:none;display:inline-flex;color:var(--site-chrome-ink)!important}.site-brand svg{color:var(--site-accent-hot)}.site-nav{align-items:center;gap:.25rem;display:none}@media (width>=900px){.site-nav{display:flex}}.site-nav a{color:var(--site-chrome-dim);padding:.45rem .8rem;font-size:.95rem;text-decoration:none}.site-nav a:hover,.site-nav a[aria-current=page]{color:#fff}.site-nav a[aria-current=page]{box-shadow:inset 0 -2px 0 var(--site-accent-hot)}.site-header-actions{align-items:center;gap:.5rem;display:flex}.site-header .site-lang{color:var(--site-chrome-dim);border-color:#423b30}.mobile-menu{position:relative}@media (width>=900px){.mobile-menu{display:none}}.mobile-menu summary{width:2.5rem;height:2.5rem;color:var(--site-chrome-ink);border:1px solid #423b30;justify-content:center;align-items:center;list-style:none;display:flex}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu-panel{z-index:50;background:var(--site-chrome);border:1px solid #423b30;min-width:13rem;padding:.35rem;display:grid;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 12px 40px #0006}.mobile-menu-panel a{color:var(--site-chrome-ink);padding:.7rem .8rem;text-decoration:none}.mobile-menu-panel a:hover,.mobile-menu-panel a[aria-current=page]{color:#fff;background:#ffffff14}.site-footer{border-top:1px solid var(--site-chrome-edge);background:var(--site-chrome);color:var(--site-chrome-dim);margin-top:auto;font-size:.92rem}.site-footer a{color:var(--site-chrome-ink);text-decoration:none}.site-footer a:hover{color:#fff;text-decoration:underline}.site-footer h2{color:var(--site-chrome-ink);font-family:var(--font-mono,"IBM Plex Mono", monospace);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .75rem;font-size:.75rem;font-weight:600}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li+li{margin-top:.45rem}.site-footer-grid{grid-template-columns:1fr;gap:2rem;padding-block:2.5rem;display:grid}@media (width>=640px){.site-footer-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=900px){.site-footer-grid{grid-template-columns:1.6fr 1fr 1fr 1fr}}.site-footer-bottom{border-top:1px solid #342e25;flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.5rem;padding-block:1.25rem;font-size:.85rem;display:flex}.btn{border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;min-height:2.75rem;padding:.55rem 1.15rem;font-weight:600;line-height:1.2;text-decoration:none;transition:background-color .12s,border-color .12s,color .12s;display:inline-flex}.site-shell .btn-primary{background:var(--site-accent);color:#fff}.site-shell .btn-primary:hover{background:var(--site-accent-hot);color:#fff}.site-shell .btn-ghost{border-color:var(--site-ink);color:var(--site-ink);background:0 0}.site-shell .btn-ghost:hover{background:var(--site-ink);color:#fff}.site-shell .btn-sm{min-height:2.25rem;padding:.35rem .9rem;font-size:.9rem}.eyebrow{color:var(--site-link);font-family:var(--font-mono,"IBM Plex Mono", monospace);letter-spacing:.1em;text-transform:uppercase;margin:0 0 .5rem;font-size:.78rem;font-weight:600}.page-title{letter-spacing:-.02em;word-break:keep-all;margin:0 0 .75rem;font-size:clamp(1.75rem,4.2vw,2.5rem);font-weight:700;line-height:1.3}.page-lead{max-width:46rem;color:var(--site-muted);word-break:keep-all;margin:0;font-size:1.1rem;line-height:1.8}.breadcrumbs{margin-bottom:1.25rem;font-size:.88rem}.breadcrumbs ol{color:var(--site-muted);flex-wrap:wrap;gap:.25rem .5rem;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li+li:before{content:"/";color:var(--site-line-strong);margin-right:.5rem}.prose-site{word-break:keep-all;overflow-wrap:break-word;max-width:46rem;font-size:1.0625rem;line-height:1.95}.prose-site>:first-child{margin-top:0}.prose-site h2{border-top:1px solid var(--site-line);letter-spacing:-.015em;margin:2.9rem 0 1rem;padding-top:1.5rem;scroll-margin-top:5rem;font-size:1.55rem;font-weight:700;line-height:1.4}.prose-site h3{margin:2rem 0 .6rem;scroll-margin-top:5rem;font-size:1.2rem;font-weight:700;line-height:1.5}.prose-site p{margin:0 0 1.15rem}.prose-site ul,.prose-site ol{margin:0 0 1.25rem;padding-left:1.5rem}.prose-site li{margin:.4rem 0;padding-left:.2rem}.prose-site li>ul,.prose-site li>ol{margin:.4rem 0}.prose-site strong{font-weight:700}.prose-site code{font-family:var(--font-mono,"IBM Plex Mono", monospace);word-break:break-all;background:#ebe4d4;padding:.1em .38em;font-size:.9em}.prose-site hr{border:0;border-top:1px solid var(--site-line);margin:2.5rem 0}.prose-site .table-scroll{-webkit-overflow-scrolling:touch;margin:1.5rem 0;overflow-x:auto}.prose-site table{border-collapse:collapse;width:100%;min-width:28rem;font-size:.95rem;line-height:1.6}.prose-site caption{color:var(--site-muted);text-align:left;padding-bottom:.5rem;font-size:.88rem}.prose-site th,.prose-site td{border:1px solid var(--site-line);text-align:left;vertical-align:top;word-break:keep-all;padding:.55rem .75rem}.prose-site th{background:#e9e2d3;font-weight:700}.prose-site tbody tr:nth-child(2n) td{background:#ffffff73}.prose-site .formula{border-left:3px solid var(--site-accent);font-family:var(--font-mono,"IBM Plex Mono", monospace);white-space:pre-wrap;word-break:normal;background:#efe9dc;margin:1.25rem 0;padding:.85rem 1.1rem;font-size:.98rem;line-height:1.8;overflow-x:auto}.prose-site .callout{--tone:var(--site-note);border:1px solid color-mix(in srgb, var(--tone) 35%, var(--site-line));border-left:4px solid var(--tone);background:color-mix(in srgb, var(--tone) 7%, #fffdf8);margin:1.6rem 0;padding:.9rem 1.1rem}.prose-site .callout[data-tone=tip]{--tone:var(--site-tip)}.prose-site .callout[data-tone=warn]{--tone:var(--site-warn)}.prose-site .callout[data-tone=danger]{--tone:var(--site-bad)}.prose-site .callout>:last-child{margin-bottom:0}.prose-site .callout-title{color:var(--tone);margin-bottom:.3rem;font-size:.92rem;font-weight:700;display:block}.prose-site figure.diagram{border:1px solid var(--site-line);background:#fffdf8;margin:2rem 0;padding:1rem}.prose-site figure.diagram svg{width:100%;height:auto;margin-inline:auto;display:block}.prose-site figure.diagram figcaption{color:var(--site-muted);text-align:center;margin-top:.75rem;font-size:.88rem;line-height:1.6}.prose-site dl{margin:0 0 1.25rem}.prose-site dt{margin-top:1rem;font-weight:700}.prose-site dd{margin:.2rem 0 0;padding-left:1rem}.prose-site .toc{border:1px solid var(--site-line);background:var(--site-card);margin:1.5rem 0 2rem;padding:1rem 1.25rem;font-size:.97rem;line-height:1.7}.prose-site .toc-title{margin:0 0 .4rem;font-weight:700}.prose-site .toc ol{margin:0}.card-grid{grid-template-columns:1fr;gap:1rem;display:grid}@media (width>=640px){.card-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=960px){.card-grid-3{grid-template-columns:repeat(3,1fr)}}.card{border:1px solid var(--site-line);background:var(--site-card);color:inherit;flex-direction:column;gap:.5rem;padding:1.25rem;text-decoration:none;transition:border-color .12s;display:flex}.site-shell a.card{color:var(--site-ink)}.site-shell a.card:hover{border-color:var(--site-accent);color:var(--site-ink)}.card h3{word-break:keep-all;margin:0;font-size:1.1rem;font-weight:700;line-height:1.45}.card p{color:var(--site-muted);word-break:keep-all;margin:0;font-size:.96rem;line-height:1.7}.card .tag{border:1px solid var(--site-line-strong);color:var(--site-muted);font-family:var(--font-mono,"IBM Plex Mono", monospace);letter-spacing:.06em;text-transform:uppercase;align-self:flex-start;padding:.05rem .5rem;font-size:.72rem;font-weight:600}.section{margin-top:3.5rem}.section-title{letter-spacing:-.015em;word-break:keep-all;margin:0 0 .5rem;font-size:1.6rem;font-weight:700;line-height:1.4}.section-lead{max-width:46rem;color:var(--site-muted);word-break:keep-all;margin:0 0 1.5rem}.hero{border-bottom:1px solid var(--site-line);background-color:var(--site-bg);background-image:radial-gradient(#cdc3ac 1.3px,#0000 1.5px);background-size:22px 22px}.hero-inner{align-items:center;gap:2.5rem;padding-block:3.5rem 4rem;display:grid}@media (width>=900px){.hero-inner{grid-template-columns:1.1fr 1fr;padding-block:4.5rem 5rem}}.hero h1{letter-spacing:-.03em;word-break:keep-all;margin:0 0 1rem;font-size:clamp(2rem,5.2vw,3.1rem);font-weight:700;line-height:1.25}.hero h1 em{color:var(--site-accent);font-style:normal}.hero p.lead{max-width:36rem;color:var(--site-muted);word-break:keep-all;margin:0 0 1.75rem;font-size:1.12rem;line-height:1.85}.hero-actions{flex-wrap:wrap;gap:.75rem;display:flex}.hero-figure{border:1px solid var(--site-line-strong);background:#fffdf8;padding:.75rem;box-shadow:6px 6px #1a171214}.hero-figure svg,.hero-figure img{width:100%;height:auto;display:block}.stat-row{border:1px solid var(--site-line);background:var(--site-line);grid-template-columns:repeat(2,1fr);gap:1px;display:grid}@media (width>=768px){.stat-row{grid-template-columns:repeat(4,1fr)}}.stat-row>div{background:var(--site-card);padding:1rem 1.1rem}.stat-row dt{color:var(--site-muted);margin:0;font-size:.85rem}.stat-row dd{font-family:var(--font-mono,"IBM Plex Mono", monospace);margin:.15rem 0 0;font-size:1.5rem;font-weight:600}.steps{counter-reset:step;gap:1rem;margin:0;padding:0;list-style:none;display:grid}@media (width>=768px){.steps{grid-template-columns:repeat(2,1fr)}}.steps li{border:1px solid var(--site-line);background:var(--site-card);counter-increment:step;padding:1.25rem 1.25rem 1.25rem 4rem;position:relative}.steps li:before{content:counter(step);background:var(--site-chrome);width:2.1rem;height:2.1rem;color:var(--site-accent-hot);font-family:var(--font-mono,"IBM Plex Mono", monospace);justify-content:center;align-items:center;font-weight:600;display:flex;position:absolute;top:1.15rem;left:1.1rem}.steps h3{margin:0 0 .3rem;font-size:1.05rem}.steps p{color:var(--site-muted);word-break:keep-all;margin:0;font-size:.97rem}.meta-line{color:var(--site-muted);flex-wrap:wrap;gap:.25rem 1rem;margin:1rem 0 0;font-size:.9rem;display:flex}.related{border-top:1px solid var(--site-line);margin-top:3rem;padding-top:1.5rem}.related h2{margin:0 0 1rem;font-size:1.25rem}.calc{border:1px solid var(--site-line-strong);background:var(--site-card);padding:1.25rem}.calc-grid{grid-template-columns:1fr;gap:1rem;display:grid}@media (width>=640px){.calc-grid{grid-template-columns:repeat(2,1fr)}}.field{flex-direction:column;gap:.3rem;display:flex}.field>label,.field>.label{font-size:.9rem;font-weight:600}.field .hint{color:var(--site-muted);font-size:.82rem;line-height:1.5}.site-shell .field input,.site-shell .field select{border:1px solid var(--site-line-strong);width:100%;min-height:2.75rem;color:var(--site-ink);font-family:var(--font-mono,"IBM Plex Mono", monospace);background:#fff;border-radius:0;padding:.45rem .7rem;font-size:1rem}.site-shell .field input:focus,.site-shell .field select:focus{border-color:var(--site-accent)}.result{border:1px solid var(--site-chrome-edge);background:var(--site-chrome);color:var(--site-chrome-ink);margin-top:1.25rem;padding:1rem 1.25rem}.result dl{grid-template-columns:1fr;gap:.6rem 1.5rem;margin:0;display:grid}@media (width>=640px){.result dl{grid-template-columns:repeat(2,1fr)}}.result dt{color:var(--site-chrome-dim);margin:0;font-size:.82rem}.result dd{font-family:var(--font-mono,"IBM Plex Mono", monospace);word-break:break-all;margin:.1rem 0 0;font-size:1.25rem;font-weight:600}.result .error{color:#f0b4a8;margin:0}.swatch-row{flex-wrap:wrap;gap:.4rem;display:flex}.swatch{min-width:2.5rem;height:2.5rem;font-family:var(--font-mono,"IBM Plex Mono", monospace);border:2px solid #0000;justify-content:center;align-items:center;font-size:.8rem;font-weight:600;display:inline-flex}.site-shell .swatch[aria-pressed=true]{border-color:var(--site-accent);outline:2px solid var(--site-ink);outline-offset:1px}.ad-slot{text-align:center;min-height:0;margin:2.5rem 0}.ad-slot:has(ins[data-ad-status=unfilled]){display:none}.ad-slot .ad-label{color:var(--site-muted);letter-spacing:.08em;margin:0 0 .35rem;font-size:.72rem}.faq-item{border:1px solid var(--site-line);background:var(--site-card)}.faq-item+.faq-item{margin-top:.6rem}.faq-item summary{word-break:keep-all;padding:1rem 1.25rem;font-weight:700;line-height:1.55}.faq-item .faq-answer{border-top:1px solid var(--site-line);word-break:keep-all;padding:1rem 1.25rem 1.25rem}.faq-item .faq-answer>:last-child{margin-bottom:0}.term-nav{flex-wrap:wrap;gap:.35rem;margin:1.25rem 0 2rem;display:flex}.term-nav a{border:1px solid var(--site-line-strong);background:var(--site-card);justify-content:center;min-width:2.25rem;padding:.2rem .55rem;text-decoration:none;display:inline-flex}.notice{border:1px dashed var(--site-line-strong);color:var(--site-muted);background:#fffdf8;padding:1rem 1.25rem}@media (prefers-reduced-motion:reduce){html:has(.site-shell){scroll-behavior:auto}.btn,.card{transition:none}}@media print{.site-header,.site-footer,.ad-slot,.skip-link{display:none!important}}.article-layout{grid-template-columns:minmax(0,1fr);gap:2rem;display:grid}.article-main{min-width:0;max-width:46rem}.article-aside{display:none}@media (width>=1024px){.article-layout{grid-template-columns:minmax(0,46rem) 17rem;justify-content:center;gap:3.5rem}.article-main{grid-area:1/1}.article-aside{grid-area:1/2;align-self:start;max-height:calc(100dvh - 6rem);display:block;position:sticky;top:5rem;overflow-y:auto}}.toc-box{border:1px solid var(--site-line);background:var(--site-card);padding:1rem 1.15rem;font-size:.95rem;line-height:1.6}.toc-box ol{margin:.5rem 0 0;padding-left:1.25rem}.toc-box li{word-break:keep-all;margin:.3rem 0}.toc-box a{text-decoration:none}.toc-box a:hover{text-decoration:underline}.toc-box summary{font-weight:700}.toc-title{font-family:var(--font-mono,"IBM Plex Mono", monospace);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:600}.toc-mobile{margin-top:1.5rem}@media (width>=1024px){.toc-mobile{display:none}}.ad-slot[data-kind=sidebar]{margin:1.5rem 0 0}.ad-slot[data-kind=display],.ad-slot[data-kind=in-article]{min-height:280px}.ad-slot[data-kind=multiplex]{min-height:300px}.ad-slot[data-kind=sidebar]{min-height:600px}.diagram svg{font-family:var(--font-sans,"IBM Plex Sans KR", sans-serif);color:#1a1712}.diagram .l{fill:none;stroke:#1a1712;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.diagram .l-thin{fill:none;stroke:#1a1712;stroke-width:1.2px;stroke-linecap:round;stroke-linejoin:round}.diagram .l-dash{fill:none;stroke:#7a7163;stroke-width:1.2px;stroke-dasharray:5 4}.diagram .l-vcc{stroke:#c0302a}.diagram .l-gnd{stroke:#2a63a8}.diagram .l-sig{stroke:#b85c28}.diagram .t{fill:#1a1712;font-size:14px}.diagram .t-sm{fill:#5f574b;font-size:12px}.diagram .t-b{font-weight:700}.diagram .t-mono{font-family:var(--font-mono,"IBM Plex Mono", monospace)}.diagram .t-mid{text-anchor:middle}.diagram .t-end{text-anchor:end}.diagram .t-light{fill:#ece7dd}.diagram .t-vcc{fill:#c0302a}.diagram .t-gnd{fill:#2a63a8}.diagram .t-acc{fill:#9a4519}.diagram .dot{fill:#1a1712}.diagram .board{fill:#34503f;stroke:#1f3328;stroke-width:2px}.diagram .pad{fill:#b8793a}.diagram .hole{fill:#16130f}.diagram .strip{fill:#b8793a}.diagram .metal{fill:#c8c3b4;stroke:#7a7163;stroke-width:1px}.diagram .ic-body{fill:#241f18;stroke:#0d0b08;stroke-width:1.5px}.diagram .res-body{fill:#c4a06a;stroke:#8e6d3d;stroke-width:1.2px}.diagram .solder{fill:#cfd2d6;stroke:#7a7f86;stroke-width:1.2px}
