.sn-v3 .blog-index{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;display:grid}.sn-v3 .post-card{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);color:inherit;transition:transform .28s var(--ease-spring), box-shadow .28s var(--ease-out-soft), border-color .28s;flex-direction:column;gap:10px;padding:24px;text-decoration:none;display:flex}.sn-v3 .post-card:hover{border-color:color-mix(in oklch, var(--accent) 40%, var(--border));box-shadow:var(--shadow-md), 0 12px 32px -16px color-mix(in oklch, var(--accent) 22%, transparent);transform:translateY(-3px)}.sn-v3 .post-card__meta{font-family:var(--font-mono);color:var(--fg3);align-items:center;gap:8px;font-size:12px;display:flex}.sn-v3 .post-card__title{font-family:var(--font-display);font-optical-sizing:auto;letter-spacing:-.006em;color:var(--fg1);margin:0;font-size:20px;font-weight:580;line-height:1.3}.sn-v3 .post-card__desc{color:var(--fg2);margin:0;font-size:14px;line-height:1.6}.sn-v3 .post-card__cta{color:var(--accent-strong);align-items:center;gap:6px;margin-top:4px;font-size:13px;font-weight:600;display:inline-flex}.sn-v3 .post-header{text-align:center;flex-direction:column;align-items:center;gap:16px;display:flex}.sn-v3 .post-header__meta{font-family:var(--font-mono);color:var(--fg3);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;font-size:12px;display:flex}.sn-v3 .article-prose{color:var(--fg2);font-size:17px;line-height:1.75}.sn-v3 .article-prose>*+*{margin-top:1.1em}.sn-v3 .article-prose h2{font-family:var(--font-display);font-optical-sizing:auto;letter-spacing:-.008em;color:var(--fg1);margin-top:2em;scroll-margin-top:90px;font-size:clamp(24px,3vw,30px);font-weight:570;line-height:1.25}.sn-v3 .article-prose h3{font-family:var(--font-display);font-optical-sizing:auto;letter-spacing:-.004em;color:var(--fg1);margin-top:1.6em;scroll-margin-top:90px;font-size:clamp(19px,2.2vw,22px);font-weight:580;line-height:1.3}.sn-v3 .article-prose h4{color:var(--fg1);margin-top:1.4em;font-size:17px;font-weight:600}.sn-v3 .article-prose p{margin:0}.sn-v3 .article-prose strong{color:var(--fg1);font-weight:600}.sn-v3 .article-prose a{color:var(--accent-strong);text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px;transition:color .15s}.sn-v3 .article-prose a:hover{color:var(--accent)}.sn-v3 .article-prose h2 a,.sn-v3 .article-prose h3 a,.sn-v3 .article-prose h4 a{color:inherit;text-decoration:none}.sn-v3 .article-prose ul,.sn-v3 .article-prose ol{flex-direction:column;gap:8px;margin:0;padding:0;display:flex}.sn-v3 .article-prose ul{list-style:none}.sn-v3 .article-prose ul>li{padding-left:24px;position:relative}.sn-v3 .article-prose ul>li:before{content:"";background:color-mix(in oklch, var(--accent) 80%, transparent);border-radius:1px;width:10px;height:5px;position:absolute;top:11px;left:4px;transform:skew(-15deg)}.sn-v3 .article-prose ol{gap:8px;padding-left:24px;list-style:decimal}.sn-v3 .article-prose li{line-height:1.65}.sn-v3 .article-prose blockquote{border-left:3px solid var(--accent);color:var(--fg2);margin:0;padding:4px 0 4px 20px;font-style:italic}.sn-v3 .article-prose code{font-family:var(--font-mono);background:var(--surface-2);border:1px solid var(--border);border-radius:4px;padding:1px 5px;font-size:.9em}.sn-v3 .article-prose pre{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg);margin:0;padding:16px 18px;font-size:13px;line-height:1.6;overflow-x:auto}.sn-v3 .article-prose pre code{font-size:inherit;background:0 0;border:none;padding:0}.sn-v3 .article-prose hr{border:none;border-top:1px solid var(--border);margin:2.2em 0}.sn-v3 .article-prose table{border-collapse:collapse;width:100%;font-size:14px}.sn-v3 .article-prose th,.sn-v3 .article-prose td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:8px 12px}.sn-v3 .article-prose th{background:var(--surface-2);color:var(--fg1);font-weight:600}@media (max-width:768px){.sn-v3 .article-prose table{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto}}.sn-v3 .article-figure{flex-direction:column;gap:8px;margin:0;display:flex}.sn-v3 .article-figure img{border-radius:var(--radius-lg);border:1px solid var(--border);width:100%;height:auto}.sn-v3 .article-figure figcaption{color:var(--fg3);text-align:center;font-size:13px}.sn-v3 .article-callout{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface-1);gap:12px;padding:16px 18px;display:flex}.sn-v3 .article-callout--key{border-color:var(--accent);background:var(--accent-muted)}.sn-v3 .article-callout--warning{border-color:color-mix(in oklch, var(--accent) 40%, var(--border))}.sn-v3 .article-callout__icon{border-radius:var(--radius-sm);background:var(--accent-muted);width:28px;height:28px;color:var(--fg1);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.sn-v3 .article-callout__body{color:var(--fg2);flex-direction:column;gap:4px;font-size:15px;line-height:1.65;display:flex}.sn-v3 .article-callout__title{color:var(--fg1);font-weight:600}.sn-v3 .article-callout__content>*+*{margin-top:.6em}.sn-v3 .glossary-index{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.sn-v3 .glossary-card{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-lg);color:inherit;transition:border-color .2s, transform .28s var(--ease-spring), box-shadow .28s var(--ease-out-soft);flex-direction:column;gap:6px;padding:18px 20px;text-decoration:none;display:flex}.sn-v3 .glossary-card:hover{border-color:color-mix(in oklch, var(--accent) 45%, var(--border));box-shadow:var(--shadow-sm);transform:translateY(-2px)}.sn-v3 .glossary-card__term{font-family:var(--font-display);font-optical-sizing:auto;color:var(--fg1);font-size:16px;font-weight:580}.sn-v3 .glossary-card__def{color:var(--fg2);font-size:13px;line-height:1.55}.sn-v3 .glossary-related{flex-wrap:wrap;gap:10px;display:flex}.sn-v3 .glossary-related a{border:1px solid var(--border);background:var(--surface-1);color:var(--accent-strong);border-radius:9999px;padding:6px 12px;font-size:13px;text-decoration:none;transition:border-color .18s,background .18s}.sn-v3 .glossary-related a:hover{border-color:color-mix(in oklch, var(--accent) 55%, var(--border));background:var(--accent-muted)}
