.CodeBlock_codeBlock__2ipZ1{margin:2rem 0;border-radius:12px;overflow:hidden;background:var(--color-code-background,#1e1e1e);border:1px solid var(--color-border);box-shadow:0 4px 20px rgba(0,0,0,.1)}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_header__g2Xmj{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.5rem;background:var(--color-code-header-background,#2d2d2d);border-bottom:1px solid var(--color-border)}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_header__g2Xmj .CodeBlock_info___D_3d{display:flex;align-items:center;gap:.5rem;color:var(--color-code-header-text,#ffffff)}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_header__g2Xmj .CodeBlock_info___D_3d i{font-size:1rem;color:var(--color-primary)}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_header__g2Xmj .CodeBlock_info___D_3d .CodeBlock_language__IJTF2{font-size:.85rem;font-weight:500;font-family:Monaco,Menlo,Ubuntu Mono,monospace}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_header__g2Xmj .CodeBlock_copyButton__QhMwC{display:flex;align-items:center;gap:.4rem;padding:.4rem .8rem;background:var(--color-primary);color:#fff;border:none;border-radius:6px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_header__g2Xmj .CodeBlock_copyButton__QhMwC:hover{background:var(--color-primary-dark);transform:translateY(-1px)}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_header__g2Xmj .CodeBlock_copyButton__QhMwC:active{transform:translateY(0)}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_header__g2Xmj .CodeBlock_copyButton__QhMwC i{font-size:.9rem}@media(max-width:768px){.CodeBlock_codeBlock__2ipZ1 .CodeBlock_header__g2Xmj .CodeBlock_copyButton__QhMwC{padding:.3rem .6rem;font-size:.75rem}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_header__g2Xmj .CodeBlock_copyButton__QhMwC span{display:none}}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ{overflow-x:auto}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ::-webkit-scrollbar{height:8px}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ::-webkit-scrollbar-track{background:var(--color-code-scrollbar-track,#3c3c3c)}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ::-webkit-scrollbar-thumb{background:var(--color-code-scrollbar-thumb,#666666);border-radius:4px}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ::-webkit-scrollbar-thumb:hover{background:var(--color-code-scrollbar-thumb-hover,#888888)}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ pre{margin:0!important;font-family:Monaco,Menlo,Ubuntu Mono,Consolas,Courier New,monospace!important}@media(max-width:768px){.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ pre{font-size:.8rem!important}}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_linenumber__wOMXV{color:var(--color-text-tertiary)!important;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding-right:1rem!important}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_cdata__pbbwE,.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_comment__bOxlg,.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_doctype__q_oF2,.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_prolog__Qms6s{color:var(--color-code-comment,#6a9955)}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_punctuation__Ou4oz{color:var(--color-code-punctuation,#d4d4d4)}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_boolean__A2Fj0,.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_constant__lkZa8,.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_deleted__RL67N,.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_number__IXg2v,.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_property__YpewA,.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_symbol__WkjT9,.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_tag__1VccL{color:var(--color-code-number,#b5cea8)}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_attr-name__74BgO,.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_builtin__eiDOD,.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_char__0hOxP,.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_inserted__6TBCG,.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_selector__Xdkn0,.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_string__QreHs{color:var(--color-code-string,#ce9178)}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_entity__42jbt,.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_operator__RHvu5,.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_url__10M7a,.CodeBlock_language-css__VRYnM .CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_string__QreHs,.CodeBlock_style__XX7og .CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_string__QreHs{color:var(--color-code-operator,#d4d4d4)}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_atrule__VQVEh,.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_attr-value__Ls5M6,.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_keyword__VAdCR{color:var(--color-code-keyword,#569cd6)}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_class-name__nOywy,.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_function__LuMiu{color:var(--color-code-function,#dcdcaa)}.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_important__W0X1q,.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_regex__0rlLS,.CodeBlock_codeBlock__2ipZ1 .CodeBlock_codeContainer__GdLjZ .CodeBlock_token__H1D44.CodeBlock_variable__QRjbR{color:var(--color-code-variable,#4fc1ff)}.CodeBlock_codeBlock__2ipZ1.CodeBlock_light__CBn8T{background:var(--color-code-background-light,#ffffff)}.CodeBlock_codeBlock__2ipZ1.CodeBlock_light__CBn8T .CodeBlock_header__g2Xmj{background:var(--color-code-header-background-light,#f8f8f8)}.CodeBlock_codeBlock__2ipZ1.CodeBlock_light__CBn8T .CodeBlock_header__g2Xmj .CodeBlock_info___D_3d{color:var(--color-code-header-text-light,#333333)}.InlineCode_inlineCode__4Ehos{background:var(--color-inline-code-background,rgba(255,255,255,.1));padding:.2rem .4rem;border-radius:4px;font-family:Monaco,Menlo,Ubuntu Mono,Consolas,Courier New,monospace;font-size:.9em;color:var(--color-inline-code-text,var(--color-primary));border:1px solid var(--color-inline-code-border,var(--color-border));white-space:nowrap;font-weight:500}.RichTextRenderer_richTextContent__pGZz_{line-height:1.8;color:var(--color-text)}.RichTextRenderer_richTextContent__pGZz_ .RichTextRenderer_heading1__zs4y9{font-size:2.5rem;font-weight:700;margin:2rem 0 1rem;color:var(--color-primary);line-height:1.2}@media(max-width:768px){.RichTextRenderer_richTextContent__pGZz_ .RichTextRenderer_heading1__zs4y9{font-size:2rem}}.RichTextRenderer_richTextContent__pGZz_ .RichTextRenderer_heading2__uic3m{font-size:2rem;font-weight:600;margin:1.5rem 0 1rem;color:var(--color-text);line-height:1.3}@media(max-width:768px){.RichTextRenderer_richTextContent__pGZz_ .RichTextRenderer_heading2__uic3m{font-size:1.5rem}}.RichTextRenderer_richTextContent__pGZz_ .RichTextRenderer_heading3__GyPst{font-size:1.5rem;font-weight:600;margin:1.25rem 0 .75rem;color:var(--color-text);line-height:1.4}@media(max-width:768px){.RichTextRenderer_richTextContent__pGZz_ .RichTextRenderer_heading3__GyPst{font-size:1.25rem}}.RichTextRenderer_richTextContent__pGZz_ .RichTextRenderer_paragraph__pFWzb{margin-bottom:1.5rem;text-align:justify}.RichTextRenderer_richTextContent__pGZz_ .RichTextRenderer_paragraph__pFWzb:last-child{margin-bottom:0}.RichTextRenderer_richTextContent__pGZz_ .RichTextRenderer_orderedList__iQP_R,.RichTextRenderer_richTextContent__pGZz_ .RichTextRenderer_unorderedList__wJXNr{margin:1rem 0;padding-left:2rem}@media(max-width:768px){.RichTextRenderer_richTextContent__pGZz_ .RichTextRenderer_orderedList__iQP_R,.RichTextRenderer_richTextContent__pGZz_ .RichTextRenderer_unorderedList__wJXNr{padding-left:1.5rem}}.RichTextRenderer_richTextContent__pGZz_ .RichTextRenderer_listItem__30Z1b{margin-bottom:.5rem;line-height:1.6}.RichTextRenderer_richTextContent__pGZz_ .RichTextRenderer_blockquote__L1tvL{margin:2rem 0;padding:1.5rem;border-left:4px solid var(--color-primary);background:var(--color-background-secondary);border-radius:0 8px 8px 0;font-style:italic;position:relative}.RichTextRenderer_richTextContent__pGZz_ .RichTextRenderer_blockquote__L1tvL:before{content:'"';font-size:4rem;color:var(--color-primary);position:absolute;top:-10px;left:10px;line-height:1;opacity:.3}.RichTextRenderer_richTextContent__pGZz_ .RichTextRenderer_divider__DoCHd{margin:3rem 0;border:none;height:1px;background:var(--color-border)}.RichTextRenderer_richTextContent__pGZz_ .RichTextRenderer_embeddedAsset__Jz8Qo{margin:2rem 0;text-align:center}.RichTextRenderer_richTextContent__pGZz_ .RichTextRenderer_embeddedAsset__Jz8Qo .RichTextRenderer_embeddedImage__fOsdk{max-width:100%;height:auto;border-radius:8px;box-shadow:0 4px 20px rgba(0,0,0,.1)}.RichTextRenderer_richTextContent__pGZz_ a{color:var(--color-primary);text-decoration:underline;transition:color .2s ease}.RichTextRenderer_richTextContent__pGZz_ a:hover{color:var(--color-primary-dark)}.RichTextRenderer_richTextContent__pGZz_ strong{font-weight:600;color:var(--color-text)}.RichTextRenderer_richTextContent__pGZz_ em{font-style:italic}.BlogPost_blogPost__nnv8N{min-height:100vh;padding:2rem 0}.BlogPost_blogPost__nnv8N .BlogPost_container__2Yyls{max-width:800px;margin:0 auto;padding:1.5rem;background:var(--color-bg-secondary)!important;border-radius:12px}@media(max-width:768px){.BlogPost_blogPost__nnv8N .BlogPost_container__2Yyls{padding:0 1rem}}.BlogPost_blogPost__nnv8N .BlogPost_backLink__Ifczr{display:inline-flex;align-items:center;gap:.5rem;color:var(--color-text);text-decoration:none;font-size:.9rem;margin-bottom:2rem;transition:color .2s ease}.BlogPost_blogPost__nnv8N .BlogPost_backLink__Ifczr:hover{color:var(--color-primary)}.BlogPost_blogPost__nnv8N .BlogPost_backLink__Ifczr i{font-size:1rem}.BlogPost_blogPost__nnv8N .BlogPost_header__eOQMx{margin-bottom:3rem}.BlogPost_blogPost__nnv8N .BlogPost_header__eOQMx .BlogPost_coverImage__ZiQG5{margin-bottom:2rem;border-radius:12px;overflow:hidden;box-shadow:0 8px 32px rgba(0,0,0,.1)}.BlogPost_blogPost__nnv8N .BlogPost_header__eOQMx .BlogPost_coverImage__ZiQG5 .BlogPost_image__FT_Zi{width:100%;height:400px;object-fit:cover}@media(max-width:768px){.BlogPost_blogPost__nnv8N .BlogPost_header__eOQMx .BlogPost_coverImage__ZiQG5 .BlogPost_image__FT_Zi{height:250px}}.BlogPost_blogPost__nnv8N .BlogPost_header__eOQMx .BlogPost_headerContent__zKFpJ .BlogPost_title__Lm9Ez{font-size:2.5rem;font-weight:700;line-height:1.2;margin-bottom:1rem;color:var(--color-text)}@media(max-width:1024px){.BlogPost_blogPost__nnv8N .BlogPost_header__eOQMx .BlogPost_headerContent__zKFpJ .BlogPost_title__Lm9Ez{font-size:2rem}}@media(max-width:768px){.BlogPost_blogPost__nnv8N .BlogPost_header__eOQMx .BlogPost_headerContent__zKFpJ .BlogPost_title__Lm9Ez{font-size:1.75rem}}.BlogPost_blogPost__nnv8N .BlogPost_header__eOQMx .BlogPost_headerContent__zKFpJ .BlogPost_excerpt__EyxlP{font-size:1.2rem;color:var(--color-text-secondary);line-height:1.6;margin-bottom:2rem}@media(max-width:768px){.BlogPost_blogPost__nnv8N .BlogPost_header__eOQMx .BlogPost_headerContent__zKFpJ .BlogPost_excerpt__EyxlP{font-size:1.1rem}}.BlogPost_blogPost__nnv8N .BlogPost_header__eOQMx .BlogPost_headerContent__zKFpJ .BlogPost_meta__2sEN3{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;padding:1.5rem;background:var(--color-background-secondary);border-radius:12px;border:1px solid var(--color-border)}@media(max-width:768px){.BlogPost_blogPost__nnv8N .BlogPost_header__eOQMx .BlogPost_headerContent__zKFpJ .BlogPost_meta__2sEN3{flex-direction:column;gap:1rem;align-items:flex-start}}.BlogPost_blogPost__nnv8N .BlogPost_header__eOQMx .BlogPost_headerContent__zKFpJ .BlogPost_meta__2sEN3 .BlogPost_author__YIa1L{display:flex;align-items:center;gap:.75rem}.BlogPost_blogPost__nnv8N .BlogPost_header__eOQMx .BlogPost_headerContent__zKFpJ .BlogPost_meta__2sEN3 .BlogPost_author__YIa1L .BlogPost_authorAvatar__rbSo6{border-radius:50%;border:2px solid var(--color-border)}.BlogPost_blogPost__nnv8N .BlogPost_header__eOQMx .BlogPost_headerContent__zKFpJ .BlogPost_meta__2sEN3 .BlogPost_author__YIa1L .BlogPost_authorName__3gipb{font-weight:500;color:var(--color-text)}.BlogPost_blogPost__nnv8N .BlogPost_header__eOQMx .BlogPost_headerContent__zKFpJ .BlogPost_meta__2sEN3 .BlogPost_details__W5Ak6{display:flex;gap:1.5rem;font-size:.9rem;color:var(--color-text-secondary)}@media(max-width:768px){.BlogPost_blogPost__nnv8N .BlogPost_header__eOQMx .BlogPost_headerContent__zKFpJ .BlogPost_meta__2sEN3 .BlogPost_details__W5Ak6{gap:1rem}}.BlogPost_blogPost__nnv8N .BlogPost_header__eOQMx .BlogPost_headerContent__zKFpJ .BlogPost_meta__2sEN3 .BlogPost_details__W5Ak6 .BlogPost_date___5cG_,.BlogPost_blogPost__nnv8N .BlogPost_header__eOQMx .BlogPost_headerContent__zKFpJ .BlogPost_meta__2sEN3 .BlogPost_details__W5Ak6 .BlogPost_readingTime__SrSiM{display:flex;align-items:center;gap:.4rem}.BlogPost_blogPost__nnv8N .BlogPost_header__eOQMx .BlogPost_headerContent__zKFpJ .BlogPost_meta__2sEN3 .BlogPost_details__W5Ak6 .BlogPost_date___5cG_ i,.BlogPost_blogPost__nnv8N .BlogPost_header__eOQMx .BlogPost_headerContent__zKFpJ .BlogPost_meta__2sEN3 .BlogPost_details__W5Ak6 .BlogPost_readingTime__SrSiM i{font-size:1rem}.BlogPost_blogPost__nnv8N .BlogPost_header__eOQMx .BlogPost_headerContent__zKFpJ .BlogPost_tags__m_Ycd{display:flex;flex-wrap:wrap;gap:.5rem}.BlogPost_blogPost__nnv8N .BlogPost_header__eOQMx .BlogPost_headerContent__zKFpJ .BlogPost_tags__m_Ycd .BlogPost_tag__iG7Q8{background:var(--color-primary);color:#fff;padding:.3rem .8rem;border-radius:20px;font-size:.8rem;font-weight:500;white-space:nowrap}.BlogPost_blogPost__nnv8N .BlogPost_content__7RGlQ{margin-bottom:4rem;font-size:1.1rem;line-height:1.8;color:var(--color-text)}.BlogPost_blogPost__nnv8N .BlogPost_footer__i_0IW{padding-top:2rem;border-top:1px solid var(--color-border)}.BlogPost_blogPost__nnv8N .BlogPost_footer__i_0IW .BlogPost_share__0AWj_{margin-bottom:2rem}.BlogPost_blogPost__nnv8N .BlogPost_footer__i_0IW .BlogPost_share__0AWj_ .BlogPost_shareText__f_Spc{display:block;font-weight:500;margin-bottom:1rem;color:var(--color-text)}.BlogPost_blogPost__nnv8N .BlogPost_footer__i_0IW .BlogPost_backToBlob__6ShpC{display:inline-flex;align-items:center;gap:.5rem;color:var(--color-primary);text-decoration:none;font-weight:500;transition:color .2s ease}.BlogPost_blogPost__nnv8N .BlogPost_footer__i_0IW .BlogPost_backToBlob__6ShpC:hover{color:var(--color-primary-dark)}.BlogPost_blogPost__nnv8N .BlogPost_footer__i_0IW .BlogPost_backToBlob__6ShpC i{font-size:1rem}.ShareButtons_shareButtons__zyQIn{display:flex;gap:1rem}.ShareButtons_shareButtons__zyQIn .ShareButtons_shareButton__e9l9d{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-background);color:var(--color-text);text-decoration:none;font-size:.9rem;font-family:inherit;cursor:pointer;transition:all .2s ease}.ShareButtons_shareButtons__zyQIn .ShareButtons_shareButton__e9l9d:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary);transform:translateY(-2px)}.ShareButtons_shareButtons__zyQIn .ShareButtons_shareButton__e9l9d i{font-size:1.1rem}