:root{--bg-primary:#673ab8;--bg-secondary:#2b2b2b;--bg-content:transparent;--bg-card:rgba(0,0,0,0.14);--bg-code:rgba(0,0,0,0.25);--text-primary:#ffffff;--text-secondary:#ffffff;--text-dimmed:rgba(255,255,255,0.8);--border-color:rgba(255,255,255,0.25);--link-color:#6db3f2;--link-hover:#90c9ff;--icon-color:#ffffff;--nav-bg:rgba(255,255,255,0.12);--nav-hover:rgba(255,255,255,0.18);--nav-active:rgba(255,255,255,0.25)}[data-theme=light]{--bg-primary:#e0d8eb;--bg-secondary:#ffffff;--bg-content:#ece6f5;--bg-card:#ffffff;--bg-code:rgba(0,0,0,0.06);--text-primary:#000000;--text-secondary:#000000;--text-dimmed:#333333;--border-color:rgba(0,0,0,0.15);--link-color:#5a3d9a;--link-hover:#7c5dc0;--icon-color:#000000;--nav-bg:rgba(0,0,0,0.08);--nav-hover:rgba(0,0,0,0.12);--nav-active:rgba(0,0,0,0.18)}body,html{padding:0;margin:0;background:var(--bg-primary);color:var(--text-primary);font-family:Helvetica Neue,arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .3s ease,color .3s ease}.siteHeader{position:sticky;top:0;z-index:100;padding:14px 0;background:#673ab8;box-shadow:0 6px 18px rgba(0,0,0,.12)}.siteHeaderInner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-left:12px;padding-right:12px}.siteHeaderLeft{display:flex;align-items:baseline;gap:18px;min-width:0;flex:1 1 auto}.siteBrand{font-size:1.35rem;font-weight:800;letter-spacing:.2px;white-space:nowrap;cursor:default;color:#ffffff}.siteNav{gap:10px}.siteHeaderRight,.siteNav{display:flex;align-items:center}.siteHeaderRight{gap:12px;flex:0 0 auto}.siteHeaderRight a{text-decoration:none;display:flex;align-items:center}.siteHeaderContacts{display:flex;align-items:center;gap:12px}.burgerButton{display:none;background:rgba(255,255,255,.12);border:none;border-radius:8px;padding:6px 8px;cursor:pointer;align-items:center;justify-content:center}.burgerButton:hover{background:rgba(255,255,255,.18)}.mobileMenuPanel{display:none}.navLink{font-weight:700;font-size:1rem;padding:6px 10px;border-radius:10px;background:rgba(255,255,255,.12);opacity:.95;transition:background-color .2s ease}.navLink,.navLink:hover{color:#ffffff;text-decoration:none}.navLink:hover{background:rgba(255,255,255,.18);opacity:1}.navLinkActive{background:rgba(255,255,255,.25);color:#ffffff;opacity:1}@media (max-width:720px){.siteHeader{padding:10px 0}.siteHeaderInner{flex-direction:row;align-items:center;justify-content:space-between;gap:10px;padding-left:14px;padding-right:14px}.siteHeaderLeft{align-items:center;gap:0;flex:1 1 auto;min-width:0}.siteBrand{font-size:1.2rem}.siteHeaderContactsDesktop,.siteNavDesktop{display:none}.siteHeaderRight{justify-content:flex-end;flex-wrap:nowrap;gap:10px;flex:0 0 auto}.burgerButton{display:inline-flex}.navLink{font-size:.95rem;padding:5px 9px}.mobileMenuPanel{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:8px;padding-bottom:10px;padding-left:14px;padding-right:14px;width:100%}.siteNavMobile{justify-content:stretch;flex-wrap:nowrap;gap:8px;width:100%}.siteNavMobile .navLink{flex:1 1;min-width:0;display:flex;justify-content:center}.siteHeaderContactsMobile{justify-content:center;flex-wrap:nowrap;width:100%;gap:18px;padding-top:2px}}a{color:var(--link-color);text-decoration:underline}a:hover{color:var(--link-hover)}svg:hover{opacity:.5}.markdown{line-height:1.75}.markdown p{margin:0 0 1rem}.markdown h2,.markdown h3,.markdown h4{margin:2rem 0 .75rem}.markdown ol,.markdown ul{margin:0 0 1rem;padding-left:1.25rem}.markdown a{text-decoration:underline;color:var(--link-color)}.markdown a:hover{color:var(--link-hover)}.markdown img{display:block;max-width:100%;height:auto;margin:0;border-radius:12px;background-color:white}.markdownImage{display:block;width:100%;margin:1rem 0}.markdownImage--half,.markdownImage--quarter,.markdownImage--third{margin-left:auto;margin-right:auto}.markdownImage--half{width:min(100%,50%)}.markdownImage--third{width:min(100%,33.3333%)}.markdownImage--quarter{width:min(100%,25%)}.markdown .img-row{display:flex;flex-wrap:wrap;gap:1rem;margin:1rem 0}.markdown .img-row .markdownImage{margin:0;width:100%}@media (min-width:769px){.markdown .img-row .markdownImage--half{flex-grow:0;flex-shrink:0;flex-basis:calc(50% - 0.5rem);max-width:calc(50% - .5rem)}.markdown .img-row .markdownImage--third{flex-grow:0;flex-shrink:0;flex-basis:calc(33.3333% - 0.6667rem);max-width:calc(33.3333% - .6667rem)}.markdown .img-row .markdownImage--quarter{flex-grow:0;flex-shrink:0;flex-basis:calc(25% - 0.75rem);max-width:calc(25% - .75rem)}}.markdown pre{background:var(--bg-code);padding:12px 14px;border-radius:8px;overflow:auto}.markdown code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.95em}.markdown blockquote{margin:0 0 1rem;padding-left:1rem;border-left:4px solid var(--border-color);color:var(--text-primary)}.markdown table{width:100%;border-collapse:collapse;margin-bottom:1rem}.markdown td,.markdown th{border:1px solid var(--border-color);padding:.5rem}.pageDescription{max-width:900px;opacity:.95;color:var(--text-primary)}.blogListItem{padding:18px 20px;border-radius:12px;background:var(--bg-secondary);transition:background-color .3s ease,color .3s ease}.blogListItem,.blogListItem div,.blogListItem p,.blogListItem span,.blogPostTitleLink{color:var(--text-primary)}.blogPostTitleLink{display:inline-block;font-weight:800;font-size:1.15rem;text-decoration:none}.blogPostTitleLink:hover{text-decoration:underline;color:var(--link-hover)}.researchTitleLink,.researchTitleLink h3{color:var(--text-primary);text-decoration:none}.researchTitleLink:hover,.researchTitleLink:hover h3{color:var(--link-hover);text-decoration:none}.shareBar{margin:10px 0 18px;gap:6px}.shareBar--compact{margin:22px 0 8px}.shareBarLabel{margin-right:4px}button.shareButton{color:var(--text-primary)!important;border-radius:10px!important}button.shareButton:hover{background:var(--nav-hover)!important}button.shareButton:disabled{opacity:.4}.blogListItem .mantine-Text-root[data-color=dimmed],.blogListItem [class*=dimmed]{color:var(--text-dimmed)!important}.themeToggle{background:rgba(255,255,255,.12);border:none;border-radius:8px;padding:6px 8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease}.themeToggle:hover{background:rgba(255,255,255,.18)}.themeToggle svg{color:#ffffff}.headerIcon{color:#ffffff!important}.blogPostContainer{background-color:var(--bg-secondary);border-radius:16px;padding:20px 32px 24px;margin-top:16px;margin-bottom:24px;transition:background-color .3s ease,color .3s ease}.blogPostContainer,.blogPostContainer a,.blogPostContainer div,.blogPostContainer h1,.blogPostContainer h2,.blogPostContainer h3,.blogPostContainer h4,.blogPostContainer li,.blogPostContainer p,.blogPostContainer span{color:var(--text-primary)}.blogPostContainer a{color:var(--link-color)}.blogPostContainer a:hover{color:var(--link-hover)}.blogPostContainer h1{margin-top:0}.blogPostContainer [class*=dimmed]{color:var(--text-dimmed)!important}@media (max-width:768px){.blogPostContainer{padding:16px 20px;border-radius:12px;margin-top:12px}}.contentContainer{background-color:var(--bg-content);color:var(--text-primary);border-radius:16px;padding:20px 32px 24px;margin-top:16px;margin-bottom:24px;transition:background-color .3s ease,color .3s ease}.contentContainer h1{margin-top:0;margin-bottom:.5rem}.contentContainer div,.contentContainer h1,.contentContainer h2,.contentContainer h3,.contentContainer h4,.contentContainer li,.contentContainer p,.contentContainer span{color:var(--text-primary)}.contentContainer a h1,.contentContainer a h2,.contentContainer a h3,.contentContainer a h4{color:var(--link-color)}.contentContainer a:hover h1,.contentContainer a:hover h2,.contentContainer a:hover h3,.contentContainer a:hover h4{color:var(--link-hover)}@media (max-width:768px){.contentContainer{padding:16px 20px;border-radius:12px;margin-top:12px}}[data-theme=dark] .mantine-Tabs-tab[data-active]{background-color:rgba(255,255,255,.3)}[data-theme=light] .mantine-Tabs-tab{color:#000000}[data-theme=light] .mantine-Tabs-tab:hover{background-color:rgba(103,58,184,.15)!important;color:#000000!important}[data-theme=light] .mantine-Tabs-tab[data-active]{color:#000000;border-color:#5a3d9a;background-color:rgba(103,58,184,.25)}[data-theme=light] .mantine-Tabs-tabLabel{color:#000000}.projectIcon{color:var(--icon-color);transition:color .3s ease}.contentContainer a{color:var(--link-color);text-decoration:underline}.contentContainer a:hover{color:var(--link-hover)}.blogListItem a{color:var(--link-color);text-decoration:underline}.blogListItem a:hover{color:var(--link-hover)}.timeline-label{color:var(--text-primary)}.timeline-label a{color:var(--link-color)}.timeline-label a:hover{color:var(--link-hover)}