@charset "UTF-8";:root{--color-background:#121212;--color-accent:#8fdfd4;--color-accent-light:color-mix(in srgb, var(--color-accent) 95%, white);--color-accent-dark:color-mix(in srgb, var(--color-accent) 90%, black);--color-accent-transparent-10:color-mix(
        in srgb,
        var(--color-accent) 10%,
        transparent
    );--color-accent-transparent-15:color-mix(
        in srgb,
        var(--color-accent) 15%,
        transparent
    );--color-accent-transparent-20:color-mix(
        in srgb,
        var(--color-accent) 20%,
        transparent
    );--color-accent-transparent-30:color-mix(
        in srgb,
        var(--color-accent) 30%,
        transparent
    );--color-accent-transparent-40:color-mix(
        in srgb,
        var(--color-accent) 40%,
        transparent
    );--color-text:white;--color-text-inverse:#121212;--color-text-secondary:color-mix(in srgb, var(--color-text) 70%, black);--color-link:var(--color-accent-light);--color-link-hover:var(--color-text);--color-link-underline:color-mix(
        in srgb,
        var(--color-accent) 30%,
        transparent
    );--color-link-underline-hover:var(--color-accent);--color-focus-outline:var(--color-accent-light);--color-article:rgb(30, 30, 30);--color-panel:rgb(31, 31, 31);--color-panel-zebra:color-mix(in srgb, var(--color-panel) 90%, black);--color-panel-dark:color-mix(in srgb, var(--color-panel) 75%, black);--color-panel-hover:color-mix(in srgb, var(--color-panel) 96%, white);--color-panel-hover-subtle:color-mix(
        in srgb,
        var(--color-panel) 99%,
        white
    );--color-card:rgba(40, 40, 40, 0.8);--color-card-hover:rgba(50, 50, 50, 0.9);--color-code-bg:#191a1c;--mint-gradient:linear-gradient(
        135deg,
        var(--color-accent),
        var(--color-text)
    );--mint-blend:color-mix(
        in srgb,
        var(--color-accent) 75%,
        var(--color-text)
    );--color-border:white;--color-border-standard:color-mix(
        in srgb,
        var(--color-border) 10%,
        transparent
    );--color-border-light:color-mix(
        in srgb,
        var(--color-border) 5%,
        transparent
    );--border-standard:1px solid var(--color-border-standard);--border-standard-2px:2px solid var(--color-border-standard);--border-light:1px solid var(--color-border-light);--border-light-2px:2px solid var(--color-border-light);--border-accent:1px solid var(--color-accent);--border-accent-2px:2px solid var(--color-accent);--border-accent-t:1px solid var(--color-accent-transparent-30);--border-accent-t-2px:2px solid var(--color-accent-transparent-30);--font-primary:"Nunito", sans-serif;--font-secondary:"Sen", sans-serif;--font-monospace:"Fira Code", monospace;--font-weight-normal:400;--font-weight-light:300;--font-weight-semibold:500;--font-weight-bold:600;--font-weight-code:400;--font-size-base:1.07rem;--font-size-xs:0.8rem;--font-size-sm:0.9rem;--font-size-md:1rem;--font-size-lg:1.1rem;--font-size-h1:clamp(1rem, 7vw, 3rem);--font-size-h2:1.6rem;--font-size-h3:1.4rem;--font-size-h4:1.2rem;--spacing-xs:0.5rem;--spacing-sm:0.75rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--frontmatter-margin-left:var(--spacing-xs);--margin-indent:40px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-round:18px;--color-shadow-standard:rgba(0, 0, 0, 0.2);--color-shadow-accent:var(--color-accent-transparent-30);--color-shadow-accent-hover:var(--color-accent-transparent-40);--shadow-standard:0 4px 15px rgba(0, 0, 0, 0.2);--shadow-standard-hover:0 4px 30px rgba(0, 0, 0, 0.3);--shadow-accent:0 4px 12px var(--color-shadow-accent);--shadow-accent-hover:0 0 16px var(--color-shadow-accent-hover);--shadow-birthday:0 0 20px rgba(255, 107, 107, 0.3), 0 0 40px rgba(78, 205, 196, 0.2),
        0 0 60px rgba(69, 183, 209, 0.1);--transition-duration:0.3s;--transition-duration-fast:0.2s;--transition-timing:ease;--transition-default:all var(--transition-duration-fast)
        var(--transition-timing);--transition-transform-shadow:transform var(--transition-duration) var(--transition-timing),
        box-shadow var(--transition-duration) var(--transition-timing);--transition-transform:transform var(--transition-duration)
        var(--transition-timing);--transition-background:background-color var(--transition-duration-fast)
        var(--transition-timing);--child-animation-delay:0s;--max-media-height:800px;--max-media-height-verytall:1000px;--max-media-width-big:clamp(70vw, 80vw, 800px);--max-media-height-big:70vh;--max-media-width-small:clamp(25vw, 30vw, 250px);--max-media-height-small:30vh;--body-bg-gradient:radial-gradient(
            circle at 10% 10%,
            rgba(143, 223, 212, 0.15),
            transparent 40%
        ),
        radial-gradient(
            circle at 90% 80%,
            rgba(143, 223, 212, 0.12),
            transparent 50%
        ),
        var(--color-background);--main-width:100vw;--main-width-mobile:98vw;--main-margin-top:5rem;--main-margin-top-mobile:3.5rem;--main-margin-sides:12vw;--main-margin-sides-mobile:auto;--article-margin-vertical:clamp(1rem, 4vw, 1.875rem);--footer-bg:color-mix(in srgb, white 10%, var(--color-background));--footer-border-color:rgba(255, 255, 255, 0.18);--footer-border:1px solid var(--footer-border-color);--footer-radius:var(--radius-lg);--footer-padding-top:10px;--footer-padding-sides:25px;--footer-padding-bottom:5px;--footer-margin-top:0px;--footer-margin-sides:10px;--footer-margin-bottom:5px}@media(max-width:768px){:root{--main-margin-sides:var(--main-margin-sides-mobile);--main-margin-top:var(--main-margin-top-mobile);--main-width:var(--main-width-mobile)}}@font-face{font-family:nunito;font-style:italic;font-weight:200 1e3;font-display:swap;src:url(/fonts/Nunito-cyrillic-italic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:nunito;font-style:italic;font-weight:200 1e3;font-display:swap;src:url(/fonts/Nunito-latin-ext-italic.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:nunito;font-style:italic;font-weight:200 1e3;font-display:swap;src:url(/fonts/Nunito-latin-italic.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:nunito;font-style:normal;font-weight:200 1e3;font-display:swap;src:url(/fonts/Nunito-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:nunito;font-style:normal;font-weight:200 1e3;font-display:swap;src:url(/fonts/Nunito-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:nunito;font-style:normal;font-weight:200 1e3;font-display:swap;src:url(/fonts/Nunito-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:sen;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/Sen-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:sen;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/Sen-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:fira code;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/Fira_Code.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:kenia;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/Kenia.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}html{font-size:100%;scroll-behavior:smooth;overflow-x:hidden}@media(pointer:fine){html{overscroll-behavior:none}}body{background:var(--body-bg-gradient);line-height:1.4;font-family:var(--font-primary);color:var(--color-text);margin:0;font-size:var(--font-size-base);overflow-wrap:break-word;background-attachment:fixed}body.height-overflow{background-attachment:scroll}main{max-width:var(--main-width);margin:var(--main-margin-top)var(--main-margin-sides)0;box-sizing:border-box;display:flex;flex-direction:column;padding:0}main>article{background:var(--color-article);margin:var(--article-margin-vertical)0;width:100%;max-width:100%;box-sizing:border-box;padding:var(--spacing-md)var(--spacing-lg);border-radius:var(--radius-xl);border:var(--border-standard);overflow-x:hidden}@media(max-width:768px){main>article>:first-child{margin-top:6px}}@media(max-width:768px){main>article{padding:var(--spacing-sm)}}main>article.animated{animation:articleEntrance .6s var(--transition-timing)}@keyframes articleEntrance{from{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}header{position:fixed;top:20px;left:50%;transform:translateX(-50%)translate3d(0,0,0);width:100vw;max-width:1e3px;padding:10px 15px;background:rgba(30,30,30,.2);border:var(--border-standard);border-radius:40px;backdrop-filter:blur(20px)saturate(.8);display:flex;align-items:center;justify-content:space-between;color:var(--color-text);box-sizing:border-box;z-index:1000;overflow:hidden;transition:backdrop-filter .3s}@media(max-width:768px){header{max-width:100vw;border-radius:0;top:0;left:0;transform:translate3d(0,0,0)}}header #title{font-weight:var(--font-weight-light)!important;display:inline-block;background:var(--mint-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-family:var(--font-secondary);font-size:clamp(1.1rem,4vw,2rem);flex-shrink:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;border:none;outline:none;text-decoration:none}header #title:focus-visible{outline:2px solid var(--color-focus-outline);outline-offset:2px}@media(max-width:768px){header #title{display:none}}header nav{display:flex;gap:8px;flex-shrink:0}@media(max-width:768px){header nav{justify-content:space-evenly;width:100%;gap:0}}header nav a{background:rgba(60,60,60,.1);color:var(--color-text);border:var(--border-standard);border-radius:20px;padding:6px 12px;font-family:var(--font-secondary);font-size:clamp(.75rem,3vw,1rem);font-weight:var(--font-weight-light)!important;cursor:pointer;transition:color .15s ease,background-color .15s ease,transform .2s ease,border-bottom-color .3s ease;white-space:nowrap;text-decoration:none}header nav a:hover{color:var(--color-accent);border-bottom-color:var(--color-accent-dark);background-color:rgba(80,80,80,.7);transform:translateY(-1px)scale(1.02);text-decoration:none}header nav a.active{color:var(--color-accent);border-bottom-color:var(--color-accent-dark)}header nav:hover a.active:not(:hover){color:var(--color-accent-transparent-40);border-bottom-color:var(--color-accent-transparent-40)}header.birthday-mode{box-shadow:var(--shadow-birthday)}header.birthday-mode #title{transition:background .4s ease-out;background:linear-gradient(45deg,#ff6b6b,#4ecdc4,#45b7d1,#96ceb4,#feca57,#ff9ff3);background-size:300% 300%;background-clip:text;-webkit-background-clip:text;animation:birthday-rainbow 3s ease-in-out infinite}header.birthday-mode #title::after{content:"🎂🎉";margin-left:.3em;background:0 0;-webkit-text-fill-color:initial;animation:none}header.birthday-mode-delayed{transition:box-shadow .4s ease-out}header.birthday-mode-delayed #title::after{animation:fade-in-up .4s ease-in-out forwards!important}@keyframes birthday-rainbow{0%,100%{opacity:1;transform:none;background-position:0}50%{opacity:1;transform:none;background-position:100%}}footer{display:flex;justify-content:space-between;align-items:center;background:var(--footer-bg);padding:var(--footer-padding-top)var(--footer-padding-sides)var(--footer-padding-bottom);box-sizing:border-box;color:var(--color-text);z-index:9999;isolation:isolate;transition:position .2s;position:fixed;bottom:0}@media(max-width:768px){footer{width:100vw;border-top:var(--footer-border);border-radius:0;margin:0}}@media(min-width:768px){footer{width:calc(100vw - 20px);border:var(--footer-border);border-radius:var(--footer-radius);margin:var(--footer-margin-top)var(--footer-margin-sides)var(--footer-margin-bottom)}}body.height-overflow footer{position:static}footer span{font-size:var(--font-size-base)}footer span a{color:var(--color-text);text-decoration:none}footer span a:hover{text-decoration:underline}footer span#copyright{z-index:4;font-style:italic;margin:auto}@media(min-width:768px){footer span#copyright{position:absolute;left:0;right:0;text-align:center}}footer span#source,footer span#email{z-index:5}@media(max-width:768px){footer span#source,footer span#email{display:none}}p,li{font-weight:var(--font-weight-normal);word-break:normal}h1,h2,h3,h4{font-family:var(--font-secondary)}h1{width:fit-content;font-size:var(--font-size-h1);flex-shrink:1;overflow:hidden;text-overflow:ellipsis;margin:0;font-weight:var(--font-weight-bold);color:var(--mint-blend);background:var(--mint-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}@media(max-width:768px){h1{margin-left:var(--frontmatter-margin-left)}}@supports not (-moz-appearance:none){h1.chromium-nomint{background:0 0;background-clip:none;-webkit-background-clip:none;-webkit-text-fill-color:unset}}h1.animated{animation:slideInFromLeft .5s .1s var(--transition-timing)both}h2{font-size:var(--font-size-h2)}h3{font-size:var(--font-size-h3)}h4{font-size:var(--font-size-h4)}a{color:var(--color-link);text-decoration:underline;text-decoration-color:var(--color-link-underline);transition:text-decoration-color var(--transition-duration-fast)var(--transition-timing)}a:hover{text-decoration-color:var(--color-link-underline-hover)}a:focus-visible{outline:2px solid var(--color-focus-outline);text-decoration-color:var(--color-link-underline-hover)}ul{list-style:disc inside;padding-left:var(--spacing-lg)}ul li{line-height:1.6;transition:color var(--transition-duration-fast)var(--transition-timing)}.mint{background:var(--mint-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.nomint{background:0 0;background-clip:none;-webkit-background-clip:none;-webkit-text-fill-color:unset}.staggered:nth-child(1){--child-animation-delay:0.05s}.staggered:nth-child(2){--child-animation-delay:0.1s}.staggered:nth-child(3){--child-animation-delay:0.15s}.staggered:nth-child(4){--child-animation-delay:0.2s}.staggered:nth-child(5){--child-animation-delay:0.25s}.staggered:nth-child(6){--child-animation-delay:0.3s}.staggered:nth-child(7){--child-animation-delay:0.35s}.staggered:nth-child(8){--child-animation-delay:0.4s}.staggered:nth-child(9){--child-animation-delay:0.45s}.staggered:nth-child(10){--child-animation-delay:0.5s}.staggered:nth-child(11){--child-animation-delay:0.55s}.staggered:nth-child(12){--child-animation-delay:0.6s}.staggered:nth-child(13){--child-animation-delay:0.65s}.staggered:nth-child(14){--child-animation-delay:0.7s}.staggered:nth-child(15){--child-animation-delay:0.75s}.staggered:nth-child(16){--child-animation-delay:0.8s}.staggered:nth-child(17){--child-animation-delay:0.85s}.staggered:nth-child(18){--child-animation-delay:0.9s}.staggered:nth-child(19){--child-animation-delay:0.95s}.staggered:nth-child(20){--child-animation-delay:1s}.staggered:nth-child(21){--child-animation-delay:1.05s}.staggered:nth-child(22){--child-animation-delay:1.1s}.staggered:nth-child(23){--child-animation-delay:1.15s}.staggered:nth-child(24){--child-animation-delay:1.2s}.staggered:nth-child(25){--child-animation-delay:1.25s}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes slideInFromTop{from{opacity:0;transform:translateY(-100px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromLeft{from{opacity:0;transform:translateX(-40px)}to{opacity:1;transform:translateX(0)}}@media(prefers-reduced-motion:reduce){.animated,h1.animated,article.animated,.frontmatter .info time.animated,.post-tags .post-tag.animated,.random-post-btn-container.animated{animation:none!important;opacity:1!important;transform:none!important}header #title,header nav a{animation:none!important;opacity:1!important;transform:none!important}header{animation:none!important;transform:translateX(-50%)translateY(0)translate3d(0,0,0)!important}.post-link:hover{transform:none}}