:root{color-scheme:light dark}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}:root{--c-canvas: light-dark(#eef1f7, #0c1124);--c-canvas-2: light-dark(#dfe7f8, #111a38);--c-surface: light-dark(#ffffff, #141b34);--c-sunken: light-dark(#e6ebf5, #0a0f20);--c-hover: light-dark(#e3e9f7, #1c2546);--c-ink: light-dark(#141a33, #e8ebf7);--c-soft: light-dark(#3c4566, #bfc6e0);--c-muted: light-dark(#5d6688, #8e97b8);--c-border: light-dark(#d3dbec, #263055);--c-border-strong: light-dark(#9eabcc, #3d4a7a);--c-accent: light-dark(#24348c, #9db0ff);--c-accent-hover: light-dark(#1b2870, #b9c7ff);--c-accent-soft: light-dark(#dfe5fa, #1d2856);--c-on-accent: light-dark(#ffffff, #0c1124);--c-ruby: light-dark(#4c5a9a, #a9b6e6);--c-preedit: light-dark(#c0392b, #ff9a8b);--c-telegram: #229ed9;--f-serif: "Noto Serif KR", "Noto Serif CJK KR", "Source Han Serif K", "Batang", serif;--f-sans: "Pretendard", "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", system-ui, sans-serif;--f-round: "Gowun Batang", var(--f-serif);--f-mono: "JetBrains Mono", ui-monospace, monospace;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 24px;--s-6: 32px;--s-7: 48px;--s-8: 72px;--s-9: 112px;--r-1: 6px;--r-2: 10px;--r-3: 16px;--shadow-1: 0 1px 2px light-dark(rgb(20 26 51 / .08), rgb(0 0 0 / .4));--shadow-2: 0 8px 28px light-dark(rgb(36 52 140 / .14), rgb(0 0 0 / .5));--ease: cubic-bezier(.2, .7, .2, 1);--t-fast: .12s;--t-med: .26s;--w-page: 1120px}:root{--c-select: light-dark(#b9cbff, #34478f)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--c-canvas);color:var(--c-ink);font:16px/1.65 var(--f-sans);font-feature-settings:"palt" 0}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}a{color:var(--c-accent);text-underline-offset:3px}:focus-visible{outline:2px solid var(--c-accent);outline-offset:2px;border-radius:var(--r-1)}::selection{background:var(--c-select)}rt{font:500 .42em/1 var(--f-sans);color:var(--c-ruby);letter-spacing:.02em}.btn{display:inline-flex;align-items:center;gap:var(--s-2);min-height:36px;padding:0 var(--s-4);border:1px solid var(--c-border-strong);border-radius:999px;background:var(--c-surface);color:var(--c-ink);font:600 14px/1 var(--f-sans);cursor:pointer;text-decoration:none;transition:background var(--t-fast),border-color var(--t-fast)}.btn:hover{background:var(--c-hover)}.btn[data-variant=primary]{background:var(--c-accent);border-color:var(--c-accent);color:var(--c-on-accent)}.btn[data-variant=primary]:hover{background:var(--c-accent-hover)}.btn[data-size=lg]{min-height:48px;padding:0 var(--s-5);font-size:16px}.seg{display:inline-flex;padding:3px;border:1px solid var(--c-border);border-radius:999px;background:var(--c-sunken)}.seg button{min-height:28px;padding:0 var(--s-3);border:0;border-radius:999px;background:none;color:var(--c-soft);font:600 13px/1 var(--f-sans);cursor:pointer}.seg button[aria-pressed=true]{background:var(--c-surface);color:var(--c-accent);box-shadow:var(--shadow-1)}.switch{display:inline-flex;align-items:center;gap:var(--s-2);font-size:14px;color:var(--c-soft);cursor:pointer}.switch input{accent-color:var(--c-accent);width:16px;height:16px}[id]{scroll-margin-top:64px}.section{width:min(var(--w-page),100%);margin-inline:auto;padding-block:var(--s-8);padding-inline:var(--s-4)}.eyebrow{margin:0 0 var(--s-2);color:var(--c-accent);font:700 13px/1.4 var(--f-sans);letter-spacing:.12em}.h2{margin:0 0 var(--s-4);font:800 clamp(28px,4vw,40px) / 1.25 var(--f-serif);letter-spacing:-.01em}.lede{max-width:62ch;margin:0 0 var(--s-6);color:var(--c-soft);font-size:17px}.card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-3);box-shadow:var(--shadow-1)}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.btn:has(ruby),nav a:has(ruby){line-height:2.1;padding-top:4px}.btn rt,nav rt{font-size:.5em}.btn[data-variant=primary] rt{color:inherit;opacity:.8}.btn:disabled{opacity:.5;cursor:default}kbd{display:inline-block;min-width:1.9em;padding:.12em .45em .18em;border:1px solid var(--c-border-strong);border-bottom-width:2px;border-radius:5px;background:linear-gradient(var(--c-surface),var(--c-sunken));box-shadow:0 1px 0 var(--c-border);color:var(--c-ink);font:600 .82em/1.2 var(--f-sans);text-align:center;white-space:nowrap;vertical-align:.05em}.ui-field{display:inline-flex;align-items:center;gap:var(--s-2);min-height:32px;color:var(--c-soft);font-size:14px;cursor:pointer;user-select:none}.ui-field:has(:disabled){opacity:.55;cursor:default}.ui-check,.ui-radio,.ui-switch{appearance:none;-webkit-appearance:none;flex:none;margin:0;display:inline-grid;place-content:center;border:1.5px solid var(--c-border-strong);background:var(--c-surface);cursor:inherit;transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}.ui-check:hover,.ui-radio:hover,.ui-switch:hover{border-color:var(--c-accent)}.ui-check:focus-visible,.ui-radio:focus-visible,.ui-switch:focus-visible{outline:2px solid var(--c-accent);outline-offset:2px}.ui-check{width:18px;height:18px;border-radius:5px}.ui-check:before{content:"";width:10px;height:10px;clip-path:polygon(14% 52%,0 66%,38% 100%,100% 22%,86% 8%,37% 70%);background:var(--c-on-accent);transform:scale(0);transition:transform var(--t-fast) var(--ease)}.ui-check:checked{background:var(--c-accent);border-color:var(--c-accent)}.ui-check:checked:before{transform:scale(1)}.ui-check:indeterminate:before{clip-path:inset(40% 10%);transform:scale(1);background:var(--c-accent)}.ui-radio{width:18px;height:18px;border-radius:50%}.ui-radio:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--c-accent);transform:scale(0);transition:transform var(--t-fast) var(--ease)}.ui-radio:checked{border-color:var(--c-accent)}.ui-radio:checked:before{transform:scale(1)}.ui-switch{width:36px;height:20px;padding:2px;border-radius:999px;place-content:center start;background:var(--c-sunken)}.ui-switch:before{content:"";width:14px;height:14px;border-radius:50%;background:var(--c-muted);box-shadow:var(--shadow-1);transition:transform var(--t-med) var(--ease),background var(--t-fast)}.ui-switch:checked{background:var(--c-accent);border-color:var(--c-accent)}.ui-switch:checked:before{background:var(--c-on-accent);transform:translate(16px)}.ui-input{height:40px;padding:0 var(--s-4);border:1px solid var(--c-border-strong);border-radius:999px;background:var(--c-surface);color:var(--c-ink);font:15px var(--f-sans);transition:border-color var(--t-fast)}.ui-input::placeholder{color:var(--c-muted)}.ui-input:hover{border-color:var(--c-accent)}.ui-input:focus-visible{outline:2px solid var(--c-accent);outline-offset:1px}*{scrollbar-width:thin;scrollbar-color:var(--c-border-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:999px;background:var(--c-border-strong) padding-box}::-webkit-scrollbar-thumb:hover{background-color:var(--c-accent)}@media(forced-colors:active){.ui-check,.ui-radio,.ui-switch{border-color:CanvasText}.ui-check:checked,.ui-switch:checked{background:Highlight}.ui-check:before,.ui-switch:before{background:Canvas}.ui-radio:before{background:Highlight}}[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .7s var(--ease),transform .7s var(--ease);transition-delay:calc(var(--i, 0) * 70ms)}[data-reveal][data-shown]{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none}}.ui-select-wrap{position:relative;display:inline-flex}.ui-select-wrap:after{content:"";position:absolute;right:11px;top:50%;width:7px;height:7px;border:solid var(--c-muted);border-width:0 1.5px 1.5px 0;transform:translateY(-70%) rotate(45deg);pointer-events:none}.ui-select{appearance:none;-webkit-appearance:none;height:34px;padding:0 30px 0 var(--s-3);border:1px solid var(--c-border-strong);border-radius:var(--r-1);background:var(--c-surface);color:var(--c-ink);font:500 13.5px var(--f-sans);cursor:pointer}.ui-select:hover{border-color:var(--c-accent)}.ui-select:focus-visible{outline:2px solid var(--c-accent);outline-offset:1px}.progress{position:fixed;inset:0 0 auto;z-index:30;height:3px;background:var(--c-accent);transform-origin:left;transform:scaleX(0)}@supports (animation-timeline: scroll()){.progress{animation:progress linear both;animation-timeline:scroll(root)}}@keyframes progress{to{transform:scaleX(1)}}@media(prefers-reduced-motion:reduce){.progress{display:none}}
