@font-face{font-family:"Book Serif";src:url(/fonts/myeongjo-400.woff) format("woff");font-weight:400;font-display:block}@font-face{font-family:"Book Serif";src:url(/fonts/myeongjo-700.woff) format("woff");font-weight:700;font-display:block}@font-face{font-family:"Book Serif";src:url(/fonts/myeongjo-800.woff) format("woff");font-weight:800;font-display:block}@font-face{font-family:Book Hand;src:url(/fonts/pen-400.woff) format("woff");font-weight:400;font-display:block}:root{--ink: #23262e;--ink-2: #5b5f69;--paper: #f8f4ea;--red: #b3362c;--blue: #27479a;--room: #e8e1d3;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;height:100%}body{background:var(--room);color:var(--ink);font-family:"Book Serif",Apple SD Gothic Neo,serif;word-break:keep-all;overflow-wrap:break-word;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer}:focus-visible{outline:2.5px solid var(--blue);outline-offset:2px}.stage{position:fixed;inset:0;touch-action:none}.stage canvas{display:block;width:100%;height:100%}.stage.grabbing canvas{cursor:grabbing!important}.loading{position:absolute;inset:0;display:grid;place-items:center;background:var(--room);transition:opacity .6s;z-index:2;pointer-events:none}.loading span{font-size:15px;color:var(--ink-2);letter-spacing:.1em}body.ready .loading{opacity:0}.to-neuron{position:fixed;top:max(14px,env(safe-area-inset-top));right:16px;z-index:30;display:inline-flex;align-items:center;gap:8px;padding:6px 14px 6px 6px;border-radius:999px;background:#fcfaf5d1;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 1px #ffffffb3 inset,0 4px 16px #3c321e24;color:var(--ink);text-decoration:none;font-size:14px;font-weight:700}.to-neuron img{border-radius:7px}.to-neuron:hover{background:#fffdf8}.toolbar{position:fixed;left:50%;bottom:max(18px,env(safe-area-inset-bottom));transform:translate(-50%);z-index:30;display:flex;align-items:center;gap:2px;padding:6px 10px;border-radius:999px;background:#fcfaf5d6;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 1px #ffffffb3 inset,0 6px 22px #3c321e29}.toolbar .ic{width:40px;height:40px;border:0;border-radius:50%;background:transparent;font-size:20px;line-height:1;display:grid;place-items:center}.toolbar .ic:hover{background:#23262e12}.toolbar .ic:disabled{opacity:.28;cursor:default;background:transparent}.toolbar .ic[aria-pressed=true]{background:#23262e21}.toolbar .where{min-width:220px;padding:0 12px;font-size:16px;font-weight:700;white-space:nowrap;text-align:center}.toolbar .sep{width:1px;height:22px;background:#23262e26;margin:0 6px}.toc{position:fixed;left:50%;bottom:calc(max(18px,env(safe-area-inset-bottom)) + 66px);transform:translate(-50%);z-index:31;width:min(380px,calc(100vw - 32px));padding:14px;border-radius:18px;background:#fcfaf5f5;box-shadow:0 12px 36px #3c321e38}.toc h2{margin:4px 8px 8px;font-size:14px;color:var(--red);letter-spacing:.2em}.toc-item{display:flex;align-items:center;gap:12px;width:100%;padding:10px 8px;border:0;background:none;border-radius:10px;text-align:left;font-size:17px;font-weight:700}.toc-item:hover,.toc-item.now{background:#23262e12}.toc-item .no{width:26px;height:26px;border-radius:50%;border:1.5px solid var(--ink);display:grid;place-items:center;font-size:13px;flex:none}.sheet{position:fixed;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.sheet:focus-within{width:min(440px,92vw);height:auto;max-height:70vh;overflow:auto;clip-path:none;left:16px;top:70px;z-index:40;padding:20px;border-radius:14px;background:var(--paper);box-shadow:0 12px 36px #3c321e40}.sheet .kicker{margin:0;color:var(--red);font-size:14px;font-weight:800;letter-spacing:.2em}.sheet h1{margin:4px 0 10px;font-size:28px;font-weight:800;line-height:1.25}.sheet h2{margin:22px 0 8px;font-size:14px;color:var(--red);letter-spacing:.18em;font-weight:800}.sheet .para{margin:0 0 12px;font-size:16px;line-height:1.75}.sheet .note{color:var(--ink-2);font-size:14px}.sheet .tap{cursor:pointer;border-radius:6px}.sheet .tap:hover{background:#27479a0f}.sheet .legend{margin:4px 0 8px;font-size:13px;color:var(--ink-2);text-align:right}.sheet .legend span{display:inline-block;width:22px;vertical-align:middle;border-top:2px solid #3b82f6}.sheet .legend span.dashed{border-top:2px dashed #22a55e}.sheet .table-wrap{overflow-x:auto;margin:0 0 16px}.sheet table.dir{border-collapse:collapse;width:100%;min-width:520px;font-size:13px}.sheet .dir th,.sheet .dir td{border:1px solid rgba(35,38,46,.25);padding:6px;text-align:center;vertical-align:middle}.sheet .dir thead th{background:#23262e0f}.sheet .dir td{line-height:1.5}.sheet canvas{display:block;width:100%;height:auto}.sheet .flow{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:8px;align-items:start;margin:4px 0 16px}.sheet .flow figure{margin:0}.sheet .flow figcaption{font-size:12px;font-weight:800;text-align:center;background:#22a55e24;padding:3px}.sheet .steps{display:grid;gap:2px;text-align:center;font-size:12px;font-weight:700}.sheet .steps .pair{display:grid;grid-template-columns:1fr 1fr;gap:4px}.sheet .steps .box{display:block;padding:6px 4px;background:#3b82f61a;border:1px solid rgba(35,38,46,.3)}.sheet .steps .down{color:var(--red)}.sheet .pick h3{margin:18px 0 6px;font-size:17px;font-weight:800}.sheet .pick .box{margin:0 0 8px;padding:10px 12px;border:1px solid rgba(35,38,46,.3);line-height:1.7}.sheet .steps-row{margin:4px 0 16px}.sheet .steps-row ol{display:flex;flex-wrap:wrap;gap:6px 0;list-style:none;margin:0;padding:0;align-items:center}.sheet .steps-row li{display:flex;align-items:center;font-size:13px;font-weight:700}.sheet .steps-row li+li:before{content:"→";margin:0 5px;color:#5b5f69}.sheet .steps-row .box{display:block;padding:6px 8px;background:#23262e0f;border:1px solid rgba(35,38,46,.3)}.sheet .steps-row figcaption{font-size:12px;text-align:center;color:#5b5f69;margin-top:6px}.sheet .structure{margin:0 auto;max-width:300px}.sheet .mark{text-decoration-color:#a0603a;text-underline-offset:3px}.sheet .mark-tag{color:#a0603a;font-weight:800}.sheet .map{margin:4px 0 16px}.sheet .map figcaption{font-size:13px;color:var(--ink-2);text-align:center;margin-top:4px}.sheet table.cause{min-width:0;text-align:left}.sheet .cause td{text-align:left}.sheet .cause ul,.sheet .aside ul{margin:0;padding-left:18px}.sheet table.enso td{text-align:left}.sheet .aside{margin:8px 0 16px;padding:12px 14px;border:1px solid rgba(35,38,46,.3);line-height:1.7;font-size:15px}.sheet .aside h3{margin:0 0 4px;font-size:16px}.sheet .aside p{margin:0 0 6px}.sheet .aside figure{margin:8px auto 0;max-width:260px}.sheet .aside figcaption{font-size:12px;color:var(--ink-2);text-align:center}.sheet .list .part{display:block;margin-top:10px;font-size:13px;color:var(--red);font-weight:800}.sheet .controls{margin-top:6px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.sheet .controls h2{width:100%}.sheet .seg{display:inline-flex;align-items:center;gap:2px;padding:3px;border-radius:10px;border:1.5px solid var(--ink)}.sheet .seg-label{font-size:13px;color:var(--ink-2);padding:0 6px;font-weight:700}.sheet .seg button{border:0;background:none;padding:6px 10px;border-radius:7px;min-height:38px;font-weight:700}.sheet .seg button[aria-checked=true]{background:var(--ink);color:var(--paper)}.sheet .timeline{display:flex;align-items:center;gap:10px;width:100%}.sheet .timeline input{flex:1;accent-color:var(--ink);min-height:42px}.sheet .act{border:1.5px solid var(--ink);background:var(--ink);color:var(--paper);border-radius:10px;padding:8px 14px;min-height:42px;font-weight:700}.sheet .list{padding-left:20px}.sheet .link{border:0;background:none;padding:6px 0;text-decoration:underline;font-size:16px;text-align:left}@media(max-aspect-ratio:19/20){body{overflow:auto;height:auto;min-height:100%}.stage{position:sticky;inset:0 auto auto;height:50svh;z-index:7;box-shadow:0 8px 18px -10px #3c321e73}.sheet,.sheet:focus-within{position:relative;width:auto;height:auto;max-height:none;overflow:visible;clip-path:none;left:auto;top:auto;z-index:6;margin:0;padding:22px 18px 120px;background:var(--paper)}.toolbar{gap:0;padding:5px 6px}.toolbar .where{min-width:0;max-width:42vw;overflow:hidden;text-overflow:ellipsis;font-size:15px;padding:0 6px}.toolbar .sep,.toolbar .ic[aria-label^=정지],.to-neuron span{display:none}.to-neuron{padding:6px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}
