:root{--brand: #64523c;--brand-ink: #4a3d2c;--brand-soft: #8a7a64;--bg: #f5f5f5;--surface: #ffffff;--band: #f7f5f2;--ink: #1f1f1f;--muted: #6b6155;--line: #e4e0da;--maxw: 1080px;--radius: 14px;--shadow: 0 1px 2px rgba(31, 31, 31, .04), 0 8px 24px rgba(31, 31, 31, .06);--font: "Pretendard Variable", "Pretendard", "Apple SD Gothic Neo", "Noto Sans KR", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}body{margin:0;font-family:var(--font);color:var(--ink);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3{line-height:1.25;letter-spacing:-.02em;margin:0}a{color:inherit}.container{max-width:var(--maxw);margin:0 auto;padding:0 24px}.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 22px;border-radius:10px;font-weight:600;font-size:.98rem;text-decoration:none;border:1px solid transparent;transition:transform .06s ease,background .15s ease,border-color .15s ease;cursor:pointer}.btn:active{transform:translateY(1px)}.btn--primary{background:var(--brand);color:#fff}.btn--primary:hover{background:var(--brand-ink)}.btn--ghost{background:transparent;color:var(--brand);border-color:var(--line)}.btn--ghost:hover{border-color:var(--brand)}:root{--inf-brown: #64523c;--inf-brown-ink: #4a3d2c;--inf-brown-soft: #8a7a64;--inf-brown-tint: #efe9e1;--inf-bg: #f5f5f5;--inf-surface: #ffffff;--inf-surface-low: #fafafa;--inf-surface-high: #eeeeee;--inf-band: #f7f5f2;--inf-sidebar: #f6f5f3;--inf-ink: #1f1f1f;--inf-muted: #6b6155;--inf-caption: #8a8079;--inf-ink-strong: #313a46;--inf-line: #dddddd;--inf-line-warm: #e4e0da;--inf-outline: #bdbdbd;--inf-icon: #495057;--inf-neutral: #8c8378;--inf-success: #198754;--inf-danger: #dc3545;--inf-warning: #ff7043;--inf-info: #ffc107;--inf-blue: #0d47a1;--inf-primary: var(--inf-brown);--inf-primary-hover: var(--inf-brown-ink);--inf-on-primary: #ffffff;--inf-text: var(--inf-ink);--inf-text-muted: var(--inf-muted);--inf-text-caption: var(--inf-caption);--inf-text-link: var(--inf-brown);--inf-surface-card: var(--inf-surface);--inf-border: var(--inf-line);--inf-border-focus: var(--inf-brown);--inf-overlay-soft: rgba(100, 82, 60, .08);--inf-overlay-hover: rgba(100, 82, 60, .12);--inf-overlay-press: rgba(100, 82, 60, .18)}[data-theme=dark]{--inf-bg: #262729;--inf-surface: #1b1b1c;--inf-surface-low: #1e1e20;--inf-surface-high: #2e2f31;--inf-band: #202022;--inf-sidebar: #202021;--inf-ink: #d7d7d7;--inf-muted: #a39990;--inf-caption: #a39990;--inf-ink-strong: #aab8c5;--inf-line: #393a41;--inf-line-warm: #393a41;--inf-outline: #555555;--inf-icon: #aaaaaa;--inf-neutral: #a39a8f;--inf-success: #2ea96b;--inf-danger: #f04654;--inf-warning: #ff8a65;--inf-info: #ffd54f;--inf-blue: #5c8df9;--inf-brown-tint: #2a2620;--inf-overlay-soft: rgba(160, 140, 116, .12);--inf-overlay-hover: rgba(160, 140, 116, .18);--inf-overlay-press: rgba(160, 140, 116, .26)}:root{--inf-font: "Pretendard Variable", "Pretendard", "Apple SD Gothic Neo", "Noto Sans KR", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--inf-w-regular: 400;--inf-w-medium: 500;--inf-w-semibold: 600;--inf-w-bold: 700;--inf-w-extrabold: 800;--inf-display-lg: 57px;--inf-display-md: 45px;--inf-display-sm: 36px;--inf-headline-lg: 32px;--inf-headline-md: 28px;--inf-headline-sm: 26px;--inf-title-lg: 22px;--inf-title-md: 16px;--inf-title-sm: 14px;--inf-label-lg: 14px;--inf-label-md: 12px;--inf-label-sm: 11px;--inf-body-lg: 16px;--inf-body-md: 14px;--inf-body-sm: 12px;--inf-leading-tight: 1.25;--inf-leading-normal: 1.5;--inf-leading-relaxed: 1.6;--inf-tracking-tight: -.02em;--inf-tracking-label: .04em}:where(body){font-feature-settings:"tnum" 1;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}:root{--inf-space-1: 4px;--inf-space-2: 8px;--inf-space-3: 12px;--inf-space-4: 16px;--inf-space-5: 20px;--inf-space-6: 24px;--inf-space-8: 32px;--inf-space-10: 40px;--inf-space-12: 48px;--inf-space-16: 64px;--inf-space-20: 80px;--inf-space-24: 96px;--inf-radius-input: 0px;--inf-radius-button: 2px;--inf-radius-chip: 3px;--inf-radius-card: 4px;--inf-radius-web-btn: 10px;--inf-radius-web-card: 14px;--inf-border-width: 1px;--inf-shadow-none: none;--inf-shadow-pop: 0 2px 8px rgba(31, 31, 31, .1);--inf-shadow-web: 0 1px 2px rgba(31, 31, 31, .04), 0 8px 24px rgba(31, 31, 31, .06);--inf-shadow-web-hover: 0 4px 8px rgba(31, 31, 31, .06), 0 16px 36px rgba(31, 31, 31, .08);--inf-maxw: 1080px;--inf-sidebar-w: 260px;--inf-sidebar-w-collapsed: 70px;--inf-topbar-h: 56px;--inf-ease: cubic-bezier(.4, 0, .2, 1);--inf-ease-out: cubic-bezier(.16, 1, .3, 1);--inf-dur-fast: .12s;--inf-dur: .2s}*{box-sizing:border-box}body{margin:0;background:var(--inf-bg);color:var(--inf-ink);font-family:var(--inf-font);-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1;line-height:1.6}html{scroll-behavior:smooth}::selection{background:#64523c2e}@keyframes infCaret{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes infProg{0%,5%{width:4%}38%{width:100%}80%{width:100%}90%{width:4%}to{width:4%}}@keyframes infCheck{0%,50%{opacity:0;transform:scale(.4)}60%{opacity:1;transform:scale(1.18)}68%{transform:scale(1)}90%{opacity:1}98%{opacity:0}}@keyframes infShimmer{0%{transform:translate(-140%) skew(-18deg)}55%,to{transform:translate(320%) skew(-18deg)}}@keyframes infType{0%,8%{width:0}40%{width:100%}90%{width:100%}97%{width:0}to{width:0}}@keyframes infSel{0%,8%{opacity:0;transform:translateY(0)}16%{opacity:1;transform:translateY(0)}36%{transform:translateY(0)}44%{transform:translateY(40px)}64%{transform:translateY(40px)}72%{transform:translateY(80px)}92%{transform:translateY(80px);opacity:1}to{opacity:0;transform:translateY(80px)}}@keyframes infPageIn{0%,4%{opacity:0;transform:translateY(24px) rotate(-2.5deg)}18%{opacity:1;transform:translateY(0) rotate(0)}86%{opacity:1;transform:translateY(0) rotate(0)}95%{opacity:0;transform:translateY(-10px)}to{opacity:0}}@keyframes infMergeL{0%{opacity:1;transform:translate(-34px) translateY(8px) rotate(-8deg)}38%{opacity:1;transform:translate(0) translateY(0) rotate(0)}48%{opacity:0}90%{opacity:0}95%{opacity:1;transform:translate(-34px) translateY(8px) rotate(-8deg)}to{opacity:1;transform:translate(-34px) translateY(8px) rotate(-8deg)}}@keyframes infMergeR{0%{opacity:1;transform:translate(34px) translateY(8px) rotate(8deg)}38%{opacity:1;transform:translate(0) translateY(0) rotate(0)}48%{opacity:0}90%{opacity:0}95%{opacity:1;transform:translate(34px) translateY(8px) rotate(8deg)}to{opacity:1;transform:translate(34px) translateY(8px) rotate(8deg)}}@keyframes infMergeC{0%{opacity:1;transform:translateY(10px)}38%{opacity:1;transform:translateY(0)}48%{opacity:0}90%{opacity:0}95%{opacity:1;transform:translateY(10px)}to{opacity:1;transform:translateY(10px)}}@keyframes infMerged{0%,44%{opacity:0;transform:scale(.88) translateY(8px)}54%{opacity:1;transform:scale(1) translateY(0)}86%{opacity:1}92%{opacity:0}to{opacity:0}}@keyframes infDot{0%,to{opacity:.35;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}@keyframes infBarPulse{0%,to{opacity:.55}50%{opacity:1}}@keyframes infSweepRow{0%,52%{background:transparent}62%{background:var(--inf-overlay-soft)}86%{background:var(--inf-overlay-soft)}to{background:transparent}}@keyframes infScan{0%,6%{top:8%;opacity:0}12%{opacity:1}88%{top:90%;opacity:1}96%,to{top:90%;opacity:0}}@keyframes infRowDrop{0%,10%{opacity:0;transform:translateY(-12px)}22%{opacity:1;transform:translateY(0)}90%{opacity:1}97%{opacity:0}to{opacity:0}}@keyframes infFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes infSpin{to{transform:rotate(360deg)}}
