:root{--content-max: 860px;--text: #111827;--muted: #6b7280;--bg: #ffffff;--border: #e5e7eb;--link: #2563eb}*{box-sizing:border-box}html,body{height:100%;margin:0;color:var(--text);background:var(--bg);font-family:"Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif;line-height:1.75;letter-spacing:-0.01em;word-break:keep-all}.site-header{background-color:#333;color:#fff;width:100%;padding:1rem 0;margin:0;text-align:center}.site-title{font-size:2.5rem;font-weight:bold;text-align:left;margin:0;padding-left:1rem;padding-right:1rem;max-width:var(--content-max);margin-left:auto;margin-right:auto}.site-title a{color:#fff;text-decoration:none}.site-nav{display:flex;justify-content:flex-start;padding:0;max-width:var(--content-max);margin-left:auto;margin-right:auto;position:relative}.site-nav a{color:#fff;text-decoration:none;margin:0 1rem;font-size:1.125rem}.site-nav a:hover{color:#ddd}.post-header{background-color:transparent;max-width:var(--content-max);margin:0 auto;padding:1rem 0;text-align:left}.post-title{font-size:2.2rem;font-weight:bold;margin:1.5rem 0;color:#333;text-align:left}.page-content,.post-content,main{max-width:var(--content-max);margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}ul,ol{margin-bottom:1.25rem;padding-left:1.5rem}li{margin-bottom:0.75rem}pre{background:#1f2430 !important;color:#d8dee9 !important;border:1px solid #2f3645;border-radius:12px;padding:16px 20px;overflow-x:auto;white-space:pre !important;word-break:normal !important;overflow-wrap:normal !important;line-height:1.65;font-size:0.95rem;letter-spacing:0 !important;tab-size:4;box-shadow:0 8px 24px rgba(15,23,42,0.18)}pre code{background:transparent !important;color:inherit !important;font-family:Consolas, "Courier New", monospace !important;font-variant-ligatures:none !important;white-space:pre !important;word-break:normal !important;overflow-wrap:normal !important;letter-spacing:0 !important}.hljs{color:#d8dee9;background:transparent !important}.hljs-keyword,.hljs-meta{color:#84a0ff !important;font-weight:600}.hljs-built_in,.hljs-type,.hljs-title.class_,.hljs-title.class{color:#73daca !important}.hljs-title,.hljs-function{color:#ffd580 !important;font-weight:600}.hljs-string{color:#a3d977 !important}.hljs-number,.hljs-literal{color:#f5a97f !important}.hljs-comment,.hljs-quote{color:#7f8c98 !important;font-style:italic}.hljs-tag{color:#ff9e64 !important;font-weight:600}.hljs-tag .hljs-name,.hljs-name{color:#7dcfff !important;font-weight:600}.hljs-tag .hljs-attr,.hljs-attr{color:#bb9af7 !important}.hljs-tag .hljs-string,.hljs-string{color:#a3d977 !important}.hljs-tag .hljs-punctuation{color:#c0caf5 !important}.hljs-section,.hljs-selector-class,.hljs-selector-id{color:#bb9af7 !important}.hljs-variable,.hljs-template-variable,.hljs-params{color:#e6b3ff !important}.hljs-punctuation,.hljs-operator{color:#aab4c3 !important}code.highlighter-rouge:not(pre code),:not(pre) code.highlighter-rouge{background-color:rgba(255,255,255,0.08) !important;border-color:rgba(255,255,255,0.14) !important;color:#e5e7eb !important}button.copy-btn{background-color:#3490dc;color:white;border:none;padding:0.5rem 1rem;border-radius:6px;cursor:pointer;margin-top:0.5rem;transition:background-color 0.3s}button.copy-btn:hover{background-color:#2779bd}table{width:100%;border-collapse:collapse;margin:1.5rem 0}th,td{padding:0.8rem;text-align:left;border:1px solid #e5e7eb}th{background-color:#f4f4f4;color:#333;font-weight:bold}tr:nth-child(even){background-color:#f9f9f9}tr:hover{background-color:#f1f1f1}td{background-color:#fff;color:#333}hr{border:none;height:1px;background:#e5e7eb;margin:3rem 0}blockquote{margin:0.8rem 0;padding:0.75rem 1rem;line-height:1.65;border-left:4px solid #4a90e2;background-color:#f8f9fa;font-size:0.95rem;color:#555}blockquote p{margin-bottom:0.5rem}blockquote p:last-child{margin-bottom:0}blockquote ul,blockquote ol{margin:0.4rem 0;padding-left:1.2rem}blockquote li{margin:0.25rem 0}.site-footer{background-color:#333;color:#fff;text-align:center;padding:1rem;margin-top:2rem;width:100%}.site-footer p{margin:0;font-size:1rem}code.highlighter-rouge:not(pre code),:not(pre) code.highlighter-rouge{background-color:#eef2f7 !important;color:#111827 !important;border:1px solid #d1d5db !important;padding:0.18rem 0.4rem !important;border-radius:6px !important;font-size:0.98em !important;font-weight:600 !important;line-height:1.2 !important;font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important}.main-image{width:50%;max-width:380px;height:auto;margin-bottom:1.4rem;border-radius:12px;display:block}.book-image{width:200px;max-width:380px;height:auto;margin-bottom:1.4rem;border-radius:12px;display:block}.sub-image{width:100%;max-width:800px;height:auto;margin-bottom:1.4rem;border-radius:12px;display:block}.series-box{background:#f5f5f5;border-left:5px solid #4f8ef7;padding:16px 20px;margin-bottom:30px;border-radius:6px}.series-title{font-size:18px;font-weight:bold;margin-bottom:10px}.series-description{color:#666;margin-bottom:12px}.series-box ul{margin:0;padding-left:18px}.series-box li{margin:6px 0}.post-tag{display:inline-block;margin-right:6px;margin-bottom:4px;padding:4px 10px;background:#eef6ff;color:#3568c9;border-radius:5px;font-size:0.8rem;font-weight:500}.series-next-box{margin-top:48px;padding:24px 28px;background:#f5f5f5;border:1px solid #e0e0e0;border-left:5px solid #4f8ef7;border-radius:8px}.series-next-label{margin-bottom:10px;font-size:16px;font-weight:700;color:#555}.series-next-link{display:flex;align-items:center;justify-content:space-between;gap:16px;color:#222;text-decoration:none}.series-next-link:hover{text-decoration:none}.series-next-title{font-size:19px;font-weight:700;line-height:1.5}.series-next-arrow{flex-shrink:0;font-size:26px;font-weight:700;transition:transform 0.2s ease}.series-next-link:hover .series-next-title{text-decoration:underline}.series-next-link:hover .series-next-arrow{transform:translateX(5px)}.series-navigation{display:flex;gap:20px;margin-top:48px;padding-top:28px;border-top:1px solid #d8dee4}.series-navigation-item{flex:1;min-width:0}.series-navigation-item a{display:flex;flex-direction:column;height:100%;padding:18px 20px;color:inherit;text-decoration:none;background-color:#f6f8fa;border:1px solid #d8dee4;border-radius:10px;box-sizing:border-box;transition:background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease}.series-navigation-prev a{border-top:3px solid #6b7280}.series-navigation-next a{border-top:3px solid #3b82f6}.series-navigation-item a:hover{background-color:#eef2f6;border-color:#9ca3af;box-shadow:0 4px 12px rgba(31,41,55,0.12);transform:translateY(-2px)}.series-navigation-label{display:block;margin-bottom:8px;font-size:13px;font-weight:600;color:#57606a}.series-navigation-title{display:block;font-size:16px;font-weight:700;line-height:1.5;color:#24292f}.series-navigation-next{text-align:right}@media screen and (max-width: 600px){.series-navigation{flex-direction:column;gap:12px}.series-navigation-next{text-align:left}.series-navigation-item:empty{display:none}}.image-row{display:flex;gap:16px}.image-row img{width:100%}.image-row figure{flex:1;margin:0;text-align:center}@media (max-width: 768px){.image-row{flex-direction:column}}
