:root{--color-dark: #0A0A0A;--color-white: #FFFFFF;--color-accent: #2563EB;--color-accent-hover: #1D4ED8;--blog-bg: #FAF8F3;--blog-surface: #FFFFFF;--blog-surface-2: #F4F1EA;--blog-ink: #1A1A1A;--blog-ink-soft: rgba(10, 10, 10, .62);--blog-ink-mute: rgba(10, 10, 10, .42);--blog-border: #E5E2DB;--blog-quote-accent: var(--color-accent);--blog-code-bg: #F0EEE7;--blog-highlight-bg: rgba(37, 99, 235, .1);--blog-space-xs: .5rem;--blog-space-sm: 1rem;--blog-space-md: 1.5rem;--blog-space-lg: 2.5rem;--blog-space-xl: 4rem;--blog-space-2xl: 6rem}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{background:var(--blog-bg);color:var(--blog-ink);font-family:Inter,system-ui,sans-serif;font-size:19px;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--color-accent);text-decoration:none;transition:color .15s}a:hover{text-decoration:underline;color:var(--color-accent-hover)}body.interior-page{--blog-bg: var(--ci-bg);--blog-surface: var(--ci-surface);--blog-surface-2: var(--ci-surface-2);--blog-ink: var(--ci-text);--blog-ink-soft: var(--ci-text-muted);--blog-ink-mute: var(--ci-text-soft);--blog-border: var(--ci-border);--blog-code-bg: var(--ci-surface-2)}body.blog-body{padding-top:0}body.blog-body .post,body.blog-body .index-intro{padding-top:80px}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 20px}.progress-bar{position:fixed;top:0;left:0;height:2px;background:var(--color-accent);width:100%;transform:scaleX(0);transform-origin:left center;z-index:100;transition:transform .05s linear}.index-intro{padding:var(--blog-space-xl) 0 var(--blog-space-lg)}.index-intro h1{font-family:Inter,sans-serif;font-weight:700;font-size:40px;line-height:1.1;color:var(--blog-ink)}.index-intro p{font-family:Inter,system-ui,sans-serif;font-size:17px;color:var(--blog-ink-soft);margin-top:12px;max-width:600px}.hero-post{background:var(--blog-surface);border:1px solid var(--blog-border);border-radius:16px;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease;display:block;color:inherit}.hero-post:hover{transform:translateY(-4px);box-shadow:0 12px 30px #00000014;text-decoration:none}.hero-post img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block}.hero-post .body{padding:var(--blog-space-md)}.hero-post .meta{font-family:Inter,sans-serif;font-size:13px;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--blog-ink-soft)}.hero-post h2{font-family:Inter,sans-serif;font-weight:700;font-size:28px;line-height:1.2;margin:12px 0 8px;color:var(--blog-ink)}.hero-post .excerpt{font-family:Inter,system-ui,sans-serif;font-size:17px;color:var(--blog-ink-soft)}.hero-post .read-more{display:inline-block;margin-top:12px;color:var(--color-accent);font-family:Inter,sans-serif;font-weight:500;font-size:15px}.section-label{font-family:Inter,sans-serif;font-size:13px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--blog-ink-mute);margin:var(--blog-space-xl) 0 var(--blog-space-md)}.post-grid{display:grid;grid-template-columns:1fr;gap:var(--blog-space-md);padding-bottom:var(--blog-space-2xl)}.post-card{background:var(--blog-surface);border:1px solid var(--blog-border);border-radius:14px;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease;display:block;color:inherit}.post-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px #00000014;text-decoration:none}.post-card img{width:100%;height:auto;aspect-ratio:2/1;object-fit:cover;display:block}.post-card .body{padding:var(--blog-space-sm) var(--blog-space-md) var(--blog-space-md)}.post-card .meta{font-family:Inter,sans-serif;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--blog-ink-soft)}.post-card h3{font-family:Inter,sans-serif;font-weight:700;font-size:18px;line-height:1.25;margin:6px 0;color:var(--blog-ink)}.post-card .excerpt{display:none}.breadcrumbs{padding:24px 0 0;font-family:Inter,sans-serif;font-size:13px;color:var(--blog-ink-soft)}.breadcrumbs a{color:inherit}.breadcrumbs .separator{margin:0 6px;color:var(--blog-ink-mute)}.post-header{max-width:780px;margin:0 auto;padding:var(--blog-space-lg) 20px var(--blog-space-md)}.post-byline{font-family:Inter,sans-serif;font-size:13px;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--blog-ink-soft);display:flex;align-items:center;gap:10px}.post-byline img{width:24px;height:24px;border-radius:50%}.post-title{font-family:Inter,sans-serif;font-weight:700;font-size:32px;line-height:1.15;color:var(--blog-ink);margin:var(--blog-space-sm) 0 var(--blog-space-sm)}.post-dek{font-family:Inter,system-ui,sans-serif;font-size:17px;line-height:1.55;color:var(--blog-ink-soft)}.in-article-list{max-width:780px;margin:var(--blog-space-md) auto 0;padding:0 20px;font-family:Inter,sans-serif;font-size:14px}.in-article-list .label{text-transform:uppercase;letter-spacing:.08em;font-weight:500;color:var(--blog-ink-mute);margin-bottom:8px}.in-article-list ul{list-style:none;padding-left:0}.in-article-list li{padding:4px 0;border-bottom:1px solid var(--blog-border)}.in-article-list a{color:var(--blog-ink)}.post-cover{max-width:1040px;margin:var(--blog-space-lg) auto 0;padding:0 20px}.post-cover img{width:100%;height:auto;aspect-ratio:21/9;object-fit:cover;border-radius:12px;display:block}.post-body{max-width:780px;margin:var(--blog-space-lg) auto 0;padding:0 20px}.post-body p{margin-bottom:1.25em}.post-body h2{font-family:Inter,sans-serif;font-weight:700;font-size:24px;line-height:1.25;color:var(--blog-ink);margin-top:2.5em;margin-bottom:.5em;scroll-margin-top:80px}.post-body h3{font-family:Inter,sans-serif;font-weight:600;font-size:20px;line-height:1.3;color:var(--blog-ink);margin-top:2em;margin-bottom:.5em;scroll-margin-top:80px}.post-body strong{font-weight:700}.post-body em{font-style:italic;font-family:Inter,system-ui,sans-serif}.post-body ul,.post-body ol{padding-left:1.5em;margin-bottom:1.25em}.post-body li{margin-bottom:.5em}.post-body blockquote{border-left:4px solid var(--blog-quote-accent);padding-left:20px;margin:1.5em 0;font-style:italic;font-size:22px;color:var(--blog-ink-soft)}.post-body code{font-family:JetBrains Mono,Consolas,monospace;font-size:15px;background:var(--blog-code-bg);padding:2px 6px;border-radius:4px}.post-body pre{background:var(--blog-code-bg);padding:20px;border-radius:12px;overflow-x:auto;margin:1.5em 0}.post-body pre code{background:transparent;padding:0}.post-body img{width:100%;height:auto;aspect-ratio:21/9;object-fit:cover;border-radius:12px;margin:2em 0;display:block}.post-body figure{margin:2.5em 0}.post-body figure img{margin:0 0 8px}.post-body figcaption{font-family:Inter,system-ui,sans-serif;font-style:italic;font-size:14px;color:var(--blog-ink-soft);text-align:center;margin-top:8px}.post-body hr{display:none}.post-body table{width:100%;border-collapse:collapse;margin:1.5em 0;font-size:16px}.post-body th{background:var(--blog-code-bg);text-align:left;padding:10px;font-family:Inter,sans-serif;font-weight:600}.post-body td{padding:10px;border-bottom:1px solid var(--blog-border)}.post-body a{color:var(--color-accent)}.post-body a:hover{text-decoration:underline}.inline-cta{max-width:780px;margin:2em auto;padding:16px 20px;background:var(--blog-highlight-bg);border-left:3px solid var(--color-accent);border-radius:8px;font-family:Inter,sans-serif;font-size:16px;color:var(--blog-ink)}.inline-cta a{font-weight:600}.end-mark{display:block;margin:3em auto;width:16px;height:16px;opacity:.4}.cta-box{max-width:780px;margin:var(--blog-space-xl) auto var(--blog-space-lg);padding:40px 32px;background:var(--color-dark);color:var(--color-white);border-radius:20px;text-align:center}.cta-box h3{font-family:Inter,sans-serif;font-weight:700;font-size:24px;margin-bottom:12px}.cta-box p{font-family:Inter,system-ui,sans-serif;font-size:17px;color:#fffc;margin-bottom:24px}.cta-box .btn-primary{display:inline-block;background:var(--color-accent);color:var(--color-white);padding:14px 28px;border-radius:10px;font-family:Inter,sans-serif;font-weight:600;font-size:15px;transition:background .2s}.cta-box .btn-primary:hover{background:var(--color-accent-hover);text-decoration:none}.share-buttons{max-width:780px;margin:var(--blog-space-lg) auto 0;padding:0 20px;display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.share-buttons a,.share-buttons button{background:var(--blog-surface);border:1px solid var(--blog-border);color:var(--blog-ink);padding:10px 16px;border-radius:8px;font-family:Inter,sans-serif;font-size:14px;font-weight:500;cursor:pointer;transition:border-color .2s;display:inline-flex;align-items:center;gap:8px}.share-buttons a:hover,.share-buttons button:hover{border-color:var(--color-accent);text-decoration:none}.share-buttons svg{width:18px;height:18px}.post-nav{max-width:780px;margin:var(--blog-space-xl) auto var(--blog-space-2xl);padding:var(--blog-space-md) 20px;border-top:1px solid var(--blog-border);display:flex;justify-content:space-between;gap:20px;flex-direction:column}.post-nav a{font-family:Inter,sans-serif;font-size:15px;color:var(--blog-ink)}.post-nav .label{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--blog-ink-mute);display:block;margin-bottom:4px;font-weight:500}.post-nav .prev{text-align:left}.post-nav .next{text-align:right}.toc-sidebar{display:none}.not-found{max-width:600px;margin:0 auto;padding:var(--blog-space-2xl) 20px;text-align:center}.not-found h1{font-family:Inter,sans-serif;font-weight:700;font-size:48px;color:var(--blog-ink)}.not-found p{font-family:Inter,system-ui,sans-serif;font-size:18px;color:var(--blog-ink-soft);margin:16px 0 32px}*:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.skip-link{position:absolute;top:-40px;left:0;background:var(--color-accent);color:var(--color-white);padding:8px 16px;z-index:200}.skip-link:focus{top:0}.draft-banner{background:#fff3cd;color:#664d03;padding:12px 20px;text-align:center;font-family:Inter,sans-serif;font-weight:600;font-size:14px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}@media(min-width:768px){.container{padding:0 32px}.post-grid{grid-template-columns:1fr 1fr;gap:28px}.index-intro h1{font-size:56px}.post-nav{flex-direction:row}}@media(min-width:1024px){.index-intro h1{font-size:64px}.hero-post{display:grid;grid-template-columns:58% 42%;align-items:center}.hero-post img{aspect-ratio:16/9}.hero-post .body{padding:var(--blog-space-lg)}.hero-post h2{font-size:32px}.post-grid{grid-template-columns:repeat(3,1fr);gap:28px}.post-title{font-size:48px}.post-body{font-size:19px}.post-body h2{font-size:30px}.post-body h3{font-size:24px}.post-body blockquote{font-size:26px}.post-layout.has-toc{display:grid;grid-template-columns:1fr 240px;grid-template-rows:auto 1fr;gap:0 48px;max-width:1120px;margin:0 auto;padding:0 20px}.post-layout.has-toc>.breadcrumbs{grid-column:1 / -1;padding:24px 0 0}.post-layout.has-toc>.toc-sidebar{grid-column:2;grid-row:2}.post-layout.has-toc>div{grid-column:1;grid-row:2;min-width:0}.post-layout.has-toc .post-body{max-width:none;padding:0}.toc-sidebar.enabled{display:block;position:sticky;top:80px;align-self:start;font-family:Inter,sans-serif;font-size:14px;padding-top:var(--blog-space-lg)}.toc-sidebar .toc-label{text-transform:uppercase;letter-spacing:.08em;font-weight:500;color:var(--blog-ink-mute);margin-bottom:12px;font-size:12px}.toc-sidebar ul{list-style:none;padding-left:0}.toc-sidebar li{padding:6px 0}.toc-sidebar li.h3{padding-left:16px;font-size:13px}.toc-sidebar a{color:var(--blog-ink-soft)}.toc-sidebar a.toc-active{color:var(--color-accent);font-weight:600}}
