.blog-grid__empty{text-align:center;padding-top:5rem;padding-bottom:5rem}.blog-grid__empty-title{color:var(--text-muted);font-size:1.125rem;line-height:var(--leading-lg)}.blog-grid__empty-hint{color:var(--text-muted);font-size:.875rem;line-height:var(--leading-sm);margin-top:.5rem}.blog-grid__list{grid-template-columns:repeat(1,minmax(0,1fr));gap:1.5rem;display:grid}@media (min-width:48rem){.blog-grid__list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:64rem){.blog-grid__list{grid-template-columns:repeat(3,minmax(0,1fr))}}.blog-grid__media{aspect-ratio:16/9;background-color:var(--bg-surface-light);position:relative}.blog-grid__image{object-fit:cover}.blog-grid__body{padding:1.25rem}.blog-grid__tags{gap:.5rem;margin-bottom:.75rem;display:flex}.blog-grid__tag{font-size:.75rem;line-height:var(--leading-xs);background-color:color-mix(in oklab,var(--accent)10%,transparent);color:var(--accent);border-radius:.25rem;padding:.125rem .5rem}.blog-grid__card-title{font-size:1.125rem;line-height:var(--leading-lg);margin-bottom:.5rem;font-weight:700}.blog-grid__excerpt{color:var(--text-secondary);font-size:.875rem;line-height:var(--leading-sm);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-bottom:.75rem;display:-webkit-box;overflow:hidden}.blog-grid__meta{color:var(--text-muted);font-size:.75rem;line-height:var(--leading-xs);align-items:center;gap:.5rem;display:flex}.blog-article__back{color:var(--text-muted);align-items:center;gap:.5rem;margin-bottom:2rem;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:inline-flex}@media (hover:hover){.blog-article__back:hover{color:var(--text-secondary)}}.blog-article__back-icon{width:1rem;height:1rem}.blog-article__header{margin-bottom:3rem}.blog-article__tags{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.blog-article__tag{font-size:.75rem;line-height:var(--leading-xs);background-color:color-mix(in oklab,var(--accent)10%,transparent);color:var(--accent);border-radius:.25rem;padding:.125rem .5rem}.blog-article__title{font-size:1.875rem;line-height:var(--leading-3xl);margin-bottom:1rem;font-weight:400}@media (min-width:48rem){.blog-article__title{font-size:2.25rem;line-height:var(--leading-4xl)}}.blog-article__description{color:var(--text-secondary);font-size:1.125rem;line-height:var(--leading-lg);margin-bottom:1.5rem}.blog-article__meta{color:var(--text-muted);font-size:.875rem;line-height:var(--leading-sm);align-items:center;gap:1rem;display:flex}.blog-article__meta-item{align-items:center;gap:.25rem;display:flex}.blog-article__meta-icon{width:1rem;height:1rem}.blog-article__cover{text-align:center;margin:0 0 3rem}.blog-article__cover-image{--cover-max-h:24rem;width:auto;max-width:100%;height:auto;max-height:var(--cover-max-h);border-radius:1rem;margin-inline:auto;display:block}@media (min-width:48rem){.blog-article__cover-image{--cover-max-h:30rem}}@media (min-width:64rem){.blog-article__cover-image{--cover-max-h:34rem}}.blog-article__h1{font-size:1.875rem;line-height:var(--leading-3xl);margin-top:2.5rem;margin-bottom:1rem;font-weight:400}.blog-article__h2{font-size:1.5rem;line-height:var(--leading-2xl);margin-top:2rem;margin-bottom:.75rem;font-weight:700}.blog-article__h3{font-size:1.25rem;line-height:var(--leading-xl);margin-top:1.5rem;margin-bottom:.5rem;font-weight:700}.blog-article__p{color:var(--text-secondary);margin-bottom:1rem;line-height:1.625}.blog-article__ul,.blog-article__ol{color:var(--text-secondary);margin-bottom:1rem;list-style-position:inside}.blog-article__ul{list-style-type:disc}.blog-article__ol{list-style-type:decimal}.blog-article__ul>:not(:last-child),.blog-article__ol>:not(:last-child){margin-block-end:.25rem}.blog-article__a{color:var(--accent);text-decoration-line:underline;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (hover:hover){.blog-article__a:hover{color:var(--accent-hover)}}.blog-article__blockquote{border-left-style:solid;border-left-width:4px;border-color:var(--accent);color:var(--text-secondary);margin-top:1.5rem;margin-bottom:1.5rem;padding-left:1rem;font-style:italic}.blog-article__code{background-color:var(--bg-surface);font-size:.875rem;line-height:var(--leading-sm);border-radius:.25rem;padding:.125rem .375rem}.blog-article__pre{background-color:var(--bg-surface);border-radius:.5rem;margin-bottom:1rem;padding:1rem;overflow-x:auto}
