.blog-typography{color:var(--text);font-size:1.125rem;line-height:1.75;max-width:none}.blog-typography h1{color:var(--text-secondary);font-size:2.25rem;font-weight:700;margin-top:2rem;margin-bottom:1rem;line-height:1.2}.blog-typography h2{color:var(--text);font-size:1.875rem;font-weight:600;margin-top:2rem;margin-bottom:.75rem;line-height:1.3}.blog-typography h3{color:var(--text);font-size:1.5rem;font-weight:600;margin-top:1.5rem;margin-bottom:.5rem;line-height:1.4}.blog-typography h4,.blog-typography h5,.blog-typography h6{color:var(--text-secondary);font-size:1.25rem;font-weight:600;margin-top:1.25rem;margin-bottom:.5rem}.blog-typography p,.blog-typography ul{margin-top:1.25rem;margin-bottom:1.25rem}.blog-typography ul{list-style-type:disc;padding-left:1.5rem}.blog-typography ol{list-style-type:decimal;margin-top:1.25rem;margin-bottom:1.25rem;padding-left:1.5rem}.blog-typography li{margin-top:.5rem;margin-bottom:.5rem}.blog-typography li::marker{color:var(--text-tertiary)}.blog-typography ol ol,.blog-typography ol ul,.blog-typography ul ol,.blog-typography ul ul{margin-top:.5rem;margin-bottom:.5rem}.blog-typography blockquote{border-left:4px solid var(--border);padding-left:1rem;margin:1.5rem 0;font-style:italic;color:var(--text-secondary)}.blog-typography code{background-color:var(--surface-sunken);padding:.2rem .4rem;border-radius:.25rem;font-size:.875em;color:var(--text)}.blog-typography pre{background-color:var(--surface-overlay);padding:1rem;border-radius:.5rem;overflow-x:auto;margin:1.5rem 0}.blog-typography pre code{background-color:transparent;padding:0;border-radius:0;font-size:.875rem}.blog-typography a{color:var(--text-brand);text-decoration:underline;text-underline-offset:2px}.blog-typography a:hover{color:color-mix(in oklch,var(--text-brand) 80%,transparent)}.blog-typography img{max-width:100%;height:auto;border-radius:.5rem;margin:1.5rem 0}.blog-typography hr{border:none;border-top:1px solid var(--border);margin:2rem 0}.blog-typography table{width:100%;border-collapse:collapse;margin:1.5rem 0}.blog-typography td,.blog-typography th{border:1px solid var(--border);padding:.75rem;text-align:left}.blog-typography th{background-color:var(--surface-overlay);font-weight:600}.blog-typography strong{font-weight:700;color:var(--text)}.blog-typography em{font-style:italic}