:root{--blog-bg:var(--background);--blog-paper:var(--card);--blog-ink:var(--strong);--blog-body:var(--foreground);--blog-muted:var(--muted-foreground);--blog-line:var(--border);--blog-blue:var(--primary);--blog-caution:oklch(52% .14 36)}.blog-shell{width:min(1328px,100% - 64px);margin-inline:auto}.blog-kicker,.blog-section-index,.blog-aside-label{color:var(--blog-blue);margin:0;font-size:12px;font-weight:700}.blog-list-hero{border-bottom:1px solid var(--blog-line);background:var(--blog-paper)}.blog-list-hero-inner{padding:88px 0 76px}.blog-list-hero h1{max-width:780px;color:var(--blog-ink);font-family:var(--font-serif);text-wrap:balance;margin:16px 0 20px;font-size:64px;font-weight:400;line-height:1.18}.blog-list-hero h1 em,.blog-article-hero h1 em{color:var(--blog-blue);font-style:normal}.blog-list-hero-inner>p:last-child{max-width:680px;color:var(--blog-muted);margin:0;font-size:18px;line-height:1.8}.blog-list{padding:64px 0 110px}.blog-list-heading{border-bottom:1px solid var(--blog-line);justify-content:space-between;align-items:baseline;gap:24px;padding-bottom:15px;display:flex}.blog-list-feature{grid-template-columns:72px minmax(0,1fr);gap:32px;padding:38px 0 12px;display:grid}.blog-list-feature+.blog-list-feature{border-top:1px solid var(--blog-line);margin-top:40px;padding-top:44px}.blog-feature-mark{color:var(--blog-blue);font-family:var(--font-mono);line-height:1}.blog-feature-mark span{font-size:38px;font-weight:400;display:block}.blog-feature-mark small{color:var(--blog-muted);margin-top:8px;font-size:10px;display:block}.blog-post-meta,.blog-article-meta{color:var(--blog-muted);font-family:var(--font-mono);flex-wrap:wrap;gap:7px 16px;margin:0 0 13px;font-size:10px;line-height:1.7;display:flex}.blog-list-feature h3{max-width:790px;color:var(--blog-ink);font-family:var(--font-sans);text-wrap:balance;margin:0;font-size:31px;font-weight:600;line-height:1.38}.blog-list-feature h3 a:hover,.blog-list-feature h3 a:focus-visible{color:var(--blog-blue)}.blog-list-feature-copy>p:not(.blog-post-meta){max-width:650px;color:var(--blog-muted);margin:15px 0 20px;font-size:16px;line-height:1.8}.blog-arrow-link,.blog-back-link,.blog-inline-links a{color:var(--blog-blue);font-size:13px;font-weight:600}.blog-arrow-link span,.blog-inline-links span{margin-left:5px;transition:transform .16s;display:inline-block}.blog-arrow-link:hover span,.blog-arrow-link:focus-visible span,.blog-inline-links a:hover span,.blog-inline-links a:focus-visible span{transform:translate(2px,-2px)}.blog-article-hero{border-bottom:1px solid var(--blog-line);background:var(--blog-bg)}.blog-article-hero-inner{padding:34px 0 70px}.blog-back-link{color:var(--blog-muted);margin-bottom:56px;display:inline-block}.blog-back-link:hover,.blog-back-link:focus-visible{color:var(--blog-blue)}.blog-article-hero h1{max-width:900px;color:var(--blog-ink);font-family:var(--font-serif);text-wrap:balance;margin:16px 0 21px;font-size:48px;font-weight:400;line-height:1.25}.blog-dek{max-width:700px;color:var(--blog-muted);margin:0 0 23px;font-size:17px;line-height:1.8}.blog-article-meta{margin:0}.blog-article-layout{grid-template-columns:190px minmax(0,760px);justify-content:center;gap:52px;padding:54px 0 110px;display:grid}.blog-aside{border-top:1px solid var(--blog-line);color:var(--blog-muted);align-self:start;gap:9px;padding-top:13px;font-size:12px;display:grid;position:sticky;top:94px}.blog-aside a:hover,.blog-aside a:focus-visible{color:var(--blog-blue)}.blog-article-body{min-width:0;color:var(--blog-body);font-size:16.5px;line-height:1.9}.blog-article-body>p{margin:0 0 22px}.blog-lede{color:var(--blog-ink);font-size:19px;font-weight:500;line-height:1.75}.blog-article-body strong{color:var(--blog-ink);font-weight:600}.blog-principle{margin:82px 0 90px}.blog-principle h2{max-width:680px;color:var(--blog-ink);font-family:var(--font-serif);text-wrap:balance;margin:13px 0 30px;font-size:38px;font-weight:400;line-height:1.35}.blog-principle-copy{width:min(100%,650px)}.blog-principle-copy p{color:var(--blog-muted);margin:0 0 20px}.blog-principle-statement{max-width:610px;color:var(--blog-blue);text-wrap:balance;margin:44px 0 0;font-size:26px;font-weight:500;line-height:1.5}.blog-principle-statement:before{border-top:1px solid var(--blog-blue);content:"";width:48px;margin-bottom:16px;display:block}.blog-section{border-top:1px solid var(--blog-line);margin-top:68px;padding-top:18px}.blog-section h2{color:var(--blog-ink);font-family:var(--font-serif);text-wrap:balance;margin:11px 0 28px;font-size:31px;font-weight:400;line-height:1.4}.blog-plan-list{grid-template-columns:repeat(3,1fr);display:grid}.blog-plan{border-right:1px solid var(--blog-line);min-height:252px;padding:20px 20px 22px}.blog-plan:last-child{border-right:0}.blog-plan-name{color:var(--blog-blue);font-family:var(--font-mono);margin:0 0 16px;font-size:11px;font-weight:700}.blog-plan h3{color:var(--blog-ink);margin:0 0 10px;font-size:20px;font-weight:600;line-height:1.45}.blog-plan p:not(.blog-plan-name){color:var(--blog-muted);margin:0;font-size:14px;line-height:1.8}.blog-plan>span{color:var(--blog-muted);font-family:var(--font-mono);margin-top:22px;font-size:10px;display:block}.blog-timeline{border-top:1px solid var(--blog-line)}.blog-timeline>div{border-bottom:1px solid var(--blog-line);grid-template-columns:130px minmax(0,1fr);gap:24px;padding:20px 0;display:grid}.blog-timeline span{color:var(--blog-blue);font-size:12px;font-weight:700}.blog-timeline p{margin:0;font-size:15px;line-height:1.85}.blog-section-closing{padding-bottom:18px}.blog-inline-links{flex-wrap:wrap;gap:9px 23px;margin:21px 0 25px;display:flex}.blog-signature{color:var(--blog-blue);margin-top:32px;font-weight:600}.blog-technical{--blog-caution:oklch(52% .14 36)}.blog-technical-hero{background:var(--blog-paper)}.blog-technical-layout{grid-template-columns:190px minmax(0,760px)}.blog-technical-body p{margin:0 0 22px}.blog-technical-summary{border-left:3px solid var(--blog-blue);margin:0 0 78px;padding:4px 0 4px 25px}.blog-technical-summary h2{color:var(--blog-ink);font-family:var(--font-serif);margin:0 0 16px;font-size:31px;font-weight:400}.blog-technical-summary p{color:var(--blog-ink);margin:0}.blog-technical-section{margin-top:68px;scroll-margin-top:92px}.blog-technical-section+.blog-technical-section{border-top:1px solid var(--blog-line);padding-top:18px}.blog-technical-section h2{color:var(--blog-ink);font-family:var(--font-serif);margin:0 0 28px;font-size:31px;font-weight:400;line-height:1.4}.native-equation{border-block:1px solid var(--blog-line);background:var(--blog-paper);max-width:100%;color:var(--blog-ink);text-align:center;margin:26px 0;padding:20px 18px;overflow-x:auto}.blog-boundary-list{border-top:1px solid var(--blog-line);margin:32px 0}.blog-boundary-list section{border-bottom:1px solid var(--blog-line);grid-template-columns:170px minmax(0,1fr);gap:24px;padding:21px 0;display:grid}.blog-boundary-list h3,.blog-judgement h3,.blog-method-steps h3{color:var(--blog-blue);margin:0;font-size:14px;line-height:1.7}.blog-boundary-list section:first-child h3,.blog-boundary-list section:nth-child(2) h3{color:var(--blog-caution)}.blog-boundary-list p{margin:0}.blog-judgement,.blog-key-point{border-left:3px solid var(--blog-caution);padding-left:23px}.blog-judgement p{color:var(--blog-ink);margin:0}.blog-evidence-list{border-top:1px solid var(--blog-line);margin:0;padding:0;list-style:none}.blog-evidence-list li{border-bottom:1px solid var(--blog-line);padding:17px 0 17px 28px}.blog-method-steps{margin:0;padding:0;list-style:none}.blog-method-steps li{border-bottom:1px solid var(--blog-line);grid-template-columns:190px minmax(0,1fr);gap:28px;padding:21px 0;display:grid}.blog-method-steps li:first-child{border-top:1px solid var(--blog-line)}.blog-method-steps p{margin:0}.blog-report-copy{border:0;border-block:1px solid var(--blog-blue);color:var(--blog-ink);margin:30px 0 38px;padding:26px 7px;font-size:18px;line-height:1.85}.blog-key-point{border-color:var(--blog-blue);color:var(--blog-ink)}@media (width<=980px){.blog-shell{width:min(100% - 40px,820px)}.blog-list-hero-inner{padding:70px 0 60px}.blog-list-hero h1{font-size:48px}.blog-list-hero-inner>p:last-child{font-size:16px}.blog-list{padding:56px 0 90px}.blog-list-feature{padding-top:30px;display:block}.blog-list-feature+.blog-list-feature{margin-top:36px;padding-top:38px}.blog-feature-mark{align-items:baseline;gap:8px;margin-bottom:18px;display:flex}.blog-feature-mark span{font-size:34px}.blog-feature-mark small{margin:0}.blog-article-hero-inner{padding:26px 0 54px}.blog-back-link{margin-bottom:48px}.blog-article-hero h1{font-size:40px}.blog-dek{font-size:16px}.blog-article-layout{padding:48px 0 88px;display:block}.blog-aside{flex-wrap:wrap;gap:7px 14px;margin-bottom:42px;display:flex;position:static}.blog-aside-label{width:100%}.blog-article-body{font-size:16px}.blog-lede{font-size:18px}.blog-technical-summary{margin-bottom:64px;padding-left:20px}.blog-technical-section{margin-top:58px}.blog-boundary-list section,.blog-method-steps li{grid-template-columns:1fr;gap:7px}.blog-report-copy{font-size:17px}.blog-principle{margin:68px 0 76px}.blog-principle h2{font-size:32px}.blog-principle-copy{width:100%}.blog-principle-statement{margin-top:38px;font-size:23px}.blog-section{margin-top:58px}.blog-section h2,.blog-technical-section h2{font-size:27px}.blog-plan-list{display:block}.blog-plan{border-right:0;border-bottom:1px solid var(--blog-line);min-height:0;padding:19px 16px 21px}.blog-plan:last-child{border-bottom:0}.blog-plan>span{margin-top:16px}.blog-timeline>div{grid-template-columns:92px minmax(0,1fr);gap:14px}.blog-timeline p{font-size:15px}}@media (width<=680px){.blog-shell{width:calc(100% - 32px)}.blog-list-hero h1{font-size:43px}.blog-list-feature h3{font-size:27px}.blog-article-hero h1{font-size:39px}}@media (prefers-reduced-motion:reduce){.blog-shell *{scroll-behavior:auto;transition:none}}
