.abk{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b0d14;--fg:#efe9dc;--muted:#aaa497;--muted2:#7d786d;--fire:#e8973f;--cream:#efe3c6;--line:#efe9dc24;--line2:#efe9dc47;--paper:#ebe0c5;--paper2:#e4d7b6;--ink:#2a2419;--ink2:#6a5e4a;--rule:#46321433;--rub:#8c2a1e;--navy:#1c2742;--navy2:#2a3a5e;--leather:#1b2238;--ribbon:#6e1f19;--brush:var(--font-east-sea),"East Sea Dokdo",cursive;--mono:var(--font-archive-mono),"JetBrains Mono",ui-monospace,Menlo,monospace;--sans:system-ui,"Apple SD Gothic Neo","Noto Sans KR",sans-serif;--serif:var(--font-archive-serif),"Noto Serif KR",serif;--read:var(--font-archive-read),"Gowun Batang",serif;--barH:64px;--bookH:clamp(440px,calc(100svh - 204px),860px);--pad:54px;--padT:48px;--padB:56px;--sideW:264px;--gap:36px}.abk *{box-sizing:border-box}.abk{background:var(--bg);color:var(--fg);font:15px/1.6 var(--sans);-webkit-font-smoothing:antialiased}.abk a{color:inherit;text-decoration:none}.abk button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.abk .lbl{font:11px var(--mono);letter-spacing:.2em;color:var(--muted2);text-transform:uppercase}.abk .bar{z-index:5;height:var(--barH);background:linear-gradient(#07080ceb,#07080c99);align-items:baseline;gap:18px;padding:0 28px;display:flex;position:relative}.abk .bar .logo{font:400 36px/64px var(--brush);text-shadow:0 2px 14px #000000b3}.abk .bar .lbl{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted);flex:1;line-height:64px;overflow:hidden}.abk .bar .home{font:11px/64px var(--mono);letter-spacing:.14em;color:var(--muted);border-bottom:1px solid #0000;transition:color .25s,border-color .25s}.abk .bar .home:hover{color:var(--fg);border-color:var(--line2)}.abk .bgroom{z-index:0;background:#07080c;display:none;position:fixed;inset:0;overflow:hidden}.abk .bgroom img{object-fit:cover;object-position:var(--focus,50% 55%);filter:blur(3px)brightness(.46)saturate(.8);width:106%;height:106%;position:absolute;inset:-3%}.abk .bgroom:after{content:"";background:radial-gradient(at 50% 45%,#0000 30%,#05060ab3 100%);position:absolute;inset:0}.abk .wrap{z-index:1;position:relative}.abk .book{background:var(--paper);color:var(--ink);position:relative}.abk .flow{padding:28px 20px 56px}.abk article{max-width:680px;margin:0 auto}.abk .run{border-bottom:1px solid var(--rule);font:10.5px var(--mono);letter-spacing:.14em;color:var(--ink2);text-transform:uppercase;gap:10px;margin:0 0 22px;padding-bottom:10px;display:flex}.abk .run span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.abk .run i{color:var(--rub);font-style:normal}.abk .kicker{font:600 11px var(--mono);letter-spacing:.18em;color:var(--rub);text-transform:uppercase;margin:0}.abk .kicker time,.abk .kicker b{color:var(--ink2);font-weight:400}.abk h1.title{font:700 clamp(24px,5.4vw,32px)/1.32 var(--serif);color:var(--ink);letter-spacing:-.01em;overflow-wrap:anywhere;border-bottom:1px solid var(--rule);margin:12px 0 0;padding-bottom:18px}.abk .body{font:17px/1.85 var(--read);color:var(--ink);margin-top:24px}.abk .body p{overflow-wrap:anywhere;orphans:2;widows:2;margin:0 0 1.1em}.abk .body h2{font:700 15.5px/1.5 var(--serif);color:var(--rub);letter-spacing:.02em;break-after:avoid;margin:2em 0 .7em}.abk .body h2:not(:first-of-type):before{content:"❦";text-align:center;letter-spacing:0;color:var(--rub);opacity:.6;margin:0 0 1.6em;font-size:14px;display:block}.abk .body ul,.abk .body ol{margin:0 0 1.1em;padding-left:1.3em}.abk .body li{margin:0 0 .3em;padding-left:.15em}.abk .body li::marker{color:var(--rub)}.abk .body blockquote{color:#5a4a36;border-left:2px solid #8c2a1e66;margin:0 0 1.1em;padding:2px 0 2px 16px}.abk .body blockquote p{margin:0 0 .5em}.abk .body b{color:#1a1510;font-weight:700}.abk .body code{font:14px var(--mono);background:#3c280a14;border-radius:2px;padding:1px 5px}.abk .body a{color:var(--navy2);text-underline-offset:3px;-webkit-text-decoration:underline #2a3a5e66;text-decoration:underline #2a3a5e66}.abk .body figure,.abk .body img{break-inside:avoid;max-width:100%;margin:0 0 1.1em}.abk .body img{border:1px solid #4632142e;height:auto;display:block}.abk .body figcaption{font:12px/1.5 var(--mono);color:var(--ink2);margin-top:6px}.abk .body h2[id]{scroll-margin-top:20px}.abk .tocm{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin:20px 0 -4px}.abk .tocm summary{cursor:pointer;font:600 11px var(--mono);letter-spacing:.18em;color:var(--ink2);text-transform:uppercase;align-items:center;gap:10px;padding:10px 0;list-style:none;display:flex}.abk .tocm summary::-webkit-details-marker{display:none}.abk .tocm summary:after{content:"+";color:var(--rub);margin-left:auto;font-size:14px;font-weight:400}.abk .tocm[open] summary:after{content:"−"}.abk .tocm ol{font:14.5px/1.5 var(--read);color:var(--ink);margin:0;padding:2px 0 12px 1.4em}.abk .tocm li{margin:0 0 4px}.abk .tocm li::marker{color:var(--rub);font:11px var(--mono)}.abk .tocm[hidden]{display:none}.abk .fin{border-top:1px solid var(--rule);margin-top:36px;padding-top:22px}.abk .fin .orn{text-align:center;color:var(--rub);letter-spacing:.5em;margin:0 0 18px;font-size:15px}.abk .fin .lbl{color:var(--ink2);border-bottom:1px solid var(--rule);padding-bottom:8px;display:block}.abk .fin .lbl i{color:var(--rub);font-style:normal}.abk .fin a.rec{border-bottom:1px solid var(--rule);padding:9px 0;display:block}.abk .fin a.rec em{font:10.5px var(--mono);letter-spacing:.1em;color:var(--ink2);font-style:normal;display:block}.abk .fin a.rec em i{color:var(--rub);font-style:normal}.abk .fin a.rec span{font:700 15px/1.45 var(--serif);color:var(--ink);margin-top:2px;display:block}.abk .fin a.rec:hover span{color:var(--navy2);text-underline-offset:3px;text-decoration:underline}.abk .fin a.back{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);font:700 16px var(--serif);color:var(--ink);align-items:baseline;gap:12px;margin-top:22px;padding:14px 0;transition:padding-left .25s;display:flex}.abk .fin a.back:before{content:"";background:var(--rub);border-radius:50%;align-self:center;width:6px;height:6px}.abk .fin a.back small{font:10.5px var(--mono);letter-spacing:.12em;color:var(--ink2);text-transform:uppercase;margin-left:auto;font-weight:400}.abk .fin a.back:hover{padding-left:6px}.abk .ctl,.abk .board,.abk .shade,.abk .ribbon,.abk .edge{display:none}.abk .side{z-index:1;color:var(--fg);position:relative}.abk .side .in{grid-template-columns:1fr 1fr;column-gap:36px;max-width:680px;margin:0 auto;padding:40px 20px 10px;display:grid}.abk .side .toc{display:none}.abk .side .lbl{color:var(--muted2);display:block}.abk .side h2{font:400 24px/1 var(--brush);color:var(--fg);margin:2px 0 10px}.abk .side ol{margin:0;padding:0;list-style:none}.abk .toc ol{border-left:1px solid var(--line)}.abk .toc a{font:13.5px/1.45 var(--read);color:var(--muted);border-left:1px solid #0000;margin-left:-1px;padding:5px 0 5px 14px;transition:color .2s,border-color .2s;display:block}.abk .toc a:hover{color:var(--fg)}.abk .toc a.on{color:var(--fg);border-left-color:var(--fire)}.abk .side a.rec{border-bottom:1px solid var(--line);padding:8px 0;display:block}.abk .side a.rec:last-of-type{border-bottom:0}.abk .side a.rec em{font:10.5px var(--mono);letter-spacing:.1em;color:var(--muted2);font-style:normal;display:block}.abk .side a.rec em i{color:var(--fire);font-style:normal}.abk .side a.rec span{-webkit-line-clamp:2;font:600 14px/1.45 var(--serif);color:var(--fg);-webkit-box-orient:vertical;margin-top:2px;display:-webkit-box;overflow:hidden}.abk .side a.rec:hover span{color:#fff;text-underline-offset:3px;text-decoration:underline}.abk .side a.all{font:11px var(--mono);letter-spacing:.14em;color:var(--muted);border-bottom:1px solid #0000;margin-top:10px;display:inline-block}.abk .side a.all:hover{color:var(--fg);border-color:var(--line2)}.abk .foot{z-index:1;max-width:680px;font:11px var(--mono);letter-spacing:.12em;color:var(--muted2);justify-content:space-between;gap:12px;margin:0 auto;padding:28px 20px 60px;display:flex;position:relative}.abk .foot a:hover{color:var(--fg)}@media (max-width:640px){.abk .side .in{grid-template-columns:1fr;row-gap:28px}}@media (max-width:560px){.abk .bar{gap:12px;padding:0 16px}.abk .bar .logo{font-size:32px}.abk .bar .lbl{display:none}.abk .body{font-size:16.5px;line-height:1.8}}@media (min-width:1000px){.abk.js body{min-height:100svh}.abk.js .bar{background:linear-gradient(#07080cd9,#07080c00);position:fixed;top:0;left:0;right:0}.abk.js .bgroom{display:block}.abk.js .wrap{padding:calc(var(--barH) + 22px) 28px 40px;max-width:calc(var(--bookH) * 1.5 + var(--sideW) + var(--gap) + 56px);grid-template-columns:minmax(0,1fr);align-content:start;justify-items:center;row-gap:100px;margin:0 auto;display:grid}.abk.js .book{width:min(100%,calc(var(--bookH) * 1.5));aspect-ratio:3/2;color:var(--ink);background:0 0;margin:0 auto;position:relative}.abk.js .board,.abk.js .shade,.abk.js .ribbon,.abk.js .edge{display:block}.abk.js .board{background:var(--leather);background-image:radial-gradient(at 35% 25%,#ffffff12,#0000 60%),url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120'><filter id='l'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 .3 0'/></filter><rect width='100%' height='100%' filter='url(%23l)'/></svg>");border-radius:5px;position:absolute;inset:-13px -16px -19px;box-shadow:0 46px 90px #000000b8,0 0 0 1px #0009,inset 0 0 30px #0000008c}.abk.js .board:after{content:"";border:1px solid #d6c4a01f;border-radius:3px;position:absolute;inset:7px}.abk.js .leaves{background:var(--paper);border-radius:2px;position:absolute;inset:0;overflow:hidden;box-shadow:-1px 1px #d9ccaa,-2px 2px #b8a67f,-3px 3px #d9ccaa,-4px 4px #b8a67f,-5px 5px #d9ccaa,-6px 6px #b8a67f,1px 1px #d9ccaa,2px 2px #b8a67f,3px 3px #d9ccaa,4px 4px #b8a67f,5px 5px #d9ccaa,6px 6px #b8a67f}.abk.js .flow{height:100%;padding:var(--padT) var(--pad) var(--padB);column-count:2;column-gap:calc(var(--pad) * 2);column-fill:auto;transition:transform .32s cubic-bezier(.3,.7,.2,1);position:relative}.abk.js .flow.jump,.abk.js .flow.clone{transition:none}.abk.js article{max-width:none;margin:0}.abk.js .run,.abk.js .tocm{display:none}.abk.js h1.title{font:700 clamp(22px,2.1vw,28px)/1.34 var(--serif);margin-top:10px;padding-bottom:14px}.abk.js .body{margin-top:18px;font-size:17px;line-height:1.8}.abk.js .body p{margin-bottom:.85em}.abk.js .body h2{margin:1.5em 0 .55em}.abk.js .body h2:not(:first-of-type):before,.abk.js .body h2:first-of-type:before{content:"¶";font-size:inherit;letter-spacing:0;color:inherit;opacity:.55;text-align:inherit;margin:0 8px 0 0;display:inline}.abk.js .fin{break-before:column;border:0;margin:0;padding:0}.abk.js .fin .orn{margin:0 0 14px}.abk.js .shade{z-index:7;pointer-events:none;background:linear-gradient(90deg,#462d0f29,#0000 5% 42%,#3c230a1a 48%,#2d1c0a42 50%,#3c230a1a 52%,#0000 58% 95%,#462d0f29),radial-gradient(at 50% 40%,#0000 60%,#6e481c14 100%);border-radius:2px;position:absolute;inset:0}.abk.js .ribbon{z-index:8;pointer-events:none;background:linear-gradient(90deg,#0000004d,#ffffff24 45%,#0000004d),var(--ribbon);clip-path:polygon(0 0,100% 0,100% 100%,50% 96%,0 100%);width:11px;height:calc(100% + 50px);position:absolute;top:-13px;left:calc(50% - 5px)}.abk.js .edge{width:var(--pad);z-index:8;cursor:pointer;opacity:0;transition:opacity .25s;position:absolute;top:0;bottom:0}.abk.js .edge.l{background:linear-gradient(90deg,#3c230a24,#0000);left:0}.abk.js .edge.r{background:linear-gradient(270deg,#3c230a24,#0000);right:0}.abk.js .edge:hover{opacity:1}.abk.js .edge[hidden]{display:none}.abk.js .cover,.abk.js .leaf{background:var(--paper);width:50%;position:absolute;top:0;bottom:0;overflow:hidden}.abk.js .cover{z-index:5}.abk.js .leaf{z-index:6}.abk.js .leaf:after{content:"";pointer-events:none;background:var(--lsh,none);position:absolute;inset:0}.abk.js .pg{position:absolute;inset:0;overflow:hidden}.abk.js .pg .flow{transition:none}.abk.js .ctl{font:11px var(--mono);letter-spacing:.14em;color:var(--muted);justify-content:center;align-items:center;gap:18px;display:flex;position:absolute;top:calc(100% + 30px);left:0;right:0}.abk.js .ctl button{border:1px solid var(--line2);width:38px;height:38px;font:17px/1 var(--serif);color:var(--fg);background:#080a1080;border-radius:50%;transition:background .25s,opacity .25s}.abk.js .ctl button:hover{background:#080a10e6}.abk.js .ctl button:disabled{opacity:.25;cursor:default}.abk.js .ctl .folio{text-align:center;min-width:92px}.abk.js .side .in{max-width:calc(var(--bookH) * 1.5);width:100%;padding:0 0 10px}.abk.js .foot{width:100%;max-width:none;padding:0 0 10px}}@media (min-width:1100px){.abk.js .wrap{grid-template-columns:minmax(0,1fr) var(--sideW);column-gap:var(--gap);min-height:100svh;padding-top:calc(var(--barH) + 8px);grid-template-areas:"book side""foot side";align-content:center;place-items:start stretch;row-gap:0;padding-bottom:16px}.abk.js .book{grid-area:book;justify-self:center}.abk.js .side{grid-area:side;align-self:stretch;padding-top:4px}.abk.js .side .in{top:calc(var(--barH) + 10px);max-height:calc(var(--bookH) + 10px);scrollbar-width:thin;scrollbar-color:var(--line2) transparent;padding:0 6px 0 0;display:block;position:sticky;overflow-y:auto}.abk.js .side section{border-bottom:1px solid var(--line);margin-bottom:20px;padding-bottom:20px}.abk.js .side section:last-child{border-bottom:0;margin-bottom:0}.abk.js .side .toc{display:block}.abk.js .side .toc[hidden]{display:none}.abk.js .foot{grid-area:foot;justify-content:center;gap:24px;padding:92px 0 0}}@media (min-width:1100px) and (max-width:1299px){.abk{--sideW:236px;--gap:28px;--pad:46px}}@media (prefers-reduced-motion:reduce){.abk.js .flow,.abk.js .edge{transition:none}}.abk .run>*{white-space:nowrap}.abk .run>:last-child{text-overflow:ellipsis;min-width:0;overflow:hidden}.abk{-webkit-user-select:text;user-select:text;min-height:100svh;overflow-x:clip}.abk .turnlayer{pointer-events:none;position:absolute;inset:0}@media (min-width:1000px){.abk:not(.js) .wrap{opacity:0;animation:0s 1.5s forwards abk-reveal}}@keyframes abk-reveal{to{opacity:1}}.abk .body h3{font:700 14.5px/1.5 var(--serif);color:var(--ink);break-after:avoid;margin:1.6em 0 .5em}.abk .body h3[id],.abk .body h2[id]{scroll-margin-top:20px}.abk .body strong{color:#1a1510;font-weight:700}.abk .body hr{border:0;border-top:1px solid var(--rule);margin:1.4em 0}.abk .body pre{color:#e9dfc9;font:13px/1.6 var(--mono);-webkit-overflow-scrolling:touch;background:#1f1a14;border-radius:3px;max-width:100%;margin:0 0 1.1em;padding:12px 14px;overflow-x:auto}.abk .body pre code{width:max-content;min-width:100%;font:inherit;color:inherit;background:0 0;padding:0;display:block}.abk .body .tblwrap{break-inside:avoid-column;max-width:100%;margin:0 0 1.1em;overflow-x:auto}.abk .body table{border-collapse:collapse;font:13.5px/1.5 var(--sans);min-width:100%}.abk .body th,.abk .body td{border:1px solid var(--rule);text-align:left;vertical-align:top;padding:5px 9px}.abk .body th{background:#3c280a14}.abk .body ul ul,.abk .body ol ol,.abk .body ul ol,.abk .body ol ul{margin-top:.3em;margin-bottom:.3em}.abk .body img{object-fit:contain;width:auto;max-height:62vh}.abk .note{font:13.5px/1.7 var(--sans);color:#4d4033;background:#3c280a0f;border-left:2px solid #8c2a1e73;margin:18px 0 0;padding:10px 14px}.abk .fin a.step{border-bottom:1px solid var(--rule);padding:9px 0;display:block}.abk .fin a.step em{font:10.5px var(--mono);letter-spacing:.1em;color:var(--ink2);text-transform:uppercase;font-style:normal;display:block}.abk .fin a.step span{font:700 15px/1.45 var(--serif);color:var(--ink);margin-top:2px;display:block}.abk .fin a.step:hover span{color:var(--navy2);text-underline-offset:3px;text-decoration:underline}.abk .fin .steps{margin-top:18px}.abk .side .toc li.l3 a{padding-left:26px;font-size:12.5px}.abk .tocm li.l3{margin-left:1em;font-size:13.5px}.abk .foot nav{flex-wrap:wrap;gap:18px;display:flex}@media (prefers-reduced-motion:reduce){.abk .bar .home{transition:none}}.abk .body ul{list-style:outside}.abk .body ol,.abk .tocm ol{list-style:decimal}.abk .body blockquote{margin-left:0;margin-right:0}.abk .body p:has(>img:only-child){line-height:0}@media (min-width:1000px){.abk.js .body img{cursor:zoom-in}}.abk-zoom{z-index:1000;cursor:zoom-out;background:#06070adb;justify-content:center;align-items:center;padding:4vh 4vw;display:flex;position:fixed;inset:0}.abk-zoom img{object-fit:contain;background:#fff;border-radius:2px;max-width:100%;max-height:100%;box-shadow:0 20px 60px #0009}
