:root{--paper:#f1f1ec;--ink:#151515;--ink-2:#55554f;--ink-3:#6a6a64;--ink-4:#15151538;--rule:#1515151a;--tint:#15151509;--signal:#17a35b;--sans:"Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;--wide:"Archivo", "Pretendard Variable", Pretendard, sans-serif;--mono:"Martian Mono", "Pretendard Variable", Pretendard, ui-monospace, SFMono-Regular, Menlo, monospace;--ease:cubic-bezier(.2, .7, .3, 1)}.dark{--paper:#121312;--ink:#edede8;--ink-2:#ababa5;--ink-3:#8c8c86;--ink-4:#edede833;--rule:#edede81a;--tint:#edede808;--signal:#3ddc84}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--paper);color:var(--ink);font:400 16px/1.7 var(--sans);letter-spacing:-.01em;word-break:keep-all;overflow-wrap:break-word;transition:background-color .35s,color .35s}::selection{background:var(--ink);color:var(--paper)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}:focus-visible{outline:1px solid var(--signal);outline-offset:3px}ul,ol{list-style:none}time,.num{font-variant-numeric:tabular-nums}code{font-family:var(--mono);letter-spacing:0;background:var(--tint);border-radius:3px;padding:0 .25em;font-size:.86em;font-stretch:87.5%}.mono{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-stretch:87.5%}.lc{text-transform:none}.wide{font-family:var(--wide);letter-spacing:-.02em;font-stretch:125%}.container{max-width:1240px;margin:0 auto;padding:0 48px}.corners,.bracket:before{--c:var(--ink-3);--l:14px;background:linear-gradient(var(--c), var(--c)) top left / var(--l) 1px, linear-gradient(var(--c), var(--c)) top left / 1px var(--l), linear-gradient(var(--c), var(--c)) top right / var(--l) 1px, linear-gradient(var(--c), var(--c)) top right / 1px var(--l), linear-gradient(var(--c), var(--c)) bottom left / var(--l) 1px, linear-gradient(var(--c), var(--c)) bottom left / 1px var(--l), linear-gradient(var(--c), var(--c)) bottom right / var(--l) 1px, linear-gradient(var(--c), var(--c)) bottom right / 1px var(--l);background-repeat:no-repeat}.corners{pointer-events:none;position:absolute;inset:0}.bracket{position:relative}.bracket:before{content:"";pointer-events:none;--l:10px;opacity:0;transition:opacity .3s, transform .45s var(--ease);position:absolute;inset:-18px -20px;transform:scale(1.015)}.bracket:hover:before,.bracket.active:before{opacity:1;transform:none}.cmd{color:var(--ink-3);letter-spacing:.02em;margin-bottom:14px}.cmd b{color:var(--signal);font-weight:500}.two{grid-template-columns:220px minmax(0,1fr);gap:40px;display:grid}.tags{color:var(--ink-3);flex-wrap:wrap;gap:6px 16px;display:flex}.pulse{background:var(--signal);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.3}}.js .reveal{opacity:0;transition:opacity .8s var(--ease), transform .8s var(--ease);transform:translateY(24px)}.js .reveal.in{opacity:1;transform:none}@media (width<=960px){.container{padding:0 20px}.two{grid-template-columns:1fr;gap:12px}.bracket:before{inset:-12px -10px}}@media (prefers-reduced-motion:reduce){.pulse{animation:none}.js .reveal{opacity:1;transition:none;transform:none}}@media print{@page{size:A4;margin:14mm}:root,.dark{--paper:#fff;--ink:#111;--ink-2:#333;--ink-3:#666;--ink-4:#bbb;--rule:#ddd;--signal:#17a35b}body{font-size:9.5pt}.cmd{display:none!important}.container{max-width:none;padding:0}.js .reveal{opacity:1;transform:none}}
