@layer base{:root{--clr-white:#fff;--clr-black:#292929;--clr-gray-100:#f2f2f2;--clr-gray-500:#b0b0b0;--clr-gray-700:#8f8f8f;--clr-gray-900:#888686;--clr-blueberry-100:#d2d7f3;--clr-blueberry-200:#aeb7ea;--clr-blueberry-300:#6f88f6;--clr-blueberry-500:#5573f6;--clr-blueberry-600:#4a63d3;--clr-blueberry-700:#2f4ac1;--clr-pink-100:#fbe4ef;--clr-pink-300:#f7c5dd;--clr-pink-500:#fc83bd;--clr-lavender-100:#eee6fa;--clr-lavender-200:#d5c0f2;--clr-lavender-300:#bf9eeb;--clr-lavender-500:#965ede;--clr-yellow-500:#ffe95c;--clr-yellow-700:#ffca38;--ff-heading:"JetBrains Mono", monospace;--ff-body:"SF Pro Display", -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;--radii-10:10px;--default-layout-gap:24px;--big-layout-gap:40px;--fs-300:14px;--fs-400:16px;--fs-500:18px;--fs-600:20px;--fs-700:24px;--fs-800:32px;--fs-900:44px;--fs-1000:55.2px;@media (width<=900px){--default-layout-gap:16px;--big-layout-gap:24px;--fs-300:13px;--fs-400:15px;--fs-500:16px;--fs-600:18px;--fs-700:20px;--fs-800:24px;--fs-900:32px;--fs-1000:40px}}:root{--badge-background:var(--clr-pink-500);--badge-text:var(--clr-yellow-500);--background-main:var(--clr-gray-900);--background-content:var(--clr-gray-100);--background-secondary:var(--clr-yellow-500);--button-border-color:var(--clr-black);--button-blog-card-background-hover:var(--clr-blueberry-500);--button-blog-card-color:var(--clr-black);--button-blog-card-color-hover:var(--clr-white);--button-hover-background:var(--clr-pink-500);--button-hover-color:var(--clr-white);--block-card-background:var(--clr-blueberry-100);--block-card-background-hover:var(--clr-blueberry-200);--block-card-text:var(--clr-black);--text-main:var(--clr-black);--text-high-contrast:var(--clr-black);--text-info-card:var(--clr-black);--text-blog-date:var(--clr-gray-900);--code-background:var(--clr-gray-100);--code-text:var(--clr-black);--lightbox-backdrop:#141414eb;--lightbox-foreground:var(--clr-white);--accent:#ffb6c1;--blockquote-accent:var(--badge-background);--theme-btn-yellow-background:var(--clr-yellow-500);--theme-btn-yellow-foreground:var(--clr-black);--theme-btn-yellow-hover-background:var(--clr-yellow-500);--theme-btn-yellow-hover-foreground:var(--clr-black);--theme-btn-blue-background:var(--clr-blueberry-500);--theme-btn-blue-foreground:var(--clr-white);--theme-btn-blue-hover-background:var(--clr-black);--theme-btn-blue-hover-foreground:var(--clr-gray-700);--theme-btn-blue-hover-accent:var(--clr-blueberry-500);--theme-btn-pink-background:var(--clr-pink-500);--theme-btn-pink-foreground:var(--clr-black);--theme-btn-pink-hover-background:var(--clr-pink-500);--theme-btn-pink-hover-foreground:var(--clr-black)}[data-theme=blue]{--badge-background:var(--clr-black);--badge-text:var(--clr-blueberry-500);--background-main:var(--clr-black);--background-content:var(--clr-blueberry-500);--background-secondary:var(--clr-blueberry-500);--button-border-color:var(--clr-white);--button-hover-color:var(--clr-black);--button-hover-background:var(--clr-white);--button-blog-card-background-hover:var(--clr-blueberry-700);--button-blog-card-color:var(--clr-white);--button-blog-card-color-hover:var(--clr-white);--block-card-background:var(--clr-blueberry-300);--block-card-background-hover:var(--clr-blueberry-600);--block-card-text:var(--clr-white);--text-main:var(--clr-white);--text-high-contrast:var(--clr-black);--text-info-card:var(--clr-white);--text-blog-date:var(--clr-white);--code-background:var(--clr-blueberry-100);--code-text:var(--clr-black);--lightbox-backdrop:#141414eb;--lightbox-foreground:var(--clr-white);--accent:#ffb6c1;--blockquote-accent:var(--badge-background);--theme-btn-yellow-background:var(--clr-black);--theme-btn-yellow-foreground:var(--clr-yellow-500);--theme-btn-yellow-hover-background:var(--clr-black);--theme-btn-yellow-hover-foreground:var(--clr-yellow-500);--theme-btn-blue-background:var(--clr-black);--theme-btn-blue-foreground:var(--clr-white);--theme-btn-blue-hover-background:var(--clr-black);--theme-btn-blue-hover-foreground:var(--clr-gray-700);--theme-btn-blue-hover-accent:var(--clr-blueberry-500);--theme-btn-pink-background:var(--clr-black);--theme-btn-pink-foreground:var(--clr-pink-500);--theme-btn-pink-hover-background:var(--clr-black);--theme-btn-pink-hover-foreground:var(--clr-pink-500)}[data-theme=pink]{--badge-background:var(--clr-yellow-500);--badge-text:var(--clr-black);--background-main:var(--clr-pink-500);--background-content:var(--clr-gray-100);--background-secondary:var(--clr-lavender-500);--button-border-color:var(--clr-black);--button-hover-color:var(--clr-white);--button-blog-card-background-hover:var(--clr-lavender-500);--button-blog-card-color:var(--clr-black);--button-blog-card-color-hover:var(--clr-white);--button-hover-background:var(--clr-black);--block-card-background-hover:var(--clr-lavender-200);--block-card-background:var(--clr-lavender-100);--block-card-text:var(--clr-black);--text-main:var(--clr-black);--text-high-contrast:var(--clr-white);--text-info-card:var(--clr-white);--text-blog-date:var(--clr-gray-900);--code-background:var(--clr-lavender-100);--code-text:var(--clr-black);--lightbox-backdrop:#141414eb;--lightbox-foreground:var(--clr-white);--accent:var(--clr-yellow-500);--blockquote-accent:var(--badge-background);--theme-btn-yellow-background:var(--clr-pink-500);--theme-btn-yellow-foreground:var(--clr-yellow-500);--theme-btn-yellow-hover-background:var(--clr-pink-500);--theme-btn-yellow-hover-foreground:var(--clr-yellow-500);--theme-btn-blue-background:var(--clr-pink-500);--theme-btn-blue-foreground:var(--clr-blueberry-500);--theme-btn-blue-hover-background:var(--clr-pink-500);--theme-btn-blue-hover-foreground:var(--clr-blueberry-500);--theme-btn-blue-hover-accent:var(--clr-blueberry-500);--theme-btn-pink-background:var(--clr-pink-500);--theme-btn-pink-foreground:var(--clr-black);--theme-btn-pink-hover-background:var(--clr-pink-500);--theme-btn-pink-hover-foreground:var(--clr-black)}body{font-family:var(--ff-body);font-size:var(--fs-400);color:var(--text-main);background-color:var(--background-main)}h1,h2,h3,h4{font-family:var(--ff-heading)}a{color:var(--text-main)}img{border-radius:var(--radii-10)}}@layer reset{*,:before,:after{box-sizing:border-box}html{text-size-adjust:none}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0;padding:0}[role=list]{margin:0;padding:0;list-style:none}body{min-block-size:100vh;line-height:1.6}h1,h2,h3,button,input,label{line-height:1.1}h1,h2,h3,h4{text-wrap:balance;font-family:var(--ff-heading)}code{font-family:JetBrains Mono,monospace;font-size:.95em}p,li{text-wrap:pretty;font-family:var(--ff-body)}img,picture{max-inline-size:100%;display:block}input,button,textarea,select{font:inherit}}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Light.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:SF Pro Display;src:url(/fonts/sf-pro-display-regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:SF Pro Display;src:url(/fonts/sf-pro-display-medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:SF Pro Display;src:url(/fonts/sf-pro-display-bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:SF Pro Display;src:url(/fonts/sf-pro-display-light.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap}@layer utilities{.border-radius-sm{border-radius:var(--radii-10)}.text-center{text-align:center}.text-high-contrast{color:var(--text-high-contrast)}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@layer components{h1{font-size:var(--fs-1000);font-weight:300;line-height:55px;font-family:var(--ff-heading);color:var(--text-main)}h2{font-size:var(--fs-800);font-weight:400;line-height:40px;font-family:var(--ff-heading);color:var(--text-main)}h3{font-size:var(--fs-700);font-weight:400;line-height:30px;font-family:var(--ff-heading);color:var(--text-main)}p{font-size:var(--fs-600);font-weight:400;line-height:140%;font-family:var(--ff-body);color:var(--text-main);letter-spacing:.01em}.cta-font{font-size:var(--fs-600);font-weight:400;line-height:20px;font-family:var(--ff-heading);color:var(--text-main)}}.hamburger-wrapper[data-astro-cid-qpeloze6]{background-color:var(--background-content);border-radius:var(--radii-10);justify-content:center;align-items:center;width:66px;height:66px;display:flex;position:relative}.hamburger-button[data-astro-cid-qpeloze6]{cursor:pointer;z-index:1001;background:0 0;border:none;flex-direction:column;justify-content:space-between;width:32px;height:24px;padding:0;display:flex;position:relative}.hamburger-line[data-astro-cid-qpeloze6]{background-color:var(--text-main);transform-origin:50%;border-radius:2px;width:100%;height:3px;transition:all .3s ease-in-out}.hamburger-button[data-astro-cid-qpeloze6].active .hamburger-line[data-astro-cid-qpeloze6]:first-child{transform:translateY(10.5px)rotate(45deg)}.hamburger-button[data-astro-cid-qpeloze6].active .hamburger-line[data-astro-cid-qpeloze6]:nth-child(2){opacity:0;transform:translate(-100%)}.hamburger-button[data-astro-cid-qpeloze6].active .hamburger-line[data-astro-cid-qpeloze6]:nth-child(3){transform:translateY(-10.5px)rotate(-45deg)}.mobile-menu[data-astro-cid-qpeloze6]{background:var(--background-secondary);border:1px solid var(--button-border-color);border-radius:var(--radii-10);opacity:0;visibility:hidden;z-index:1000;min-width:90vw;padding:16px;transition:all .3s ease-in-out;position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-10px);box-shadow:0 4px 20px #00000026}.mobile-menu[data-astro-cid-qpeloze6].active{opacity:1;visibility:visible;transform:translateY(0)}.menu-list[data-astro-cid-qpeloze6]{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.menu-item[data-astro-cid-qpeloze6]{opacity:0;transition:all .2s ease-in-out;transform:translateY(-5px)}.menu-item[data-astro-cid-qpeloze6]:hover{text-decoration:underline}.mobile-menu[data-astro-cid-qpeloze6].active .menu-item[data-astro-cid-qpeloze6]{opacity:1;transform:translateY(0)}.mobile-menu[data-astro-cid-qpeloze6].active .menu-item[data-astro-cid-qpeloze6]:first-child{transition-delay:50ms}.mobile-menu[data-astro-cid-qpeloze6].active .menu-item[data-astro-cid-qpeloze6]:nth-child(2){transition-delay:.1s}.mobile-menu[data-astro-cid-qpeloze6].active .menu-item[data-astro-cid-qpeloze6]:nth-child(3){transition-delay:.15s}.mobile-menu[data-astro-cid-qpeloze6].active .menu-item[data-astro-cid-qpeloze6]:nth-child(4){transition-delay:.2s}.mobile-menu[data-astro-cid-qpeloze6].active .menu-item[data-astro-cid-qpeloze6]:nth-child(5){transition-delay:.25s}.menu-link[data-astro-cid-qpeloze6]{color:var(--text-main);font-size:16px;font-weight:300;font-family:var(--ff-heading);white-space:nowrap;border-radius:6px;padding:12px 16px;text-decoration:none;transition:all .2s;display:block}.menu-link[data-astro-cid-qpeloze6]:hover{text-decoration:underline}.menu-link[data-astro-cid-qpeloze6][aria-current=page]{font-weight:500;text-decoration:underline}@media (width>=901px){.hamburger-wrapper[data-astro-cid-qpeloze6]{display:none}}.scroll-to-top-container[data-astro-cid-gj5di3wn]{background-color:var(--background-content);padding:var(--default-layout-gap);border-radius:var(--radii-10);text-align:center}.scroll-to-top-btn[data-astro-cid-gj5di3wn]{font-family:var(--ff-heading);text-transform:uppercase;color:var(--text-main);cursor:pointer;background-color:#0000;border:none;font-size:16px;font-weight:500;text-decoration:underline}.shell[data-astro-cid-mjbmmst2]{--gap:var(--default-layout-gap,24px);--pad:var(--default-layout-gap,24px);--col-min:200px;--sidebar-stick:24px;min-height:100dvh;width:var(--shell-max);padding:var(--pad);box-sizing:border-box;gap:var(--gap);grid-template-columns:minmax(0, 2fr) minmax(var(--col-min), 1fr);grid-template-rows:auto 1fr;grid-template-areas:"main controls""main latest";display:grid}.main[data-astro-cid-mjbmmst2]{grid-area:main;min-width:0}.controls[data-astro-cid-mjbmmst2]{align-items:start;gap:var(--gap);grid-area:controls;grid-template-columns:1fr;width:100%;height:fit-content;display:grid}.latest[data-astro-cid-mjbmmst2]{grid-area:latest;align-self:start;height:fit-content}.latest--stretch[data-astro-cid-mjbmmst2]{align-self:stretch;height:auto}.back[data-astro-cid-mjbmmst2],.controls__menu[data-astro-cid-mjbmmst2]{display:none}@media (width<=900px){.shell[data-astro-cid-mjbmmst2]{gap:var(--gap);grid-template:"controls""main""latest""back"/1fr}.controls[data-astro-cid-mjbmmst2]{grid-template-columns:auto 1fr;align-items:center;height:fit-content}.controls__menu[data-astro-cid-mjbmmst2]{justify-self:end;display:block}.latest--stretch[data-astro-cid-mjbmmst2]{align-self:start;height:fit-content}.back[data-astro-cid-mjbmmst2]{display:block}}.visually-hidden[data-astro-cid-mjbmmst2]{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}@media (prefers-reduced-motion:reduce){[data-astro-cid-mjbmmst2]{scroll-behavior:auto!important}}.block[data-astro-cid-sh64q5uo]{background:var(--background-content);border-radius:var(--radii-10);padding:20px var(--big-layout-gap);width:100%}.block-background-secondary[data-astro-cid-sh64q5uo]{background:var(--background-secondary)}.button[data-astro-cid-4hdjs4pg]{border:1px solid var(--button-border-color);color:var(--button-border-color);text-align:center;text-transform:uppercase;font-size:var(--fs-400);cursor:pointer;width:fit-content;min-width:min(200px,100%);max-width:100%;height:40px;font-family:var(--ff-heading);background-color:#0000;justify-content:center;align-items:center;gap:10px;padding-inline:1rem;font-weight:300;text-decoration:none;display:flex}.button[data-astro-cid-4hdjs4pg]:hover{border-color:var(--button-hover-background);background-color:var(--button-hover-background);color:var(--button-hover-color)}.button[data-astro-cid-4hdjs4pg]:focus-visible{outline:2px solid var(--button-border-color);outline-offset:2px}.colored[data-astro-cid-4hdjs4pg]{background-color:var(--button-colored-background);border-color:var(--button-colored-background)}.outline[data-astro-cid-4hdjs4pg]{border:1px solid var(--button-border-color)}.outline[data-astro-cid-4hdjs4pg]:hover{background-color:var(--button-hover-background);border-color:var(--button-hover-background)}.secondary[data-astro-cid-4hdjs4pg]{background-color:var(--button-secondary-background,var(--background-secondary));border-color:var(--button-secondary-border,var(--accent));color:var(--button-secondary-text,var(--text-high-contrast))}.link[data-astro-cid-4hdjs4pg]{min-width:auto;height:auto;color:var(--button-link-color);background:0 0;border:none;padding:0;text-decoration:underline}.link[data-astro-cid-4hdjs4pg]:hover{color:var(--button-hover-background);background:0 0;border:none}.button-container[data-astro-cid-4eub3d5z]{aspect-ratio:1;width:min(120px,100%);position:relative}svg[data-astro-cid-4eub3d5z]{width:100%;height:100%;transition:opacity .2s;position:absolute;top:0;left:0}svg[data-astro-cid-4eub3d5z].regular{opacity:1}svg[data-astro-cid-4eub3d5z].hover,.button-container[data-astro-cid-4eub3d5z]:hover svg[data-astro-cid-4eub3d5z].regular{opacity:0}.button-container[data-astro-cid-4eub3d5z]:hover svg[data-astro-cid-4eub3d5z].hover{opacity:1}.button-container[data-astro-cid-bm4rz7qf]{aspect-ratio:1;width:min(120px,100%);position:relative}svg[data-astro-cid-bm4rz7qf]{width:100%;height:100%;transition:opacity .2s;position:absolute;top:0;left:0}svg[data-astro-cid-bm4rz7qf].regular{opacity:1}svg[data-astro-cid-bm4rz7qf].hover,.button-container[data-astro-cid-bm4rz7qf]:hover svg[data-astro-cid-bm4rz7qf].regular{opacity:0}.button-container[data-astro-cid-bm4rz7qf]:hover svg[data-astro-cid-bm4rz7qf].hover{opacity:1}.button-container[data-astro-cid-yusyxbut]{aspect-ratio:1;width:min(120px,100%);position:relative}svg[data-astro-cid-yusyxbut]{width:100%;height:100%;transition:opacity .2s;position:absolute;top:0;left:0}svg[data-astro-cid-yusyxbut].regular{opacity:1}svg[data-astro-cid-yusyxbut].hover,.button-container[data-astro-cid-yusyxbut]:hover svg[data-astro-cid-yusyxbut].regular{opacity:0}.button-container[data-astro-cid-yusyxbut]:hover svg[data-astro-cid-yusyxbut].hover{opacity:1}.theme-switcher-container[data-astro-cid-rf5juafs]{width:100%;padding:var(--default-layout-gap) 0;background:var(--background-content);border-radius:var(--radii-10);padding:var(--default-layout-gap) var(--default-layout-gap)}.theme-switcher[data-astro-cid-rf5juafs]{gap:var(--default-layout-gap);justify-content:space-between;align-items:center;width:100%;display:flex}.theme-btn[data-astro-cid-rf5juafs]{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:30%;height:120px;padding:0;transition:transform .1s;display:flex}.theme-btn[data-astro-cid-rf5juafs]:hover,.theme-btn[data-astro-cid-rf5juafs][aria-pressed=true]{transform:scale(1.1)}@media (width<=900px){.theme-switcher-container[data-astro-cid-rf5juafs]{border-radius:var(--radii-10);padding:10px}.theme-btn[data-astro-cid-rf5juafs]{flex:0 0 48px;width:48px;height:48px}}.badge[data-astro-cid-pbn33xyv]{font-family:var(--ff-heading);background-color:var(--badge-background);color:var(--badge-text);padding:0 1rem;font-size:1rem;font-weight:400;display:inline-block}.blog-banner{grid-template-rows:1fr 10fr 1fr;grid-template-columns:1fr;width:100%;min-width:0;height:100%;display:grid;& h2,& p,& a{overflow-wrap:anywhere;margin:0;color:var(--text-info-card)!important;border-color:var(--text-info-card)!important}& a:hover{color:var(--button-hover-color)!important}}.blog-latest-post{flex-direction:column;justify-content:end;gap:.5rem;width:100%;min-width:0;padding-block:3rem;display:flex}.sidebar-title{color:var(--text-info-card);justify-content:space-between;align-items:center;display:flex}
