code[class*=language-],pre[class*=language-]{text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;color:#c3cee3;tab-size:4;-webkit-hyphens:none;hyphens:none;background:#263238;font-family:Roboto Mono,monospace;font-size:1em;line-height:1.5em}code[class*=language-]::-moz-selection{background:#363636}pre[class*=language-]::-moz-selection{background:#363636}code[class*=language-] ::-moz-selection{background:#363636}pre[class*=language-] ::-moz-selection{background:#363636}code[class*=language-]::selection,pre[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-] ::selection{background:#363636}:not(pre)>code[class*=language-]{white-space:normal;border-radius:.2em;padding:.1em}pre[class*=language-]{margin:.5em 0;padding:1.25em 1em;position:relative;overflow:auto}.language-css>code,.language-sass>code,.language-scss>code{color:#fd9170}[class*=language-] .namespace{opacity:.7}.token.atrule{color:#c792ea}.token.attr-name{color:#ffcb6b}.token.attr-value,.token.attribute{color:#c3e88d}.token.boolean{color:#c792ea}.token.builtin{color:#ffcb6b}.token.cdata,.token.char{color:#80cbc4}.token.class{color:#ffcb6b}.token.class-name,.token.color{color:#f2ff00}.token.comment{color:#546e7a}.token.constant{color:#c792ea}.token.deleted{color:#f07178}.token.doctype{color:#546e7a}.token.entity{color:#f07178}.token.function{color:#c792ea}.token.hexcode{color:#f2ff00}.token.id,.token.important{color:#c792ea;font-weight:700}.token.inserted{color:#80cbc4}.token.keyword{color:#c792ea;font-style:italic}.token.number{color:#fd9170}.token.operator{color:#89ddff}.token.prolog{color:#546e7a}.token.property{color:#80cbc4}.token.pseudo-class,.token.pseudo-element{color:#c3e88d}.token.punctuation{color:#89ddff}.token.regex{color:#f2ff00}.token.selector{color:#f07178}.token.string{color:#c3e88d}.token.symbol{color:#c792ea}.token.tag,.token.unit{color:#f07178}.token.url{color:#fd9170}.token.variable{color:#f07178}
.blog-content{color:#374151;line-height:1.75}.blog-content h2,.blog-content .h2{color:#111827;border-bottom:2px solid #14b8a6;margin-top:3rem;margin-bottom:1.5rem;padding-bottom:.5rem;font-size:2rem;font-weight:700;line-height:1.3}.blog-content h3,.blog-content .h3{color:#1f2937;margin-top:2rem;margin-bottom:1rem;font-size:1.5rem;font-weight:600;line-height:1.4}.blog-content h4{color:#1f2937;margin-top:1.5rem;margin-bottom:.75rem;font-size:1.25rem;font-weight:600;line-height:1.4}.blog-content p{margin-bottom:1.5rem;font-size:1.125rem;line-height:1.4}.blog-content a{color:#14b8a6;font-weight:500;text-decoration:underline;transition:color .2s}.blog-content a:hover{color:#0d9488}.blog-content ul,.blog-content ol{margin-bottom:1.5rem;padding-left:1.75rem;font-size:1.125rem}.blog-content ul{list-style-type:disc}.blog-content ol{list-style-type:decimal}.blog-content li{margin-bottom:.75rem;line-height:1.7}.blog-content li>p{margin-bottom:.5rem}.blog-content blockquote{color:#0f766e;background-color:#f0fdfa;border-left:4px solid #14b8a6;border-radius:.5rem;margin:2rem 0;padding:1rem 1.5rem;font-style:italic}.blog-content blockquote p{margin-bottom:0}.blog-content img{border-radius:.75rem;max-width:100%;height:auto;margin:2rem 0;box-shadow:0 10px 15px -3px #0000001a}.blog-content pre{border-radius:.75rem}.blog-content :not(pre)>code{color:#dc2626;background-color:#f1f5f9;border-radius:.25rem;padding:.2em .4em;font-size:.875em;font-weight:600}.blog-content hr{background-color:#e5e7eb;border:0;height:1px;margin:3rem 0}.blog-content table{border-collapse:collapse;width:100%;margin:2rem 0;font-size:1rem}.blog-content table th{text-align:left;background-color:#f9fafb;border-bottom:2px solid #e5e7eb;padding:.75rem 1rem;font-weight:600}.blog-content table td{border-bottom:1px solid #e5e7eb;padding:.75rem 1rem}.blog-content table tr:hover{background-color:#f9fafb}.blog-content strong{color:#111827;font-weight:700}.blog-content em{font-style:italic}.code-block-wrapper{margin:1.5rem 0;position:relative}.code-block-wrapper:hover .copy-button{opacity:1}@media (max-width:768px){.blog-content h2{font-size:1.5rem}.blog-content h3{font-size:1.25rem}.blog-content p,.blog-content ul,.blog-content ol{font-size:1rem}.blog-content pre{padding:1rem;font-size:.875rem}}
