.reading-progress{position:absolute;inset-inline-start:0;bottom:-1px;width:100%;height:1px;background:var(--fg);z-index:var(--z-floating);pointer-events:none;transform:scaleX(0);transform-origin:left center;transition:opacity var(--duration-ui) var(--ease-standard)}.reading-progress.done{opacity:0}.blog-head{max-width:760px;margin:0 auto;padding-top:var(--gutter)}.blog-hero__img{width:100%;height:auto;object-fit:cover;display:block;margin-bottom:var(--gutter);border-radius:var(--radius);border:1px solid var(--shade-10);padding:0}@supports (corner-shape:superellipse(1.25)){:where(.blog-hero__img,.article-body img,.article-body .code-block pre,.article-body .card){corner-shape:superellipse(1.25)}}[data-theme=dark] .blog-hero__img--light{display:none}[data-theme=light] .blog-hero__img--dark,:root:not([data-theme=dark]) .blog-hero__img--dark{display:none}.blog-head .section-head{padding:0;margin-bottom:0}.blog-head .section-title{margin:10px 0 20px}.blog-head .section-sub{display:flex;align-items:center;gap:6px;font-size:var(--text-xxs);margin-bottom:0}.blog-reading-time{display:inline-flex;align-items:center;gap:4px}.blog-reading-time::before{content:"·";margin:0 2px}.article{max-width:760px;margin:0 auto}.article-body{font-size:var(--text-sm);line-height:var(--lh-prose);color:var(--mid);margin-top:24px}.article-body>*{margin:0}.article-body>*+*{margin-top:24px}.article-body>*+h2{margin-top:56px}.article-body>*+h3,.article-body>*+h4,.article-body>*+h5{margin-top:40px}.article-body>h2+*{margin-top:16px}.article-body>h3+*,.article-body>h4+*,.article-body>h5+*{margin-top:12px}.article-body>h2+h3{margin-top:24px}.article-body>.divider,.article-body>.divider+*{margin-top:48px}.article-body a.article-cta{display:flex;width:fit-content;margin:50px auto}.article-body h2,.article-body h3,.article-body h4,.article-body h5{color:var(--fg);font-weight:var(--fw-medium);line-height:var(--lh-snug)}.article-body h2{font-size:var(--text-lg);line-height:var(--lh-snug)}.article-body h3{font-size:var(--text-base);line-height:var(--lh-snug)}.article-body h4{font-size:var(--text-sm);line-height:var(--lh-normal)}.article-body h5{font-size:var(--text-xs);line-height:var(--lh-normal)}.article-body a:not([class*=btn]){color:var(--fg)}.article-body strong{font-weight:var(--fw-medium);color:var(--fg)}.article-body img,.article-body .image-article{max-width:100%;height:auto;border-radius:15px}.article-body img.border,.article-body .image-article.border{border:1px solid var(--rule)}.article-body ul,.article-body ol{padding-inline-start:0}.article-body li{margin-bottom:.5em}.article-body li:last-child{margin-bottom:0}.article-body code{font-size:.9em;background:var(--shade-10);border-radius:5px;color:var(--fg);padding:2px 6px;font-family:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace}.article-body .code-block{position:relative}.article-body .code-block pre{background:var(--tint);padding:24px;overflow-x:auto;margin:0;font-size:var(--text-xs);line-height:var(--lh-body);border-radius:var(--radius);border:1px solid var(--rule);scrollbar-width:none}.article-body .code-block pre::-webkit-scrollbar{display:none}[data-theme=dark] .article-body pre{background:var(--tint)}.article-body pre code{background:0 0;padding:0}.article-body pre mark{background:0 0;color:#1e6bb8;font-family:inherit}[data-theme=dark] .article-body pre mark{color:#79c0ff}.article-body table{width:100%;border-collapse:collapse;font-size:var(--text-xs)}.article-body table th,.article-body table td{text-align:start;padding:12px 0;border-bottom:1px solid var(--rule)}.article-body table th{font-weight:var(--fw-medium);color:var(--fg)}.article-body blockquote,.article-body .quote{border-inline-start:3px solid var(--shade-15);padding-inline-start:20px;font-style:italic;color:var(--mid);font-size:var(--text-xs);line-height:var(--lh-prose)}.testimonial{background:var(--tint);border:1px solid var(--shade-10);border-radius:14px;padding:24px;display:flex;flex-direction:column;gap:16px}.testimonial__quote{font-style:italic;color:var(--mid);font-size:var(--text-xs);line-height:var(--lh-prose)}.testimonial__author{display:flex;align-items:center;gap:12px}.testimonial__avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;flex-shrink:0;border:1px solid var(--shade-10)}.testimonial__name{font-size:var(--text-xxs);line-height:var(--lh-normal);color:var(--fg);font-weight:var(--fw-medium)}.testimonial__role{font-size:var(--text-xxs);line-height:var(--lh-normal);color:var(--mid)}.article-body .m-btn-big,.article-body .cta-button{display:inline-flex;align-items:center;gap:8px;padding:9px 17px;line-height:var(--lh-body);background:var(--fg);color:var(--bg);text-decoration:none;font-size:var(--text-sm);border-radius:12px;transition:background-color var(--duration-fast)}@media (hover:hover) and (pointer:fine){.article-body .m-btn-big:hover,.article-body .cta-button:hover{background:var(--fg-hover)}}.bullet-point{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;font-size:var(--text-xxs);font-weight:var(--fw-medium);background:var(--shade-10);color:var(--mid);border-radius:50%;margin-inline-end:8px;flex-shrink:0}.label-img{font-size:var(--text-xs);color:var(--mid);line-height:var(--lh-normal)}.label-img strong{color:var(--fg)}.container-cards{display:grid;grid-template-columns:1fr;gap:10px}.article-body .card{background:var(--tint);border:1px solid var(--rule);padding:20px;border-radius:var(--radius);transition:background var(--duration-ui)}[data-theme=dark] .article-body .card{background:var(--tint)}@media (hover:hover) and (pointer:fine){.article-body .card:hover{background:rgba(var(--text-rgb),.06)}[data-theme=dark] .article-body .card:hover{background:var(--shade-10)}}.card__icon{display:block;font-size:var(--text-sm);color:var(--fg);line-height:1;margin-bottom:10px}.card__body{min-width:0}.article-body .card h3{color:var(--fg);font-size:var(--text-xs);font-weight:var(--fw-medium);line-height:var(--lh-normal);margin:0 0 6px}.article-body .card p{margin:0;font-size:var(--text-xs);color:var(--mid);line-height:var(--lh-normal)}.blog-share{display:flex;gap:12px;margin-bottom:20px}.blog-share a{position:relative;display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--shade-10);border-radius:9px;color:var(--faint);text-decoration:none;transition:background var(--duration-fast),color var(--duration-fast);font-size:var(--text-sm);line-height:1}.blog-share a::after{content:"";position:absolute;inset:-2px}@media (hover:hover) and (pointer:fine){.blog-share a:hover{background:var(--shade-15);color:var(--fg)}}.blog-related-head{padding-top:calc(var(--gutter)*2)}.blog-related{padding:0}