:root{color-scheme:light;--bg:#faf9f6;--text:#252724;--muted:#656d65;--accent:#476657;--line:#dedfd7;--surface:#f0f1eb;--code:#fff;--notice:#eef2eb;background:var(--bg);color:var(--text);font-synthesis:none;font-family:Pretendard Variable,Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=dark]{color-scheme:dark;--bg:#181c1a;--text:#e5e9e5;--muted:#a5afa7;--accent:#9cc9b0;--line:#353e37;--surface:#222923;--code:#24292e;--notice:#253229}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a:hover{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:5px}h1,h2,h3,p{margin:0}::selection{color:#1d2e24;background:#bed3bd}html{scroll-behavior:smooth;scroll-padding-top:30px}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;max-width:1080px;margin:auto;padding:30px 0;display:flex}.brand{letter-spacing:-.5px;align-items:center;gap:12px;font-size:18px;font-weight:650;display:flex}.brand-mark{border:1px solid var(--accent);width:30px;height:32px;color:var(--accent);border-radius:9px;place-items:center;font-size:17px;display:grid;transform:rotate(-5deg)}.site-header nav{color:var(--muted);align-items:center;gap:28px;font-size:14px;display:flex}.site-header nav a[aria-current]{color:var(--text)}.theme-toggle{border:1px solid var(--line);color:var(--text);cursor:pointer;background:0 0;border-radius:50%;width:38px;height:38px;font-size:22px}main{min-height:calc(100vh - 220px)}.home-intro{max-width:880px;margin:auto;padding:86px 0 73px}.eyebrow{letter-spacing:2.2px;color:var(--accent);margin-bottom:24px;font-size:11px;font-weight:650}.home-intro h1{letter-spacing:-1.7px;font-size:40px;font-weight:620;line-height:1.45}.title-dot{color:var(--accent)}.intro-copy{color:var(--muted);margin-top:24px;font-size:17px;line-height:1.9}.intro-detail{color:var(--muted);align-items:center;gap:10px;margin-top:31px;font-size:12px;display:flex}.intro-detail>span{color:var(--accent);font-size:22px}.recent-posts{max-width:880px;margin:0 auto 90px}.section-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:20px;display:flex}.section-heading h2{letter-spacing:-.5px;font-size:18px;font-weight:600}.section-heading>span{color:var(--muted);font-size:12px}.post-row{border-bottom:1px solid var(--line);padding:30px 0 31px}.post-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:12px;font-size:12px;line-height:1.7;display:flex}.draft-badge{background:var(--surface);color:var(--accent);border-radius:4px;padding:2px 8px;font-size:11px}.post-row h3{letter-spacing:-.6px;margin:11px 0 10px;font-size:23px;font-weight:600;line-height:1.5}.post-row h3 a{justify-content:space-between;align-items:center;gap:16px;display:flex}.row-arrow{color:var(--muted);font-size:20px;font-weight:400}.post-row>p{color:var(--muted);max-width:720px;font-size:15px;line-height:1.8}.tag-list{color:var(--accent);flex-wrap:wrap;gap:14px;margin-top:17px;font-size:12px;display:flex}.tag-list span:before{content:"#";opacity:.6;margin-right:3px}.site-footer{border-top:1px solid var(--line);max-width:1080px;color:var(--muted);justify-content:space-between;margin:auto;padding:27px 0 35px;font-size:12px;display:flex}.empty-state{text-align:center;padding:66px 20px}.empty-state>span{color:var(--accent);font-size:32px}.empty-state h3{margin:20px 0 12px;font-size:20px;font-weight:550}.empty-state p{color:var(--muted);font-size:15px}.article-shell{grid-template-columns:minmax(0,720px) 200px;gap:72px;max-width:1080px;margin:55px auto 80px;padding-left:40px;display:grid}.article-content{min-width:0}.draft-notice{color:var(--accent);background:var(--notice);border-radius:6px;margin-bottom:30px;padding:12px 16px;font-size:12px;line-height:1.8}.article-header{border-bottom:1px solid var(--line);margin-bottom:42px;padding-bottom:34px}.article-header h1{letter-spacing:-1.5px;margin:20px 0;font-size:40px;font-weight:650;line-height:1.35}.article-summary{color:var(--muted);font-size:18px;line-height:1.8}.prose{overflow-wrap:anywhere;font-size:18px;line-height:1.85}.prose p{margin:0 0 24px}.prose h2{letter-spacing:-.7px;margin:52px 0 23px;font-size:27px;font-weight:650;line-height:1.5}.prose h3{margin:35px 0 18px;font-size:21px;line-height:1.5}.prose a{text-underline-offset:4px;color:var(--accent);text-decoration:underline}.prose ul,.prose ol{margin:0 0 24px;padding-left:25px}.prose li+li{margin-top:8px}.prose blockquote{border-left:3px solid var(--accent);color:var(--muted);margin:30px 0;padding:6px 0 6px 22px}.prose blockquote p{margin:0}.prose img{border-radius:8px;width:100%;height:auto;margin:32px 0 12px;display:block}.prose code{background:var(--surface);border-radius:4px;padding:3px 5px;font-family:Consolas,SFMono-Regular,monospace;font-size:.84em}.prose pre{white-space:pre;border:1px solid var(--line);border-radius:8px;margin:0;padding:48px 23px 24px;font-size:14px;line-height:1.75;overflow-x:auto;background:var(--code)!important}.prose pre code{font-size:inherit;overflow-wrap:normal;background:0 0;border-radius:0;padding:0}.code-container{margin:28px 0;position:relative}.copy-code{border:1px solid var(--line);background:var(--bg);color:var(--muted);cursor:pointer;border-radius:5px;padding:4px 10px;font-size:11px;position:absolute;top:9px;right:12px}:root[data-theme=dark] .astro-code,:root[data-theme=dark] .astro-code span{color:var(--shiki-dark)!important;background-color:var(--shiki-dark-bg)!important}.table-scroll{border:1px solid var(--line);border-radius:7px;margin:28px 0;overflow-x:auto}.prose table{border-collapse:collapse;text-align:left;width:100%;font-size:15px}.prose th,.prose td{border-bottom:1px solid var(--line);min-width:130px;padding:12px 16px}.prose th{background:var(--surface);font-weight:600}.prose tr:last-child td{border-bottom:none}.desktop-toc nav{border-left:1px solid var(--line);margin-top:166px;padding-left:20px;font-size:12px;line-height:1.7;position:sticky;top:40px}.desktop-toc p{margin-bottom:15px;font-weight:600}.desktop-toc a,.mobile-toc a{color:var(--muted);padding:6px 0;display:block}.desktop-toc a:hover,.mobile-toc a:hover{color:var(--accent)}.nested{padding-left:12px!important}.mobile-toc{display:none}.article-end{border-top:1px solid var(--line);color:var(--muted);justify-content:flex-end;align-items:center;margin-top:60px;padding-top:35px;font-size:14px;display:flex}.skip-link{background:var(--bg);z-index:10;padding:12px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:12px}.sr-only{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=1150px){.site-header,.site-footer{margin-left:40px;margin-right:40px}.home-intro,.recent-posts{margin-left:80px;margin-right:80px}.article-shell{grid-template-columns:minmax(0,720px) 160px;gap:35px;padding:0 40px}}@media (width<=900px){.article-shell{max-width:800px;display:block}.desktop-toc{display:none}.mobile-toc{background:var(--surface);border-radius:6px;margin-bottom:32px;padding:16px 20px;font-size:14px;display:block}.mobile-toc summary{cursor:pointer;font-weight:600}.mobile-toc nav{margin-top:15px}.home-intro,.recent-posts{margin-left:40px;margin-right:40px}}@media (width<=600px){.site-header{margin:0 20px;padding:22px 0}.brand{gap:9px;font-size:16px}.site-header nav{gap:18px}.brand-mark{width:27px;height:29px}.home-intro{margin:0 20px;padding:56px 0 48px}.eyebrow{margin-bottom:21px;font-size:10px}.home-intro h1{letter-spacing:-1.1px;font-size:30px;line-height:1.5}.intro-copy{margin-top:21px;font-size:15px}.desktop-break{display:none}.intro-detail{margin-top:25px;font-size:11px}.recent-posts{margin:0 20px 60px}.section-heading>span{font-size:11px}.post-row{padding:25px 0}.post-row h3{font-size:21px}.post-row>p{font-size:14px}.site-footer{margin:0 20px;padding:24px 0;font-size:11px}.article-shell{margin:30px auto 55px;padding:0 20px}.draft-notice{margin-bottom:25px;font-size:11px}.article-header h1{letter-spacing:-1px;font-size:30px}.article-summary{font-size:17px}.article-header{margin-bottom:28px;padding-bottom:28px}.prose{font-size:17px}.prose h2{margin-top:40px;font-size:24px}.prose pre{padding-left:17px;padding-right:17px}.prose th,.prose td{padding:10px 13px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.header-actions{align-items:center;gap:28px;display:flex}.menu-toggle{display:none}.section-heading>a{color:var(--muted);font-size:12px}.tag-list>a{color:var(--accent)}.tag-list>a:before{content:"#";opacity:.6;margin-right:3px}.post-meta>span>a+a{margin-left:10px}.preview-note{color:var(--muted);margin:18px 0;font-size:12px;line-height:1.8}.page-shell{max-width:880px;margin:70px auto 90px}.page-heading{border-bottom:1px solid var(--line);margin-bottom:24px;padding-bottom:38px}.page-heading h1{letter-spacing:-1.2px;font-size:36px;font-weight:620;line-height:1.4}.page-heading>p:not(.eyebrow){color:var(--muted);margin-top:18px;font-size:17px;line-height:1.8}.back-link{color:var(--muted);margin-bottom:25px;font-size:14px;display:inline-block}.about-page{max-width:720px}.about-page .prose{padding-top:15px}.tag-cloud{flex-wrap:wrap;gap:14px;margin:0;padding:16px 0;list-style:none;display:flex}.tag-cloud a{border:1px solid var(--line);border-radius:6px;align-items:center;gap:14px;padding:12px 17px;font-size:15px;display:flex}.tag-cloud span{color:var(--muted);font-size:12px}#search-form{margin-top:32px}#search-form label{margin-bottom:12px;font-size:14px;display:block}.search-field{gap:12px;display:flex}.search-field input{min-width:0;font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--text);border-radius:6px;flex:1;padding:15px 17px;font-size:16px}.search-field button{background:var(--accent);color:var(--bg);cursor:pointer;border:0;border-radius:6px;padding:12px 22px}.search-status{color:var(--muted);margin:24px 0;font-size:14px;line-height:1.8}.search-results{margin:0;padding:0;list-style:none}.search-results li{border-bottom:1px solid var(--line);padding:25px 0}.search-results h2{font-size:22px;font-weight:600;line-height:1.5}.search-results p{color:var(--muted);margin-top:12px;font-size:15px;line-height:1.8}@media (width<=1000px){.page-shell{margin:60px 40px 80px}.about-page{margin-left:auto;margin-right:auto;padding:0 40px}}@media (width<=600px){.header-actions{gap:13px}.site-header{position:relative}.menu-toggle{color:var(--text);cursor:pointer;background:0 0;border:0;padding:10px 5px;font-size:13px;display:block}.site-header #site-nav{background:var(--bg);border:1px solid var(--line);z-index:5;border-radius:7px;flex-direction:column;align-items:stretch;gap:0;padding:10px 16px;display:flex;position:absolute;top:100%;left:0;right:0}.site-header #site-nav a{padding:13px 6px}.js .menu-toggle[aria-expanded=false]+#site-nav{display:none}.page-shell,.about-page{margin:40px 20px 60px;padding:0}.page-heading h1{font-size:30px}.page-heading>p:not(.eyebrow){font-size:16px}.page-heading{padding-bottom:30px}.search-field{gap:8px}.search-field button{padding:12px 17px}.search-results h2{font-size:20px}}@media (width>=601px){.site-header #site-nav{display:flex!important}}.site-header{gap:20px}.brand{min-width:0}.brand-mark{flex-shrink:0}.brand-mark svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.brand-title{overflow-wrap:anywhere;word-break:keep-all;min-width:0;line-height:1.5}.header-actions{flex-shrink:0}.article-header h1,.article-summary,.post-row h3{overflow-wrap:anywhere;word-break:keep-all}@media (width<=600px){.site-header{gap:12px}}@font-face{font-family:Pretendard Variable;font-weight:45 920;font-style:normal;font-display:swap;src:url(/_astro/PretendardVariable.CJuje-Rk.woff2)format("woff2-variations")}
