@font-face{font-family:Manrope;src:url('/_next/static/_vinext_fonts/manrope-76eca2803f7f/manrope-81401990.woff2') format('woff2');font-weight:200 800;font-display:swap}
:root{--paper:#f7f7f5;--ink:#101318;--muted:#58616d;--line:#d9dde2;--blue:#176dff;--mono:ui-monospace,SFMono-Regular,Consolas,monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:1rem;line-height:1.6}a{color:inherit;text-decoration:none}button,input{font:inherit;color:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--blue);outline-offset:5px}button{border:0}img{max-width:100%}h1,h2,p{margin:0}h1,h2{overflow-wrap:anywhere}h1{font-weight:550;letter-spacing:-.058em;line-height:1.1}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;clip:rect(0,0,0,0);overflow:hidden;white-space:nowrap}.skip-link{position:absolute;left:20px;top:-120px;z-index:20;padding:10px;background:#fff}.skip-link:focus{top:12px}.blog-header{height:86px;padding:0 clamp(20px,4vw,64px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);gap:24px}.wordmark{font-size:1.55rem;font-weight:750;letter-spacing:-.065em;width:max-content}.brand-x{color:var(--blue)}.primary-nav{display:flex;align-items:center;gap:30px;font-size:.875rem}.primary-nav>a{color:var(--muted)}.primary-nav>a:hover,.primary-nav .nav-blog{color:var(--ink)}.nav-blog{border-bottom:2px solid var(--blue);padding-block:10px}.languages{display:flex;align-items:center;justify-self:end;gap:3px}.languages>a{font-family:var(--mono);font-size:.875rem;padding:8px 10px;border-radius:5px;color:var(--muted)}.languages>a[aria-current=page]{background:var(--ink);color:#fff}.languages>a:hover{background:#e2e6ea;color:var(--ink)}.blog-main{max-width:1280px;padding:65px 40px 90px;margin:auto}.blog-intro{max-width:950px}.eyebrow{font-family:var(--mono);letter-spacing:.1em;font-size:.75rem;line-height:1.7;color:#2768c9;display:block}.blog-intro h1{font-size:clamp(2.8rem,5vw,4.5rem);margin:18px 0 20px}.blog-intro>p:last-child{color:var(--muted);font-size:1.125rem;max-width:730px}.search-form{margin:44px 0 28px}.search-row{max-width:800px;border:1px solid #b6bec8;background:#fff;border-radius:8px;display:flex;align-items:center;padding:6px;gap:12px}.search-icon{font-size:1.7rem;line-height:1;padding-left:14px;flex:none}.search-row input{border:0;outline-offset:0;background:none;min-width:0;width:100%;padding:12px 0;font-size:1rem}.search-row input::placeholder{color:#6b7480}.search-button{background:var(--ink);color:#fff;padding:12px 25px;border-radius:5px;font-size:.875rem;flex:none}.search-button:hover{background:var(--blue)}.tag-filters{padding:0;border:0;margin:24px 0 0;display:flex;flex-wrap:wrap;gap:8px}.tag-filter{font-size:.875rem;line-height:1.4;border:1px solid #d0d5db;border-radius:100px;padding:9px 16px;background:transparent}.tag-filter:hover{border-color:var(--blue)}.tag-filter.active{color:#fff;background:var(--blue);border-color:var(--blue)}.results-count{font-size:.875rem;color:var(--muted);padding:17px 0;border-top:1px solid var(--line);margin-bottom:20px}.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.post-card{padding:27px 25px 24px;border:1px solid var(--line);border-radius:4px;background:#fff;display:flex;flex-direction:column;min-width:0;transition:transform .2s,border-color .2s}.post-card:hover{border-color:#aab9ce;transform:translateY(-3px)}.card-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;align-items:center;font-size:.75rem;color:var(--muted);margin-bottom:24px}.draft-label{color:#764b05;background:#fff1d5;border:1px solid #ead5ae;border-radius:4px;padding:3px 8px;font-size:.75rem}.post-card h2{font-size:1.55rem;letter-spacing:-.035em;line-height:1.27;font-weight:650;margin-bottom:16px}.post-card h2>a:hover{color:#155ac6}.post-card>p{font-size:1rem;line-height:1.65;color:var(--muted);margin-bottom:24px}.card-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:auto}.tag{font-size:.75rem;color:#365376;background:#eff3f8;border:1px solid #dce4ee;border-radius:4px;padding:4px 8px}.tag:hover{border-color:#447dd0}.read-link{font-size:.875rem;font-weight:650;color:#165fcf;width:max-content;border-bottom:1px solid #a4c3ed;padding-bottom:3px;margin-top:26px}.read-link:hover{border-color:var(--blue)}.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:40px;font-size:.875rem;gap:20px}.pagination a{border:1px solid var(--line);padding:10px 18px;border-radius:5px}.empty-state{padding:70px 20px 100px;text-align:center}.empty-state h1,.empty-state h2{font-size:1.8rem;letter-spacing:-.04em;font-weight:600;margin-bottom:14px}.empty-state p{color:var(--muted);max-width:640px;margin:auto}.text-link{display:inline-block;color:#165fcf;border-bottom:1px solid #a4c3ed;margin-top:24px}.search-error{color:#8c2723;padding:14px 0}.blog-footer{border-top:1px solid var(--line);padding:32px clamp(20px,4vw,64px);display:flex;gap:20px;align-items:center;justify-content:space-between;font-size:.875rem;color:var(--muted)}.article-main{max-width:1280px;padding:50px 40px 90px;margin:auto}.back-link{font-size:.875rem;color:var(--muted);border-bottom:1px solid #b6bec8}.article-main>article{max-width:840px;margin:50px auto 0}.article-meta{display:flex;gap:20px;align-items:center;flex-wrap:wrap;font-size:.875rem;color:var(--muted);margin-bottom:24px}.article-meta>span:first-child{color:#165fcf;font-weight:600}.article-heading h1{font-size:clamp(2.4rem,4.4vw,4rem);margin-bottom:25px}.article-deck{color:var(--muted);font-size:1.2rem;line-height:1.6;max-width:760px;margin-bottom:24px}.article-heading .card-tags{margin-bottom:45px}.article-body{font-size:1.125rem;line-height:1.85;max-width:740px}.article-body section{margin-bottom:42px}.article-body h2{font-size:1.65rem;letter-spacing:-.03em;line-height:1.3;font-weight:650;margin:38px 0 20px}.article-body p{margin:0 0 22px}.author-card{border-top:1px solid #cdd3db;border-bottom:1px solid #cdd3db;padding:32px 0;display:flex;gap:24px;align-items:center;margin-top:65px}.author-card img{width:104px;height:104px;border-radius:50%;object-fit:cover;object-position:51% 40%;flex:none}.author-card .eyebrow{font-size:.75rem}.author-card h2{font-size:1.5rem;letter-spacing:-.03em;font-weight:650;margin:4px 0}.author-card p{font-size:.875rem;color:var(--muted);max-width:550px}.author-card a{display:inline-block;color:#165fcf;font-size:.875rem;margin-top:9px;border-bottom:1px solid #a4c3ed}.related{margin-top:80px}.related>h2{font-size:1.8rem;font-weight:550;letter-spacing:-.04em;margin-bottom:28px}.review-banner{background:#eaf2fe;border-bottom:1px solid #b6ceef;padding:12px clamp(20px,4vw,64px);font-size:.875rem;display:flex;justify-content:space-between;align-items:center;gap:20px}.review-banner strong{color:#1653a7;margin-right:15px}.review-banner span{color:#365376}.review-banner button{background:transparent;border-bottom:1px solid #365376;font-size:.875rem;color:#365376;white-space:nowrap}.review-entry{max-width:780px;padding:100px 30px;margin:auto}.review-entry h1{font-size:2.6rem;margin:20px 0}.review-entry p{color:var(--muted)}.review-entry>a{display:inline-block;margin-top:30px;color:#165fcf}
@media(max-width:1000px){.post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-header{gap:15px;padding-inline:24px}.primary-nav{gap:20px}.primary-nav>a:nth-child(2){display:none}}
@media(max-width:640px){.blog-header{height:auto;min-height:76px;padding:15px 20px;grid-template-columns:1fr auto;gap:10px}.primary-nav{grid-row:2;grid-column:1/-1;gap:21px;overflow-x:auto;font-size:.875rem}.primary-nav>a:nth-child(2){display:block}.languages{grid-row:1;grid-column:2}.blog-main{padding:40px 20px 60px}.blog-intro h1{font-size:2.8rem}.blog-intro>p:last-child{font-size:1rem}.search-form{margin-top:30px}.search-row{gap:7px}.search-icon{padding-left:6px}.search-button{padding:12px 14px}.search-row input{font-size:1rem}.tag-filters{gap:7px}.tag-filter{padding:8px 13px}.post-grid{grid-template-columns:1fr}.post-card{padding:25px}.blog-footer{flex-wrap:wrap;gap:12px}.blog-footer>span:last-child{width:100%}.article-main{padding:30px 20px 60px}.article-main>article{margin-top:35px}.article-heading h1{font-size:2.45rem}.article-deck{font-size:1.125rem}.article-body{font-size:1.0625rem}.article-body h2{font-size:1.5rem}.author-card{align-items:flex-start;gap:17px}.author-card img{width:75px;height:75px}.author-card h2{font-size:1.25rem}.author-card p{font-size:.875rem}.review-banner{align-items:flex-start;gap:10px}.review-banner strong,.review-banner span{display:block}.related{margin-top:55px}.pagination{gap:10px}.pagination a{padding:9px 12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.post-card{transition:none}.post-card:hover{transform:none}}
.article-body a{color:#165fcf;text-decoration:underline;text-underline-offset:3px}
.author-links{display:flex;flex-wrap:wrap;gap:4px 20px}
.more-tags{width:100%;font-size:.875rem;margin-top:7px}.more-tags summary{width:max-content;cursor:pointer;color:#365376;padding:7px 0}.more-tags summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.more-tags>div{display:flex;flex-wrap:wrap;gap:8px;padding-top:8px}
