.page-layout_main__tQH6i{position:relative;z-index:1;min-height:90vh;padding-top:30px;padding-bottom:40px}@media screen and (max-width:600px){.page-layout_main__tQH6i{padding-top:10px}}.page-layout_copyright__lWMir{margin:30px;display:flex;justify-content:flex-end;font-size:14px;font-family:PT Mono,serif}@media screen and (max-width:600px){.page-layout_copyright__lWMir{font-size:11px}}.header_header__1OXnM{display:flex;align-items:center;justify-content:space-between;padding:0 6%;height:80px;gap:24px}.header_leftSection__xkutS{flex-shrink:0}@media(max-width:1023px){.header_leftSection__xkutS img{height:30px;width:auto}}.header_navigation__Jm85t{display:none;align-items:center;justify-content:center;gap:32px;flex:1 1}@media(min-width:1024px){.header_navigation__Jm85t{display:flex}}.header_navLink__LcnlC{font-family:var(--font-family-main);font-size:16px;font-weight:500;text-transform:uppercase;color:var(--primary-color);transition:opacity .2s ease,color .2s ease;white-space:nowrap}.header_navLink__LcnlC:hover{opacity:.7}.header_navLinkActive__a_UrI{color:var(--shadow);font-weight:600}.header_navLinkActive__a_UrI:hover{opacity:.92}.header_settings__q0vhn{display:flex;align-items:center;gap:24px;flex-shrink:0}.header_menuIcon__9bamp{cursor:pointer}@media(min-width:1024px){.header_menuIcon__9bamp{display:none}}.header_ctaGroup__w_jwN{display:none}@media(min-width:1024px){.header_ctaGroup__w_jwN{display:inline-flex;align-items:center;gap:8px}}.header_ctaButtonSecondary__nO3Gq{display:none}@media(min-width:1024px){.header_ctaButtonSecondary__nO3Gq{display:inline-flex;align-items:center;justify-content:center;padding:9px 18px;border-radius:100px;border:1px solid var(--primary-color);color:var(--primary-color);background:transparent;font-size:14px;font-weight:500;text-decoration:none;white-space:nowrap;transition:background .15s ease,color .15s ease}.header_ctaButtonSecondary__nO3Gq:hover{background:color-mix(in srgb,var(--primary-color) 12%,transparent)}}.header_ctaButton__lPfYe{display:none}@media(min-width:1024px){.header_ctaButton__lPfYe{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--primary-color);color:var(--inverted-primary-color);padding:10px 20px;border-radius:100px;font-size:14px;font-weight:600;text-decoration:none;white-space:nowrap;box-shadow:0 0 15px color-mix(in srgb,var(--primary-color) 25%,transparent),0 0 30px color-mix(in srgb,var(--primary-color) 12%,transparent),0 2px 8px rgba(0,0,0,.08);animation:header_ctaPulseHeader__NONlY 2.5s ease-in-out infinite;transition:all .3s ease}.header_ctaButton__lPfYe:hover{transform:scale(1.05);box-shadow:0 0 20px color-mix(in srgb,var(--primary-color) 40%,transparent),0 0 40px color-mix(in srgb,var(--primary-color) 20%,transparent),0 4px 12px rgba(0,0,0,.12)}}@keyframes header_ctaPulseHeader__NONlY{0%,to{box-shadow:0 0 15px color-mix(in srgb,var(--primary-color) 25%,transparent),0 0 30px color-mix(in srgb,var(--primary-color) 12%,transparent),0 2px 8px rgba(0,0,0,.08)}50%{box-shadow:0 0 18px color-mix(in srgb,var(--primary-color) 30%,transparent),0 0 35px color-mix(in srgb,var(--primary-color) 15%,transparent),0 2px 8px rgba(0,0,0,.08)}}.header_ctaPulseRing__5KR46{display:none}@media(min-width:1024px){.header_ctaPulseRing__5KR46{display:block;position:absolute;inset:0;border-radius:100px;background:var(--primary-color);opacity:.5;z-index:-1;animation:header_ctaRingPulse__zmZCN 2s ease-out infinite;pointer-events:none}}.header_ctaIcon__fbDBL{flex:0 0 auto;position:relative;z-index:1}@keyframes header_ctaRingPulse__zmZCN{0%{transform:scale(1);opacity:.5}80%{transform:scale(1.25);opacity:0}to{transform:scale(1.25);opacity:0}}.sidebar_closeButton__EikAV{align-self:flex-end;display:inline-flex;align-items:center;justify-content:center;margin:0;padding:8px;border:none;background:transparent;color:inherit;cursor:pointer;border-radius:8px;line-height:0}.sidebar_closeButton__EikAV:focus-visible{outline:2px solid var(--shadow);outline-offset:2px}.sidebar_closeIcon__Le4m9{display:block}.sidebar_linksSection__QA1KU{display:flex;flex-direction:column;align-items:stretch;width:100%;gap:24px}.sidebar_links___5tOa{display:flex;flex-direction:column;align-items:flex-end;gap:32px}.sidebar_divider__f_Awg{width:50vw;max-width:100%;align-self:flex-end;margin:0;border:none;border-top:.5px solid color-mix(in srgb,var(--primary-color) 14%,transparent)}.sidebar_navLink__w8vp_{font-family:var(--font-family-main);font-size:24px;font-weight:400;text-transform:uppercase;text-align:right;color:var(--primary-color);transition:color .2s ease,font-weight .15s ease;text-decoration:none}.sidebar_navLinkActive__mIycH{font-family:var(--font-family-main);font-weight:600;color:var(--shadow)}.sidebar_settings__aWDez{display:flex;align-items:center;justify-content:flex-end;gap:24px;flex-wrap:wrap}.sidebar_menu__cBEWN{position:fixed;top:0;right:-400px;left:auto;padding:50px 50px 50px 24px;width:400px;max-width:min(400px,100vw);height:100%;background-color:var(--inverted-primary-color);transition:right .3s ease-in-out;color:var(--primary-color);z-index:2;display:flex;flex-direction:column;gap:32px;box-sizing:border-box}@media(min-width:1024px){.sidebar_menu__cBEWN{display:none}}.sidebar_menu__cBEWN.sidebar_active__DSXcC{right:0}@media(min-width:1024px){.sidebar_menu__cBEWN.sidebar_active__DSXcC{display:none}}.theme-switcher_theme__XdJUw{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.theme-switcher_desktopAction__aNqD9{display:none}@media screen and (min-width:768px){.theme-switcher_desktopAction__aNqD9{display:flex}}.theme-switcher_mobileAction__j9iYj{display:none}@media screen and (max-width:768px){.theme-switcher_mobileAction__j9iYj{display:flex}}.language-switcher_langContainer__sRvY7{display:flex;gap:6px}.language-switcher_lang__IxsK8{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.language-switcher_border__LnYVe{border-bottom:2px solid var(--primary-color)}.language-switcher_desktopAction__h4pSP{display:none}@media screen and (min-width:768px){.language-switcher_desktopAction__h4pSP{display:flex}}.language-switcher_mobileAction__ST1kV{display:none}@media screen and (max-width:768px){.language-switcher_mobileAction__ST1kV{display:flex}}.footer_menu__VBFX1{display:flex;justify-content:center}.footer_menuContainerList__m6Q4H{z-index:1;width:100%;display:flex;justify-content:space-between;gap:20px;font-size:14px;flex-wrap:wrap}.footer_wrapper__fw58P{padding-top:100px;position:relative}@media screen and (max-width:600px){.footer_wrapper__fw58P{padding-top:0}}.footer_line__rMWw9{width:100%;bottom:214px;left:0;position:absolute;height:auto}.footer_line__rMWw9 img{width:100%}@media screen and (max-width:600px){.footer_line__rMWw9{bottom:100%}}.footer_copyright__mX49z{margin:30px;display:flex;justify-content:flex-end;font-size:14px;font-family:PT Mono,serif}@media screen and (max-width:600px){.footer_copyright__mX49z{font-size:11px}}.menu-item_menuItem__EX__l{width:calc(16.6666666667% - 20px);display:flex;flex-direction:column;gap:8px}@media screen and (max-width:1300px){.menu-item_menuItem__EX__l{width:calc(33.3333333333% - 20px)}}@media screen and (max-width:600px){.menu-item_menuItem__EX__l{width:calc(50% - 20px)}}.menu-item_title__ILB1u{font-weight:700}.menu-item_links__IXe0i{display:flex;flex-direction:column;gap:2px}.menu-item_links__IXe0i a{color:var(--primary-color)}.contact-fab_root__hemS2{position:fixed;right:20px;bottom:20px;z-index:90;font-family:Inter,system-ui,-apple-system,sans-serif}@media(min-width:768px){.contact-fab_root__hemS2{right:28px;bottom:28px}}.contact-fab_root__hemS2.contact-fab_light__JA61f{--cf-bg:oklch(0.99 0.003 240);--cf-surface:oklch(0.985 0.004 240);--cf-surface-2:oklch(0.965 0.005 240);--cf-fg:oklch(0.18 0.01 240);--cf-muted:oklch(0.42 0.012 240);--cf-subtle:oklch(0.62 0.01 240);--cf-border:oklch(0.9 0.006 240);--cf-accent:oklch(0.56 0.19 258);--cf-accent-fg:oklch(0.99 0.003 240);--cf-shadow:0 12px 32px -8px rgba(0,0,0,.25)}.contact-fab_root__hemS2.contact-fab_dark__eP7oS{--cf-bg:oklch(0.17 0.009 255);--cf-surface:oklch(0.2 0.01 255);--cf-surface-2:oklch(0.23 0.011 255);--cf-fg:oklch(0.97 0.003 240);--cf-muted:oklch(0.68 0.012 240);--cf-subtle:oklch(0.5 0.012 240);--cf-border:oklch(0.26 0.012 255);--cf-accent:oklch(0.68 0.17 258);--cf-accent-fg:oklch(0.14 0.008 255);--cf-shadow:0 16px 40px -8px rgba(0,0,0,.6)}.contact-fab_fab__QAvoP{position:relative;display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--cf-accent);color:var(--cf-accent-fg);border:none;cursor:pointer;box-shadow:var(--cf-shadow);transition:transform .15s ease,filter .15s ease}.contact-fab_fab__QAvoP:hover{filter:brightness(1.06);transform:translateY(-1px)}.contact-fab_fab__QAvoP:active{transform:translateY(0)}.contact-fab_fabIcon__tjme7{position:relative;z-index:2;display:inline-flex}.contact-fab_pulse__VNkUt{position:absolute;inset:0;border-radius:50%;background:var(--cf-accent);opacity:.55;z-index:1;animation:contact-fab_fabPulse__pA0ta 2s ease-out infinite;pointer-events:none}@keyframes contact-fab_fabPulse__pA0ta{0%{transform:scale(1);opacity:.55}80%{transform:scale(1.6);opacity:0}to{transform:scale(1.6);opacity:0}}.contact-fab_isOpen__nJc35 .contact-fab_fab__QAvoP{background:var(--cf-surface);color:var(--cf-fg);border:1px solid var(--cf-border)}.contact-fab_panel__ffbw5{position:absolute;bottom:calc(100% + 12px);right:0;width:300px;background:var(--cf-bg);border:1px solid var(--cf-border);border-radius:14px;box-shadow:var(--cf-shadow);padding:12px;display:flex;flex-direction:column;gap:4px;animation:contact-fab_panelIn__TnIaw .18s ease-out}@keyframes contact-fab_panelIn__TnIaw{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.contact-fab_panelHeader__Fn__1{padding:6px 10px 10px;border-bottom:1px solid var(--cf-border);margin-bottom:6px}.contact-fab_panelTitle__CEWyM{font-size:14px;font-weight:700;color:var(--cf-fg);margin-bottom:2px}.contact-fab_panelSub__7ME_8{font-size:12px;color:var(--cf-muted);line-height:1.4}.contact-fab_option__DLXIu{display:flex;align-items:center;gap:12px;padding:10px;border-radius:8px;text-decoration:none;color:var(--cf-fg);transition:background .15s}.contact-fab_optIcon__5gVp5,.contact-fab_option__DLXIu:hover{background:var(--cf-surface-2)}.contact-fab_optIcon__5gVp5{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;color:var(--cf-fg)}.contact-fab_optTg__7AHXA .contact-fab_optIcon__5gVp5{background:color-mix(in oklch,oklch(.62 .16 235) 18%,var(--cf-bg));color:oklch(.62 .16 235)}.contact-fab_optWa__LLwFa .contact-fab_optIcon__5gVp5{background:color-mix(in oklch,oklch(.7 .18 145) 18%,var(--cf-bg));color:oklch(.55 .16 145)}.contact-fab_optMax__jKEQ9 .contact-fab_optIcon__5gVp5{background:color-mix(in oklch,oklch(.7 .18 30) 18%,var(--cf-bg));color:oklch(.6 .18 30)}.contact-fab_optMail__cFGLF .contact-fab_optIcon__5gVp5{background:color-mix(in oklch,var(--cf-accent) 14%,var(--cf-bg));color:var(--cf-accent)}.contact-fab_optLi__ygkno .contact-fab_optIcon__5gVp5{background:color-mix(in oklch,oklch(.5 .16 250) 18%,var(--cf-bg));color:oklch(.5 .16 250)}.contact-fab_optText__VyuJX{display:flex;flex-direction:column;min-width:0}.contact-fab_optTitle__rkU3t{font-size:13px;font-weight:600;color:var(--cf-fg);line-height:1.2}.contact-fab_optDesc__oIL5J{font-size:12px;color:var(--cf-muted);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.blog-post_layout__wfI1k{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:48px;gap:48px;max-width:1200px;margin:0 auto;padding:32px 5% 120px}@media(min-width:1100px){.blog-post_layout__wfI1k{grid-template-columns:minmax(0,1fr) 240px;align-items:start}}@media(max-width:768px){.blog-post_layout__wfI1k{padding-left:24px;padding-right:24px}}.blog-post_article__uSLwf{min-width:0;max-width:760px;width:100%;margin:0 auto}.blog-post_backLink__n2CBk{display:inline-block;margin-bottom:24px;color:var(--text-secondary);font-size:14px;text-decoration:none}.blog-post_backLink__n2CBk:hover{color:var(--primary-color)}.blog-post_header__z907w{margin-bottom:40px;border-bottom:1px solid var(--border);padding-bottom:24px}.blog-post_title__rrLzd{margin:0 0 16px;font-family:var(--font-family-main);font-weight:400;font-size:clamp(1.875rem,1.6rem + 1.2vw,2.75rem);line-height:1.15;color:var(--text-primary)}.blog-post_meta__rQL4h{display:flex;flex-wrap:wrap;align-items:center;gap:16px;font-size:14px;color:var(--text-secondary)}.blog-post_meta__rQL4h time{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.blog-post_tags___3jN0{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.blog-post_tag__fhnQg{padding:2px 10px;border:1px solid var(--border);border-radius:999px;font-size:12px;color:var(--text-secondary)}.blog-post_lede__urXzg{margin:16px 0 0;font-size:18px;line-height:1.5;color:var(--text-secondary)}.blog-post_fallbackNotice__nhGG4{margin-top:16px;padding:10px 14px;border-left:3px solid var(--shadow);background:color-mix(in srgb,var(--shadow) 10%,transparent);font-size:13px;color:var(--text-secondary)}.blog-post_tocMobile__mbqSb{margin:0 0 32px;border:1px solid var(--border);border-radius:6px;padding:12px 16px;font-size:14px}@media(min-width:1100px){.blog-post_tocMobile__mbqSb{display:none}}.blog-post_tocMobile__mbqSb summary{cursor:pointer;color:var(--text-primary);font-weight:600}.blog-post_tocMobile__mbqSb ol{margin:12px 0 0;padding-left:20px}.blog-post_tocMobile__mbqSb ol li{margin:4px 0;line-height:1.4}.blog-post_tocMobile__mbqSb ol li a{color:var(--text-secondary);text-decoration:none}.blog-post_tocMobile__mbqSb ol li a:hover{color:var(--primary-color)}.blog-post_tocItemNested__IZk82{margin-left:12px!important;font-size:13px}.blog-post_toc__Wmm_T{display:none}@media(min-width:1100px){.blog-post_toc__Wmm_T{display:block;position:-webkit-sticky;position:sticky;top:90px;align-self:start;font-size:13px;line-height:1.5;max-height:calc(100vh - 110px);overflow-y:auto;padding:4px 0 4px 16px;border-left:1px solid var(--border)}}.blog-post_tocLabel__efXK7{margin-bottom:12px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);font-weight:600}.blog-post_tocList__19kGI{list-style:none;margin:0;padding:0}.blog-post_tocItem__evqHx{margin:6px 0}.blog-post_tocItem__evqHx a{color:var(--text-secondary);text-decoration:none;transition:color .12s}.blog-post_tocItem__evqHx a:hover{color:var(--primary-color)}.blog-post_tocItemActive__CYnwp a{color:var(--primary-color);font-weight:600}.blog-post_prose__oJTcw{font-family:var(--font-family-main);font-size:16px;line-height:1.65;color:var(--text-primary)}.blog-post_prose__oJTcw>*+*{margin-top:1.1em}.blog-post_prose__oJTcw h2,.blog-post_prose__oJTcw h3,.blog-post_prose__oJTcw h4{font-family:var(--font-family-main);font-weight:400;line-height:1.25;color:var(--text-primary);margin-top:2em;margin-bottom:.5em;scroll-margin-top:90px}.blog-post_prose__oJTcw h2{font-size:clamp(1.375rem,1.25rem + .5vw,1.75rem);padding-bottom:6px;border-bottom:1px solid var(--border)}.blog-post_prose__oJTcw h3{font-size:clamp(1.125rem,1.06rem + .25vw,1.3125rem)}.blog-post_prose__oJTcw h4{font-size:1.0625rem;font-weight:600}.blog-post_prose__oJTcw .heading-anchor{color:inherit;text-decoration:none}.blog-post_prose__oJTcw .heading-anchor:hover{color:var(--shadow)}.blog-post_prose__oJTcw p{margin:0}.blog-post_prose__oJTcw a:not(.heading-anchor){color:var(--shadow);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}.blog-post_prose__oJTcw a:not(.heading-anchor):hover{text-decoration-thickness:2px}.blog-post_prose__oJTcw b,.blog-post_prose__oJTcw strong{font-weight:700}.blog-post_prose__oJTcw em,.blog-post_prose__oJTcw i{font-style:italic}.blog-post_prose__oJTcw ol,.blog-post_prose__oJTcw ul{margin:0;padding-left:22px}.blog-post_prose__oJTcw ol li,.blog-post_prose__oJTcw ul li{margin:4px 0;line-height:1.6}.blog-post_prose__oJTcw ul li::marker{color:var(--shadow)}.blog-post_prose__oJTcw ol li::marker{font-weight:600;color:var(--shadow)}.blog-post_prose__oJTcw blockquote{margin:0;padding:12px 18px;border-left:3px solid var(--shadow);background:color-mix(in srgb,var(--shadow) 6%,transparent);border-radius:0 4px 4px 0;font-style:italic;line-height:1.6}.blog-post_prose__oJTcw blockquote p{margin:0}.blog-post_prose__oJTcw img{display:block;max-width:100%;height:auto;margin:1.4em auto;border-radius:8px}.blog-post_prose__oJTcw hr{border:0;border-top:1px solid var(--border);margin:2em 0}.blog-post_prose__oJTcw table{width:100%;border-collapse:collapse;font-size:14px;margin:1em 0;overflow-x:auto;display:block}@media(min-width:600px){.blog-post_prose__oJTcw table{display:table}}.blog-post_prose__oJTcw td,.blog-post_prose__oJTcw th{padding:8px 12px;border:1px solid var(--border);text-align:left}.blog-post_prose__oJTcw th{background:color-mix(in srgb,var(--border) 12%,transparent);font-weight:600}.blog-post_prose__oJTcw :not(pre)>code{font-family:PT Mono,monospace;font-size:.9em;padding:2px 6px;border-radius:3px;background:color-mix(in srgb,var(--border) 18%,transparent);color:var(--text-primary)}.blog-post_prose__oJTcw pre{margin:0;padding:16px 18px;border-radius:6px;background:color-mix(in srgb,var(--border) 14%,transparent);overflow-x:auto;font-family:PT Mono,monospace;font-size:13px;line-height:1.55}.blog-post_prose__oJTcw pre code{font-family:inherit;background:none;padding:0;color:var(--text-primary)}.blog-post_prose__oJTcw .hljs-comment,.blog-post_prose__oJTcw .hljs-quote{color:color-mix(in srgb,var(--text-secondary) 80%,transparent);font-style:italic}.blog-post_prose__oJTcw .hljs-keyword,.blog-post_prose__oJTcw .hljs-literal,.blog-post_prose__oJTcw .hljs-section,.blog-post_prose__oJTcw .hljs-selector-tag{color:#c678dd;font-weight:500}.blog-post_prose__oJTcw .hljs-attr,.blog-post_prose__oJTcw .hljs-bullet,.blog-post_prose__oJTcw .hljs-link,.blog-post_prose__oJTcw .hljs-string,.blog-post_prose__oJTcw .hljs-symbol{color:#98c379}.blog-post_prose__oJTcw .hljs-built_in,.blog-post_prose__oJTcw .hljs-builtin-name,.blog-post_prose__oJTcw .hljs-meta,.blog-post_prose__oJTcw .hljs-number,.blog-post_prose__oJTcw .hljs-params,.blog-post_prose__oJTcw .hljs-type{color:#d19a66}.blog-post_prose__oJTcw .hljs-name,.blog-post_prose__oJTcw .hljs-selector-class,.blog-post_prose__oJTcw .hljs-selector-id,.blog-post_prose__oJTcw .hljs-title{color:#61afef}.blog-post_prose__oJTcw .hljs-attribute,.blog-post_prose__oJTcw .hljs-regexp,.blog-post_prose__oJTcw .hljs-subst,.blog-post_prose__oJTcw .hljs-tag{color:#e06c75}.blog-post_prose__oJTcw .hljs-emphasis{font-style:italic}.blog-post_prose__oJTcw .hljs-strong{font-weight:700}.blog-post_prose__oJTcw .mermaid-block{margin:1.4em auto;text-align:center}.blog-post_prose__oJTcw .mermaid-block svg{max-width:100%;height:auto}.blog-post_prose__oJTcw .katex-display{margin:1.4em 0;overflow-x:auto;overflow-y:hidden}