.blog-brand-label{color:var(--ce-muted);border-left:1px solid var(--ce-line);padding-left:18px;font-size:13px}.blog-header .ce-nav-links{align-items:center;display:flex}.blog-header .blog-start{min-height:44px;color:var(--brand-on-accent);gap:12px;padding:10px 16px;font-size:13px}.blog-main{padding-bottom:64px}.blog-intro{padding:76px 0 54px}.blog-intro h1{letter-spacing:-.05em;max-width:900px;margin:20px 0;font-size:clamp(42px,5vw,64px);font-weight:500;line-height:1.1}.blog-intro>p:last-child{max-width:650px;color:var(--ce-muted);font-size:19px;line-height:1.75}.blog-kicker{color:var(--ce-muted);font:11px/1.7 var(--ce-mono);letter-spacing:.025em}.blog-index-layout{border-top:1px solid var(--ce-line);grid-template-columns:minmax(0,1fr) 240px;gap:80px;display:grid}.blog-row{border-bottom:1px solid var(--ce-line);padding:34px 0}.blog-row h2{letter-spacing:-.035em;margin:15px 0;font-size:clamp(25px,3vw,34px);font-weight:500;line-height:1.3}.blog-row h2 a:hover{color:var(--ce-accent)}.blog-row>p{max-width:65ch;color:var(--ce-muted);font-size:16px;line-height:1.75}.blog-row-meta{color:var(--ce-muted);flex-wrap:wrap;gap:10px 24px;margin-top:21px;font-size:12px;line-height:1.7;display:flex}.blog-index-aside{padding-top:40px}.blog-index-aside h2{letter-spacing:-.025em;font-size:19px;font-weight:500;line-height:1.5}.blog-index-aside p{color:var(--ce-muted);margin:16px 0;font-size:14px;line-height:1.8}.blog-index-aside a,.blog-next a,.blog-prose a,.blog-sources a,.blog-author-note a{color:var(--ce-accent);text-underline-offset:4px;text-decoration:underline}.blog-aside-note{border-top:1px solid var(--ce-line);margin-top:32px;padding-top:28px}.blog-empty{color:var(--ce-muted);padding:40px 0}.blog-breadcrumb{color:var(--ce-muted);flex-wrap:wrap;align-items:center;gap:12px;padding-top:28px;font-size:12px;line-height:1.7;display:flex}.blog-breadcrumb a{align-items:center;min-height:44px;display:inline-flex}.blog-article-heading{max-width:950px;padding:36px 0 44px}.blog-article-heading h1{letter-spacing:-.045em;text-wrap:balance;margin:20px 0 26px;font-size:clamp(36px,4.6vw,58px);font-weight:500;line-height:1.15}.blog-summary{max-width:760px;color:var(--ce-muted);font-size:20px;line-height:1.75}.blog-byline{color:var(--ce-muted);flex-wrap:wrap;gap:8px 24px;margin-top:28px;font-size:12px;line-height:1.7;display:flex}.blog-byline a{color:var(--ce-text);text-underline-offset:4px;text-decoration:underline}.blog-article-layout{border-top:1px solid var(--ce-line);grid-template-columns:minmax(0,740px) minmax(160px,1fr);gap:76px;padding-top:42px;display:grid}.blog-article-layout>div{min-width:0}.blog-prose{overflow-wrap:break-word;max-width:67ch;font-size:18px;line-height:1.85}.blog-prose section{scroll-margin-top:32px}.blog-prose section+section{margin-top:48px}.blog-prose h2{letter-spacing:-.03em;margin:0 0 22px;font-size:28px;font-weight:500;line-height:1.35}.blog-prose p{margin:0 0 23px}.blog-prose ul{margin:0 0 26px;padding-left:25px}.blog-prose li{margin-bottom:12px;padding-left:3px}.blog-prose pre{border:1px solid var(--ce-line);background:var(--brand-soft);max-width:100%;font:13px/1.85 var(--ce-mono);border-radius:8px;margin:28px 0;padding:24px;overflow:auto}.blog-prose pre:focus-visible,.blog-table-scroll:focus-visible{outline:2px solid var(--ce-accent);outline-offset:4px}.blog-table-scroll{max-width:100%;margin:26px 0;overflow-x:auto}.blog-prose table{border-collapse:collapse;width:100%;font-size:14px;line-height:1.75}.blog-prose th,.blog-prose td{text-align:left;vertical-align:top;border-bottom:1px solid var(--ce-line);min-width:125px;padding:16px 18px 16px 0}.blog-prose th{color:var(--ce-muted);font-size:12px;font-weight:500}.blog-toc details{position:sticky;top:28px}.blog-toc summary{min-height:44px;color:var(--ce-muted);cursor:pointer;font:11px/1.7 var(--ce-mono);align-items:center;display:flex}.blog-toc nav{gap:0;margin-top:12px;display:grid}.blog-toc nav a{min-height:44px;color:var(--ce-muted);align-items:center;padding:7px 0;font-size:12px;line-height:1.65;display:flex}.blog-toc nav a:hover{color:var(--ce-accent)}.blog-toc>p{border-top:1px solid var(--ce-line);color:var(--ce-muted);margin-top:28px;padding-top:22px;font-size:12px;line-height:1.9}.blog-sources{border-top:1px solid var(--ce-line);margin-top:48px;padding-top:28px}.blog-sources h2{letter-spacing:-.025em;font-size:19px;font-weight:500;line-height:1.5}.blog-sources ul{margin:18px 0;padding-left:20px}.blog-sources li{overflow-wrap:anywhere;margin-bottom:12px;font-size:14px;line-height:1.7}.blog-sources p{color:var(--ce-muted);font-size:12px;line-height:1.9}.blog-next{border-top:1px solid var(--ce-line);grid-template-columns:1fr 1fr;gap:68px;margin-top:64px;padding-top:36px;display:grid}.blog-next h2{letter-spacing:-.03em;margin:12px 0;font-size:27px;font-weight:500;line-height:1.3}.blog-next p{max-width:48ch;color:var(--ce-muted);margin-bottom:20px;font-size:15px;line-height:1.8}.blog-next li{margin:16px 0;font-size:15px;line-height:1.7}.blog-next ul{padding-left:20px}.blog-author-note{border-top:1px solid var(--ce-line);max-width:740px;padding:32px 0}.blog-author-note h2{margin-bottom:18px;font-size:24px;font-weight:500}.blog-author-note p{margin-bottom:20px;font-size:17px;line-height:1.85}@media (width<=900px){.blog-index-layout{grid-template-columns:minmax(0,1fr) 190px;gap:40px}.blog-article-layout{grid-template-columns:minmax(0,1fr) 160px;gap:36px}}@media (width<=680px){.blog-brand-label,.blog-header .blog-security-nav{display:none}.blog-header .ce-nav{gap:12px}.blog-header .ce-nav-links{gap:14px}.blog-header .ce-nav-links a{font-size:12px}.blog-header .blog-start{gap:8px;padding:9px 12px}.blog-main .blog-intro{padding:44px 0 34px}.blog-intro h1{font-size:42px}.blog-intro>p:last-child{font-size:17px}.blog-index-layout,.blog-article-layout,.blog-next{grid-template-columns:minmax(0,1fr);gap:32px}.blog-index-aside{padding-top:0}.blog-row{padding:28px 0}.blog-row h2{font-size:26px}.blog-article-heading{padding:24px 0 32px}.blog-article-heading h1{font-size:36px}.blog-summary{font-size:18px}.blog-article-layout{padding-top:28px}.blog-toc{border-bottom:1px solid var(--ce-line);grid-row:1;padding-bottom:24px}.blog-toc details{position:static}.blog-toc>p{display:none}.blog-prose{font-size:17px}.blog-prose h2{font-size:25px}.blog-prose pre{padding:18px;font-size:12px}.blog-next{margin-top:44px}.blog-main{padding-bottom:40px}}
