.blog-card{background:var(--surface-1);border-radius:20px;flex-direction:column;height:100%;padding:26px 26px 20px;transition:transform .2s,box-shadow .2s,background .2s;display:flex;box-shadow:inset 0 1px #ffffff0f,0 10px 30px -18px #00000080}.blog-card:hover{background:var(--surface-1);transform:translateY(-2px);box-shadow:inset 0 1px #ffffff1a,0 18px 40px -20px #731cff73}.blog-card-cover{aspect-ratio:16/9;background:var(--surface-2,#ffffff0a);border-radius:20px 20px 0 0;margin:-26px -26px 18px;overflow:hidden}.blog-card-cover img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.blog-card:hover .blog-card-cover img{transform:scale(1.03)}.blog-card-body{flex:1 0 auto}.blog-card-date{letter-spacing:.02em;color:var(--text-dim);font-size:12.5px}.blog-card-title{letter-spacing:-.01em;color:var(--text-strong);margin-top:10px;font-size:21px;font-weight:600;line-height:1.2}.blog-card-excerpt{color:var(--text-muted);-webkit-line-clamp:4;-webkit-box-orient:vertical;margin-top:12px;font-size:14.5px;line-height:1.55;display:-webkit-box;overflow:hidden}.blog-card-foot{color:var(--text-dim);justify-content:space-between;align-items:center;margin-top:22px;padding-top:16px;font-size:13px;display:flex;box-shadow:inset 0 1px #7f7f7f24}.blog-card-author{color:var(--text-muted);align-items:center;gap:8px;font-weight:500;display:inline-flex}.blog-avatar{object-fit:cover;background:var(--surface-2,#ffffff0f);color:var(--text-muted);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.blog-avatar--md{width:38px;height:38px}.blog-avatar--sm{width:22px;height:22px}.blog-avatar.is-brand{color:#000;background:#fff;box-shadow:inset 0 0 0 .5px #0000002e}.blog-avatar-mark{width:58%;height:58%}.blog-avatar--sm .blog-avatar-mark{width:62%;height:62%}.blog-back{color:var(--text-muted);font-size:14px;transition:color .15s;display:inline-block}.blog-back:hover{color:var(--color-primary-soft)}.blog-article-title{letter-spacing:-.02em;font-size:clamp(1.9rem,5vw,3rem);font-weight:700;line-height:1.06}.blog-article-excerpt{font-size:clamp(1.05rem,2vw,1.3rem);font-weight:300;line-height:1.5}.blog-article-meta{font-size:14px}.blog-byline{color:var(--text-dim);flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:24px;font-size:13.5px;line-height:1.3;display:flex}.blog-byline-item{white-space:nowrap;align-items:center;gap:7px;display:inline-flex}.blog-byline-icon{stroke-width:1.75px;opacity:.85;flex:none;width:15px;height:15px}.blog-langs{color:var(--text-dim);flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:16px;font-size:13px;display:flex}.blog-langs-label{flex:none}.blog-langs-list{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.blog-lang-chip{background:var(--surface-1);box-shadow:inset 0 0 0 .5px var(--hairline);color:var(--text-muted);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-size:13px;line-height:1.2;transition:color .15s,background .15s,box-shadow .15s;display:inline-flex}a.blog-lang-chip:hover{color:var(--text-strong);box-shadow:inset 0 0 0 .5px color-mix(in srgb, var(--color-primary) 55%, transparent)}.blog-lang-chip.is-current{color:var(--text-strong);background:color-mix(in srgb, var(--color-primary) 14%, transparent);box-shadow:inset 0 0 0 .5px color-mix(in srgb, var(--color-primary) 45%, transparent)}.blog-cover img{border-radius:16px;width:100%;height:auto;display:block}.blog-prose{color:var(--text-muted);font-size:17px;line-height:1.7}.blog-prose>*+*{margin-top:1.15em}.blog-prose h2{letter-spacing:-.01em;color:var(--text-strong);margin-top:2em;font-size:clamp(1.4rem,3.2vw,1.8rem);font-weight:650;line-height:1.2}.blog-prose h3{color:var(--text-strong);margin-top:1.6em;font-size:1.2rem;font-weight:600}.blog-prose strong{color:var(--text-strong);font-weight:650}.blog-prose a{color:var(--color-primary-soft);text-underline-offset:2px;text-decoration:underline;transition:opacity .15s}.blog-prose a:hover{opacity:.8}.blog-prose ul,.blog-prose ol{padding-left:1.3em}.blog-prose li{margin-top:.4em}.blog-prose ul li{list-style:outside}.blog-prose ol li{list-style:decimal}.blog-prose blockquote{color:var(--text-muted);box-shadow:inset 3px 0 0 var(--color-primary);padding-left:1em;font-style:italic}.blog-prose code{background:var(--surface-1);border-radius:6px;padding:.12em .4em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88em}.blog-prose u{text-underline-offset:2px;text-decoration:underline}.blog-prose s{opacity:.75;text-decoration:line-through}.blog-prose hr{background:var(--hairline);border:0;height:1px;margin:2.4em 0}.blog-prose pre{background:var(--surface-1);box-shadow:inset 0 0 0 .5px var(--hairline);-webkit-overflow-scrolling:touch;border-radius:14px;margin:1.8em 0;padding:1rem 1.15rem;font-size:14px;line-height:1.6;overflow-x:auto}.blog-prose pre code{font-size:inherit;color:var(--text-soft);background:0 0;border-radius:0;padding:0}.blog-prose .blog-figure{margin:2em 0}.blog-prose .blog-figure img{border-radius:16px;width:100%;height:auto;display:block}.blog-prose .blog-figure figcaption{text-align:center;color:var(--text-dim);margin-top:.7em;font-size:13.5px;line-height:1.5}.blog-prose .blog-figure figcaption:empty{display:none}.blog-prose .blog-video{background:#000;border-radius:16px;width:100%;height:auto;margin:2em 0;display:block}.blog-prose .blog-embed{aspect-ratio:16/9;background:var(--surface-2);border-radius:16px;width:100%;margin:2em 0;position:relative;overflow:hidden}.blog-prose .blog-embed iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.blog-prose .blog-callout{--callout-accent:var(--color-space);border-left:3px solid var(--callout-accent);background:color-mix(in srgb, var(--callout-accent) 10%, transparent);color:var(--text-soft);border-radius:14px;margin:2em 0;padding:1rem 1.15rem;font-size:16px}.blog-prose .blog-callout[data-kind=tip]{--callout-accent:var(--color-money)}.blog-prose .blog-callout[data-kind=warning]{--callout-accent:#f5a524}.blog-prose .blog-callout>*+*{margin-top:.8em}.blog-prose .blog-callout :last-child{margin-bottom:0}.blog-prose table{border-collapse:collapse;-webkit-overflow-scrolling:touch;width:100%;max-width:100%;margin:2em 0;font-size:15px;display:block;overflow-x:auto}.blog-prose th,.blog-prose td{text-align:left;vertical-align:top;padding:.65rem .9rem;box-shadow:inset 0 0 0 .5px #7f7f7f38}.blog-prose th{background:var(--surface-1);color:var(--text-strong);font-weight:600}.blog-prose td{color:var(--text-muted)}.blog-prose tbody tr:nth-child(2n) td{background:var(--surface-2)}.blog-prose th>p,.blog-prose td>p{margin:0}.blog-prose th>*+*,.blog-prose td>*+*{margin-top:.5em}
