.sp-blog{--blog-line:#ffffff14;--blog-surface:#101015;--blog-surface-2:#14141b;--blog-muted:#8b8b98;--blog-text:#c8c8d0;--blog-accent:#7c86f8;--blog-accent-strong:#5865f2}.sp-blog-main{max-width:1180px;margin:0 auto;padding:48px 40px 96px}.sp-blog-hero{max-width:720px;margin-bottom:30px}.sp-blog.sp-docs .sp-blog-hero h1{letter-spacing:-.03em;margin:0 0 16px;font-size:clamp(34px,4vw,50px);font-weight:700;line-height:1.08}.sp-blog-hero>p{color:var(--blog-muted);margin:0 0 18px;font-size:17px;line-height:28px}.sp-blog .sp-blog-rss{color:var(--blog-muted);align-items:center;gap:7px;font-size:12px;font-weight:500;display:inline-flex}.sp-blog .sp-blog-rss:hover{color:#c5c9ff}.sp-blog-filters{flex-wrap:wrap;gap:8px;margin-bottom:28px;display:flex}.sp-blog .sp-blog-filters a{border:1px solid var(--blog-line);height:34px;color:var(--blog-text);border-radius:999px;align-items:center;gap:8px;padding:0 13px;font-size:13px;font-weight:500;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.sp-blog .sp-blog-filters a span{color:var(--blog-muted);font-size:11px}.sp-blog .sp-blog-filters a:hover{color:#f0f0f0;border-color:#ffffff29}.sp-blog .sp-blog-filters a[aria-current=page]{color:#c5c9ff;background:#7c86f824;border-color:#7c86f866}.sp-blog .sp-blog-filters a[aria-current=page] span{color:#a3a8ff}.sp-blog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.sp-blog-card{min-width:0}.sp-blog .sp-blog-card-link{background:var(--blog-surface);border:1px solid var(--blog-line);height:100%;color:inherit;border-radius:14px;flex-direction:column;transition:border-color .15s,transform .15s;display:flex;overflow:hidden}.sp-blog .sp-blog-card-link:hover{border-color:#7c86f859;transform:translateY(-2px)}.sp-blog-card-cover{aspect-ratio:16/9;border-bottom:1px solid var(--blog-line);background:#0d0d12;display:block;overflow:hidden}.sp-blog-card-cover img{object-fit:cover;object-position:top center;width:100%;height:100%;display:block}.sp-blog-card-cover.is-dashboard img{object-position:top right;transform-origin:100% 0;transition:transform .25s;transform:scale(1.28)}.sp-blog .sp-blog-card-link:hover .sp-blog-card-cover.is-dashboard img{transform:scale(1.33)}.sp-blog-card-body{flex-direction:column;flex:1;gap:9px;padding:18px 18px 20px;display:flex}.sp-blog-card-category{color:#a3a8ff;letter-spacing:1.4px;text-transform:uppercase;font-size:10px;font-weight:600}.sp-blog-card-title{font-family:var(--heading);color:#f0f0f0;letter-spacing:-.015em;text-wrap:balance;font-size:18px;font-weight:650;line-height:1.3}.sp-blog-card-excerpt{color:var(--blog-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:13.5px;line-height:1.6;display:-webkit-box;overflow:hidden}.sp-blog-card-meta{color:#6f6f7a;align-items:center;gap:6px;margin-top:auto;padding-top:6px;font-size:11.5px;display:flex}.sp-blog-card.is-featured{margin-bottom:20px}.sp-blog-card.is-featured .sp-blog-card-link{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);display:grid}.sp-blog-card.is-featured .sp-blog-card-cover{aspect-ratio:auto;border-bottom:0;border-right:1px solid var(--blog-line);min-height:300px}.sp-blog-card.is-featured .sp-blog-card-body{justify-content:center;gap:12px;padding:34px}.sp-blog-card.is-featured .sp-blog-card-title{font-size:clamp(22px,2.4vw,30px);line-height:1.2}.sp-blog-card.is-featured .sp-blog-card-excerpt{-webkit-line-clamp:4;font-size:15px}.sp-blog-card.is-featured .sp-blog-card-meta{margin-top:6px}.sp-blog-post{max-width:1080px;margin:0 auto}.sp-blog-post-header{max-width:780px;margin:0 0 28px}.sp-blog.sp-docs .sp-blog-post-header h1{letter-spacing:-.03em;margin:0 0 16px;font-size:clamp(30px,3.6vw,46px);font-weight:700;line-height:1.1}.sp-blog-post-header>p{color:var(--blog-muted);margin:0;font-size:18px;line-height:29px}.sp-blog-post-meta{color:var(--blog-muted);flex-wrap:wrap;align-items:center;gap:8px;margin-top:20px;font-size:12.5px;display:flex}.sp-blog-post-meta>span{align-items:center;gap:6px;display:inline-flex}.sp-blog-author{color:#f0f0f0;font-weight:500}.sp-blog-author img{border-radius:50%}.sp-blog-post-cover{margin-bottom:36px}.sp-blog-post-cover .sp-docs-figure{margin:0}.sp-blog-reading{grid-template-columns:minmax(0,720px) 200px;align-items:start;gap:64px;display:grid}.sp-blog-content{min-width:0;color:var(--blog-text);font-size:16px;line-height:1.8}.sp-blog-content>p{margin:0 0 20px}.sp-blog-content strong{color:#f0f0f0;font-weight:600}.sp-blog-content code{color:#c5c9ff;background:#7c86f81a;border:1px solid #7c86f82e;border-radius:5px;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.88em}.sp-blog .sp-blog-content a:not(.sp-blog-doc){color:#a3a8ff;text-underline-offset:3px;text-decoration:underline}.sp-blog.sp-docs .sp-blog-content h2{margin:40px 0 14px;scroll-margin-top:100px;font-size:24px;font-weight:650;line-height:1.3}.sp-blog-content .sp-docs-figure{margin:26px 0 30px}.sp-blog-list{margin:0 0 22px;padding-left:22px}.sp-blog-list li{margin-bottom:9px;padding-left:4px}.sp-blog-list li::marker{color:var(--blog-accent)}ol.sp-blog-list li::marker{font-weight:600}.sp-blog-callout{background:#7c86f812;border:1px solid #7c86f840;border-radius:12px;gap:12px;margin:26px 0;padding:16px 18px;font-size:14.5px;line-height:1.7;display:flex}.sp-blog-callout>svg{color:#a3a8ff;flex:none;margin-top:4px}.sp-blog-callout strong{margin-bottom:2px;font-size:13px;display:block}.sp-blog-callout p{margin:0}.sp-blog-callout.is-warning{background:#e0a94e0f;border-color:#e0a94e47}.sp-blog-callout.is-warning>svg{color:#e0a94e}.sp-blog-quote{border-left:3px solid var(--blog-accent);color:#f0f0f0;font-family:var(--heading);letter-spacing:-.01em;margin:30px 0;padding:4px 0 4px 22px;font-size:20px;font-weight:500;line-height:1.55}.sp-blog .sp-blog-doc{border:1px solid var(--blog-line);background:var(--blog-surface);color:#f0f0f0;border-radius:12px;align-items:center;gap:14px;margin:34px 0 8px;padding:16px 18px;transition:border-color .15s;display:flex}.sp-blog .sp-blog-doc:hover{border-color:#7c86f866}.sp-blog-doc>span:nth-child(2){flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.sp-blog-doc small{color:var(--blog-muted);font-size:11.5px}.sp-blog-doc strong{font-size:15px;font-weight:600}.sp-blog-doc>svg{color:var(--blog-muted)}.sp-blog-doc-icon{color:#a3a8ff;background:#7c86f81f;border-radius:9px;flex:none;place-items:center;width:36px;height:36px;display:grid}.sp-blog-toc{border-left:1px solid var(--blog-line);flex-direction:column;gap:2px;padding-left:14px;display:flex;position:sticky;top:110px}.sp-blog-toc strong{color:#f0f0f0;margin-bottom:8px;font-size:12px;font-weight:600}.sp-blog .sp-blog-toc a{color:var(--blog-muted);padding:5px 0;font-size:12.5px;line-height:1.45}.sp-blog .sp-blog-toc a:hover{color:#f0f0f0}.sp-blog-cta{background:radial-gradient(circle at 0% 0%, #5865f22e, transparent 55%), var(--blog-surface);border:1px solid #7c86f840;border-radius:16px;justify-content:space-between;align-items:center;gap:24px;margin:56px 0 28px;padding:28px 30px;display:flex}.sp-blog.sp-docs .sp-blog-cta h2{margin:0 0 6px;font-size:22px}.sp-blog-cta p{color:var(--blog-muted);margin:0;font-size:14.5px}.sp-blog-cta-actions{flex:none;gap:10px;display:flex}.sp-blog .sp-blog-button{color:#f0f0f0;border:1px solid #ffffff1f;border-radius:10px;align-items:center;height:40px;padding:0 16px;font-size:13.5px;font-weight:600;transition:background .15s;display:inline-flex}.sp-blog .sp-blog-button:hover{background:#ffffff0d}.sp-blog .sp-blog-button.is-primary{background:var(--blog-accent-strong);border-color:var(--blog-accent-strong)}.sp-blog .sp-blog-button.is-primary:hover{background:#4752e0}.sp-blog-pager{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:56px;display:grid}.sp-blog .sp-blog-pager a{border:1px solid var(--blog-line);color:#f0f0f0;border-radius:12px;flex-direction:column;gap:6px;padding:16px 18px;font-size:14.5px;font-weight:600;line-height:1.4;display:flex}.sp-blog .sp-blog-pager a:hover{border-color:#ffffff29}.sp-blog-pager a.is-next{text-align:right;align-items:flex-end}.sp-blog-pager small{color:var(--blog-muted);align-items:center;gap:6px;font-size:11.5px;font-weight:500;display:inline-flex}.sp-blog.sp-docs .sp-blog-related h2{margin:0 0 18px;font-size:22px}@media (max-width:1100px){.sp-blog-reading{grid-template-columns:minmax(0,1fr)}.sp-blog-toc{display:none}}@media (max-width:960px){.sp-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sp-blog-card.is-featured .sp-blog-card-link{grid-template-columns:minmax(0,1fr)}.sp-blog-card.is-featured .sp-blog-card-cover{aspect-ratio:16/9;border-right:0;border-bottom:1px solid var(--blog-line);min-height:0}.sp-blog-card.is-featured .sp-blog-card-body{padding:22px}}@media (max-width:700px){.sp-blog-main{padding:28px 16px 72px}.sp-blog-grid{grid-template-columns:minmax(0,1fr)}.sp-blog-cta{flex-direction:column;align-items:flex-start;padding:22px}.sp-blog-pager{grid-template-columns:minmax(0,1fr)}.sp-blog-content{font-size:15.5px}}
