@charset "utf-8";@property --main-hue{syntax:"<number>";initial-value:213;inherits:true}@-webkit-keyframes groove{0%{-webkit-transform:translateY(0);transform:translateY(0)}50%{-webkit-transform:translateY(max(7.75px,.625rem));transform:translateY(max(7.75px,.625rem))}}@-moz-keyframes groove{0%{-moz-transform:translateY(0);transform:translateY(0)}50%{-moz-transform:translateY(max(7.75px,.625rem));transform:translateY(max(7.75px,.625rem))}}@-o-keyframes groove{0%{-o-transform:translateY(0);transform:translateY(0)}50%{-o-transform:translateY(max(7.75px,.625rem));transform:translateY(max(7.75px,.625rem))}}@keyframes groove{0%{-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);transform:translateY(0)}50%{-webkit-transform:translateY(max(7.75px,.625rem));-moz-transform:translateY(max(7.75px,.625rem));-o-transform:translateY(max(7.75px,.625rem));transform:translateY(max(7.75px,.625rem))}}.geist-anim{font-synthesis:weight!important;font-weight:50}*,:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body,html{margin:0;padding:0;--csstools-color-scheme--light:initial;color-scheme:light dark}@media (prefers-color-scheme:dark){body,html{--csstools-color-scheme--light: }}html{--core:hsl(var(--core-hsl));--mantle:hsl(var(--mantle-hsl));--crust:hsl(var(--crust-hsl));--base:hsl(var(--base-hsl));--surface0:hsl(var(--surface0-hsl));--surface1:hsl(var(--surface1-hsl));--surface2:hsl(var(--surface2-hsl));--surface3:hsl(var(--surface3-hsl));--surface4:hsl(var(--surface4-hsl));--surface5:hsl(var(--surface5-hsl));--surface6:hsl(var(--surface6-hsl));--overlay0:hsl(var(--overlay0-hsl));--overlay1:hsl(var(--overlay1-hsl));--overlay2:hsl(var(--overlay2-hsl));--overlay3:hsl(var(--overlay3-hsl));--supertext:hsl(var(--supertext-hsl));--text:hsl(var(--text-hsl));--text1:hsl(var(--text1-hsl));--subtext0:hsl(var(--subtext0-hsl));--subtext1:hsl(var(--subtext1-hsl));--subtext2:hsl(var(--subtext2-hsl));--subtext3:hsl(var(--subtext3-hsl));--accent:hsl(var(--accent-hsl));--tooltip-shadow:hsla(var(--overlay3-hsl),0.35);--main-hue:213;--card-bg:hsla(var(--crust-hsl),0.4);--card-bg-hover:hsla(var(--crust-hsl),0.6);--glow:0 0 0.05em hsla(-webkit-calc(var(--main-hue) - 3),60%,90%,0.7),0 0 0.22em hsla(-webkit-calc(var(--main-hue) - 4),85%,76%,0.45),0 0 0.75em hsla(-webkit-calc(var(--main-hue) - 6),90%,64%,0.32);--glow:0 0 0.05em hsla(-moz-calc(var(--main-hue) - 3),60%,90%,0.7),0 0 0.22em hsla(-moz-calc(var(--main-hue) - 4),85%,76%,0.45),0 0 0.75em hsla(-moz-calc(var(--main-hue) - 6),90%,64%,0.32);--glow:0 0 0.05em hsla(calc(var(--main-hue) - 3),60%,90%,0.7),0 0 0.22em hsla(calc(var(--main-hue) - 4),85%,76%,0.45),0 0 0.75em hsla(calc(var(--main-hue) - 6),90%,64%,0.32);--glow-soft:0 0 0.04em hsla(-webkit-calc(var(--main-hue) - 3),55%,90%,0.22),0 0 0.22em hsla(-webkit-calc(var(--main-hue) - 5),85%,72%,0.15);--glow-soft:0 0 0.04em hsla(-moz-calc(var(--main-hue) - 3),55%,90%,0.22),0 0 0.22em hsla(-moz-calc(var(--main-hue) - 5),85%,72%,0.15);--glow-soft:0 0 0.04em hsla(calc(var(--main-hue) - 3),55%,90%,0.22),0 0 0.22em hsla(calc(var(--main-hue) - 5),85%,72%,0.15);--core-hsl:-webkit-calc(var(--main-hue) + 8),40%,2%;--core-hsl:-moz-calc(var(--main-hue) + 8),40%,2%;--core-hsl:calc(var(--main-hue) + 8),40%,2%;--mantle-hsl:-webkit-calc(var(--main-hue) + 6),30%,3%;--mantle-hsl:-moz-calc(var(--main-hue) + 6),30%,3%;--mantle-hsl:calc(var(--main-hue) + 6),30%,3%;--crust-hsl:-webkit-calc(var(--main-hue) + 5),25%,4.5%;--crust-hsl:-moz-calc(var(--main-hue) + 5),25%,4.5%;--crust-hsl:calc(var(--main-hue) + 5),25%,4.5%;--base-hsl:-webkit-calc(var(--main-hue) + 4),22%,6.5%;--base-hsl:-moz-calc(var(--main-hue) + 4),22%,6.5%;--base-hsl:calc(var(--main-hue) + 4),22%,6.5%;--page-hsl:var(--main-hue),36%,13%;--surface0-hsl:-webkit-calc(var(--main-hue) + 5),22%,8%;--surface0-hsl:-moz-calc(var(--main-hue) + 5),22%,8%;--surface0-hsl:calc(var(--main-hue) + 5),22%,8%;--surface1-hsl:-webkit-calc(var(--main-hue) + 4),22%,12%;--surface1-hsl:-moz-calc(var(--main-hue) + 4),22%,12%;--surface1-hsl:calc(var(--main-hue) + 4),22%,12%;--surface2-hsl:-webkit-calc(var(--main-hue) + 4),22%,14.5%;--surface2-hsl:-moz-calc(var(--main-hue) + 4),22%,14.5%;--surface2-hsl:calc(var(--main-hue) + 4),22%,14.5%;--surface3-hsl:-webkit-calc(var(--main-hue) + 3),20%,19%;--surface3-hsl:-moz-calc(var(--main-hue) + 3),20%,19%;--surface3-hsl:calc(var(--main-hue) + 3),20%,19%;--surface4-hsl:-webkit-calc(var(--main-hue) + 2),19%,23%;--surface4-hsl:-moz-calc(var(--main-hue) + 2),19%,23%;--surface4-hsl:calc(var(--main-hue) + 2),19%,23%;--surface5-hsl:-webkit-calc(var(--main-hue) + 1),18%,27.5%;--surface5-hsl:-moz-calc(var(--main-hue) + 1),18%,27.5%;--surface5-hsl:calc(var(--main-hue) + 1),18%,27.5%;--surface6-hsl:var(--main-hue),18%,34%;--overlay0-hsl:-webkit-calc(var(--main-hue) - 1),16%,55%;--overlay0-hsl:-moz-calc(var(--main-hue) - 1),16%,55%;--overlay0-hsl:calc(var(--main-hue) - 1),16%,55%;--overlay1-hsl:-webkit-calc(var(--main-hue) - 2),20%,65%;--overlay1-hsl:-moz-calc(var(--main-hue) - 2),20%,65%;--overlay1-hsl:calc(var(--main-hue) - 2),20%,65%;--overlay2-hsl:-webkit-calc(var(--main-hue) - 3),26%,75%;--overlay2-hsl:-moz-calc(var(--main-hue) - 3),26%,75%;--overlay2-hsl:calc(var(--main-hue) - 3),26%,75%;--overlay3-hsl:-webkit-calc(var(--main-hue) - 4),36%,85%;--overlay3-hsl:-moz-calc(var(--main-hue) - 4),36%,85%;--overlay3-hsl:calc(var(--main-hue) - 4),36%,85%;--supertext-hsl:-webkit-calc(var(--main-hue) - 5),70%,98%;--supertext-hsl:-moz-calc(var(--main-hue) - 5),70%,98%;--supertext-hsl:calc(var(--main-hue) - 5),70%,98%;--text-hsl:-webkit-calc(var(--main-hue) - 4),45%,94%;--text-hsl:-moz-calc(var(--main-hue) - 4),45%,94%;--text-hsl:calc(var(--main-hue) - 4),45%,94%;--text1-hsl:-webkit-calc(var(--main-hue) - 2),24%,72%;--text1-hsl:-moz-calc(var(--main-hue) - 2),24%,72%;--text1-hsl:calc(var(--main-hue) - 2),24%,72%;--subtext0-hsl:-webkit-calc(var(--main-hue) - 1),20%,67%;--subtext0-hsl:-moz-calc(var(--main-hue) - 1),20%,67%;--subtext0-hsl:calc(var(--main-hue) - 1),20%,67%;--subtext1-hsl:var(--main-hue),17%,60%;--subtext2-hsl:-webkit-calc(var(--main-hue) + 2),13%,50%;--subtext2-hsl:-moz-calc(var(--main-hue) + 2),13%,50%;--subtext2-hsl:calc(var(--main-hue) + 2),13%,50%;--subtext3-hsl:-webkit-calc(var(--main-hue) + 4),11%,40%;--subtext3-hsl:-moz-calc(var(--main-hue) + 4),11%,40%;--subtext3-hsl:calc(var(--main-hue) + 4),11%,40%;--accent-hsl:-webkit-calc(var(--main-hue) - 4),85%,76%;--accent-hsl:-moz-calc(var(--main-hue) - 4),85%,76%;--accent-hsl:calc(var(--main-hue) - 4),85%,76%;--rain:hsl(-webkit-calc(var(--main-hue) - 4),55%,86%);--rain:hsl(-moz-calc(var(--main-hue) - 4),55%,86%);--rain:hsl(calc(var(--main-hue) - 4),55%,86%);color:#e9f0f7;color:hsl(209,45%,94%);color:var(--text);--bg-top:-webkit-calc(var(--main-hue) + 3),32.5%,8.5%;--bg-top:-moz-calc(var(--main-hue) + 3),32.5%,8.5%;--bg-top:calc(var(--main-hue) + 3),32.5%,8.5%;--bg-bottom:-webkit-calc(var(--main-hue) - 3),40%,18.5%;--bg-bottom:-moz-calc(var(--main-hue) - 3),40%,18.5%;--bg-bottom:calc(var(--main-hue) - 3),40%,18.5%;--parallax-speed:0.35;background-color:#1c2e40;background-color:hsl(210,40%,18.5%);background-color:hsl(var(--bg-bottom));min-height:100%;-ms-scroll-chaining:none;accent-color:hsl(209,85%,76%);accent-color:var(--accent);overscroll-behavior:none;word-break:auto-phrase}body{--bg-bleed-l:var(--rail-l,0px);--bg-bleed-r:var(--rail-r,0px);--bg-bleed-y:-webkit-calc(env(safe-area-inset-bottom,0px) + 8rem);--bg-bleed-y:-moz-calc(env(safe-area-inset-bottom,0px) + 8rem);--bg-bleed-y:calc(env(safe-area-inset-bottom, 0px) + 8rem);--photo-h:max(-webkit-calc((100vw + var(--bg-bleed-l) + var(--bg-bleed-r))*4/3),-webkit-calc(100vh + var(--bg-bleed-y)));--photo-h:max(-moz-calc((100vw + var(--bg-bleed-l) + var(--bg-bleed-r))*4/3),-moz-calc(100vh + var(--bg-bleed-y)));--photo-h:max(calc((100vw + var(--bg-bleed-l) + var(--bg-bleed-r))*4/3),calc(100vh + var(--bg-bleed-y)));--bg-travel:-webkit-calc(var(--photo-h) - 100vh - var(--bg-bleed-y));--bg-travel:-moz-calc(var(--photo-h) - 100vh - var(--bg-bleed-y));--bg-travel:calc(var(--photo-h) - 100vh - var(--bg-bleed-y))}html:not(.has-rail){overflow-x:clip}html.has-rail,html.has-rail body{-ms-touch-action:pan-y pinch-zoom;touch-action:pan-y pinch-zoom}.page-bg{bottom:0;left:-webkit-calc(var(--bg-bleed-l)*-1);left:-moz-calc(var(--bg-bleed-l)*-1);left:calc(var(--bg-bleed-l)*-1);overflow-x:visible;overflow-y:clip;pointer-events:none;position:absolute;right:0;top:0;z-index:-1}.page-bg-photo{background:-webkit-linear-gradient(top,#0e131b 0,#1c2e40 56%,#1c2e40 94%),url("/bg-rain.webp") center /cover no-repeat;background:-webkit-linear-gradient(top,hsla(216,32.5%,8.5%,.62) 0,hsla(210,40%,18.5%,.8) 56%,hsl(210,40%,18.5%) 94%),url("/bg-rain.webp") center /cover no-repeat;background:-moz-linear-gradient(top,hsla(216,32.5%,8.5%,.62) 0,hsla(210,40%,18.5%,.8) 56%,hsl(210,40%,18.5%) 94%),url("/bg-rain.webp") center /cover no-repeat;background:-webkit-gradient(linear,left top,left bottom,from(hsla(216,32.5%,8.5%,.62)),color-stop(56%,hsla(210,40%,18.5%,.8)),color-stop(94%,hsl(210,40%,18.5%))),url("/bg-rain.webp") center /cover no-repeat;background:-o-linear-gradient(top,hsla(216,32.5%,8.5%,.62) 0,hsla(210,40%,18.5%,.8) 56%,hsl(210,40%,18.5%) 94%),url("/bg-rain.webp") center /cover no-repeat;background:linear-gradient(to bottom,hsla(216,32.5%,8.5%,.62) 0,hsla(210,40%,18.5%,.8) 56%,hsl(210,40%,18.5%) 94%),url("/bg-rain.webp") center /cover no-repeat;background:-webkit-gradient(linear,left top,left bottom,from(hsla(var(--bg-top),.62)),color-stop(56%,hsla(var(--bg-bottom),.8)),color-stop(94%,hsl(var(--bg-bottom)))),url("/bg-rain.webp") center /cover no-repeat;background:-webkit-linear-gradient(top,hsla(var(--bg-top),.62) 0,hsla(var(--bg-bottom),.8) 56%,hsl(var(--bg-bottom)) 94%),url("/bg-rain.webp") center /cover no-repeat;background:-moz-linear-gradient(top,hsla(var(--bg-top),.62) 0,hsla(var(--bg-bottom),.8) 56%,hsl(var(--bg-bottom)) 94%),url("/bg-rain.webp") center /cover no-repeat;background:-o-linear-gradient(top,hsla(var(--bg-top),.62) 0,hsla(var(--bg-bottom),.8) 56%,hsl(var(--bg-bottom)) 94%),url("/bg-rain.webp") center /cover no-repeat;background:linear-gradient(to bottom,hsla(var(--bg-top),.62) 0,hsla(var(--bg-bottom),.8) 56%,hsl(var(--bg-bottom)) 94%),url("/bg-rain.webp") center /cover no-repeat;height:var(--photo-h);top:0;will-change:transform}.page-bg-photo,.page-bg-end{left:0;position:absolute;width:-webkit-calc(100% + var(--bg-bleed-r));width:-moz-calc(100% + var(--bg-bleed-r));width:calc(100% + var(--bg-bleed-r))}.page-bg-end{background:-webkit-linear-gradient(top,#1c2e40 0,#1c2e40 40%,#1c2e40 75%,#1c2e40 100%);background:-webkit-linear-gradient(top,hsla(210,40%,18.5%,0) 0,hsla(210,40%,18.5%,.3) 40%,hsla(210,40%,18.5%,.75) 75%,hsl(210,40%,18.5%) 100%);background:-moz-linear-gradient(top,hsla(210,40%,18.5%,0) 0,hsla(210,40%,18.5%,.3) 40%,hsla(210,40%,18.5%,.75) 75%,hsl(210,40%,18.5%) 100%);background:-webkit-gradient(linear,left top,left bottom,from(hsla(210,40%,18.5%,0)),color-stop(40%,hsla(210,40%,18.5%,.3)),color-stop(75%,hsla(210,40%,18.5%,.75)),to(hsl(210,40%,18.5%)));background:-o-linear-gradient(top,hsla(210,40%,18.5%,0) 0,hsla(210,40%,18.5%,.3) 40%,hsla(210,40%,18.5%,.75) 75%,hsl(210,40%,18.5%) 100%);background:linear-gradient(to bottom,hsla(210,40%,18.5%,0) 0,hsla(210,40%,18.5%,.3) 40%,hsla(210,40%,18.5%,.75) 75%,hsl(210,40%,18.5%) 100%);background:-webkit-gradient(linear,left top,left bottom,from(hsla(var(--bg-bottom),0)),color-stop(40%,hsla(var(--bg-bottom),.3)),color-stop(75%,hsla(var(--bg-bottom),.75)),to(hsl(var(--bg-bottom))));background:-webkit-linear-gradient(top,hsla(var(--bg-bottom),0) 0,hsla(var(--bg-bottom),.3) 40%,hsla(var(--bg-bottom),.75) 75%,hsl(var(--bg-bottom)) 100%);background:-moz-linear-gradient(top,hsla(var(--bg-bottom),0) 0,hsla(var(--bg-bottom),.3) 40%,hsla(var(--bg-bottom),.75) 75%,hsl(var(--bg-bottom)) 100%);background:-o-linear-gradient(top,hsla(var(--bg-bottom),0) 0,hsla(var(--bg-bottom),.3) 40%,hsla(var(--bg-bottom),.75) 75%,hsl(var(--bg-bottom)) 100%);background:linear-gradient(to bottom,hsla(var(--bg-bottom),0) 0,hsla(var(--bg-bottom),.3) 40%,hsla(var(--bg-bottom),.75) 75%,hsl(var(--bg-bottom)) 100%);bottom:0;height:min(45vh,22rem)}.page-bg-fixed{height:100vh;left:0;position:absolute;top:0;width:100%;will-change:transform}.page-bg-grain{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='a'%3E%3CfeTurbulence baseFrequency='.85' numOctaves='3' stitchTiles='stitch' type='fractalNoise'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 .09 0 0 0 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)'/%3E%3C/svg%3E") 0 0 /180px 180px;height:-webkit-calc(100vh + var(--bg-bleed-y));height:-moz-calc(100vh + var(--bg-bleed-y));height:calc(100vh + var(--bg-bleed-y));will-change:transform}.page-bg-grain,.rain-canvas{left:0;position:absolute;top:0;width:-webkit-calc(100% + var(--bg-bleed-r));width:-moz-calc(100% + var(--bg-bleed-r));width:calc(100% + var(--bg-bleed-r))}.rain-canvas{color:#c8dcef;color:hsl(209,55%,86%);color:var(--rain);height:-webkit-calc(100% + var(--bg-bleed-y));height:-moz-calc(100% + var(--bg-bleed-y));height:calc(100% + var(--bg-bleed-y))}@-webkit-keyframes page-bg-hold{to{-webkit-transform:translateY(0);transform:translateY(0);-webkit-transform:translateY(var(--scroll-max,0));transform:translateY(var(--scroll-max,0))}}@-moz-keyframes page-bg-hold{to{-moz-transform:translateY(0);transform:translateY(0);-moz-transform:translateY(var(--scroll-max,0));transform:translateY(var(--scroll-max,0))}}@-o-keyframes page-bg-hold{to{-o-transform:translateY(0);transform:translateY(0);-o-transform:translateY(var(--scroll-max,0));transform:translateY(var(--scroll-max,0))}}@keyframes page-bg-hold{to{-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);transform:translateY(0);-webkit-transform:translateY(var(--scroll-max,0));-moz-transform:translateY(var(--scroll-max,0));-o-transform:translateY(var(--scroll-max,0));transform:translateY(var(--scroll-max,0))}}@-webkit-keyframes page-bg-parallax{to{-webkit-transform:translateY(-webkit-calc(0 - min(var(--bg-travel),.35 * 0px)));transform:translateY(calc(0px - min(var(--bg-travel),
						.35 * 0px)));-webkit-transform:translateY(-webkit-calc(var(--scroll-max,0) - min(var(--bg-travel),var(--parallax-speed) * var(--scroll-max,0px))));transform:translateY(calc(var(--scroll-max, 0px) - min(var(--bg-travel),
						var(--parallax-speed) * var(--scroll-max, 0px))))}}@-moz-keyframes page-bg-parallax{to{-moz-transform:translateY(-moz-calc(0 - min(var(--bg-travel),.35 * 0px)));transform:translateY(calc(0px - min(var(--bg-travel),
						.35 * 0px)));-moz-transform:translateY(-moz-calc(var(--scroll-max,0) - min(var(--bg-travel),var(--parallax-speed) * var(--scroll-max,0px))));transform:translateY(calc(var(--scroll-max, 0px) - min(var(--bg-travel),
						var(--parallax-speed) * var(--scroll-max, 0px))))}}@-o-keyframes page-bg-parallax{to{-o-transform:translateY(calc(0px - min(var(--bg-travel),
						.35 * 0px)));transform:translateY(calc(0px - min(var(--bg-travel),
						.35 * 0px)));-o-transform:translateY(calc(var(--scroll-max, 0px) - min(var(--bg-travel),
						var(--parallax-speed) * var(--scroll-max, 0px))));transform:translateY(calc(var(--scroll-max, 0px) - min(var(--bg-travel),
						var(--parallax-speed) * var(--scroll-max, 0px))))}}@keyframes page-bg-parallax{to{-webkit-transform:translateY(-webkit-calc(0 - min(var(--bg-travel),.35 * 0px)));-moz-transform:translateY(-moz-calc(0 - min(var(--bg-travel),.35 * 0px)));-o-transform:translateY(calc(0px - min(var(--bg-travel),
						.35 * 0px)));transform:translateY(calc(0px - min(var(--bg-travel),
						.35 * 0px)));-webkit-transform:translateY(-webkit-calc(var(--scroll-max,0) - min(var(--bg-travel),var(--parallax-speed) * var(--scroll-max,0px))));-moz-transform:translateY(-moz-calc(var(--scroll-max,0) - min(var(--bg-travel),var(--parallax-speed) * var(--scroll-max,0px))));-o-transform:translateY(calc(var(--scroll-max, 0px) - min(var(--bg-travel),
						var(--parallax-speed) * var(--scroll-max, 0px))));transform:translateY(calc(var(--scroll-max, 0px) - min(var(--bg-travel),
						var(--parallax-speed) * var(--scroll-max, 0px))))}}@supports (animation-timeline:scroll()){.page-bg-fixed,.page-bg-grain{-webkit-animation:page-bg-hold linear both;-moz-animation:page-bg-hold linear both;-o-animation:page-bg-hold linear both;animation:page-bg-hold linear both;animation-timeline:scroll(root block)}.page-bg-photo{-webkit-animation:page-bg-parallax linear both;-moz-animation:page-bg-parallax linear both;-o-animation:page-bg-parallax linear both;animation:page-bg-parallax linear both;animation-timeline:scroll(root block)}}::-moz-selection{background:#8ec4f6;background:hsla(209,85%,76%,.6);background:hsla(var(--accent-hsl),.6)}::selection{background:#8ec4f6;background:hsla(209,85%,76%,.6);background:hsla(var(--accent-hsl),.6)}:focus-visible{outline:1.5px dashed #8ec4f6;outline:1.5px dashed hsl(209,85%,76%);outline:1.5px dashed var(--accent);outline-offset:-1px}.project-card-wrapper:has(>a.project-card:focus-visible){outline:1px dashed #8ec4f6;outline:1px dashed hsl(209,85%,76%);outline:1px dashed var(--accent);outline-offset:-1px;-webkit-transform:scale(1.01) translateY(-2px);-moz-transform:scale(1.01) translateY(-2px);-ms-transform:scale(1.01) translateY(-2px);-o-transform:scale(1.01) translateY(-2px);transform:scale(1.01) translateY(-2px)}.project-card-wrapper:has(>a.project-card:focus-visible) .project-title{-webkit-text-decoration:underline;text-decoration:underline}.project-card-wrapper>a.project-card:focus,.project-card-wrapper>a.project-card:focus-visible{outline:none}body{-ms-interpolation-mode:nearest-neighbor;font-family:var(--font-body),sans-serif;font-size:clamp(15px,.4vw + 14px,17px);font-synthesis:style;image-rendering:-webkit-optimize-contrast;image-rendering:-moz-crisp-edges;image-rendering:-o-pixelated;image-rendering:pixelated;letter-spacing:.01em;line-height:1.6;text-rendering:optimizeLegibility;text-shadow:0 0 .04em #d7e6f4,0 0 .22em #7bbcf4;text-shadow:0 0 .04em hsla(210,55%,90%,.22),0 0 .22em hsla(208,85%,72%,.15);text-shadow:var(--glow-soft);-webkit-font-feature-settings:"kern",common-ligatures contextual,"kern",common-ligatures contextual;-moz-font-feature-settings:"kern",common-ligatures contextual,"kern",common-ligatures contextual;font-feature-settings:"kern",common-ligatures contextual,"kern",common-ligatures contextual;-webkit-font-kerning:normal;font-kerning:normal;-webkit-font-variant-ligatures:common-ligatures contextual;-moz-font-variant-ligatures:common-ligatures contextual;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;font-variant-ligatures:common-ligatures contextual;text-wrap:pretty;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:start;-webkit-justify-content:flex-start;-moz-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;margin:0;margin-left:var(--bg-bleed-l);margin-right:calc(var(--bg-bleed-l)*-1);min-height:100vh;padding:0 max(1.5rem,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(1.5rem,env(safe-area-inset-left));text-rendering:geometricPrecision;-webkit-font-smoothing:none;font-smooth:none;scrollbar-color:hsl(211,20%,65%) hsl(217,22%,6.5%);scrollbar-color:var(--overlay1) var(--base);scrollbar-width:thin;-webkit-perspective:1400px;-moz-perspective:1400px;perspective:1400px;-webkit-perspective-origin:center 30vh;-moz-perspective-origin:center 30vh;perspective-origin:center 30vh}@media (orientation:portrait){body{padding:0;-webkit-box-pack:start;-webkit-justify-content:flex-start;-moz-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}}h1,h2,h3,h4,h5,h6{color:#f6fafd;color:hsl(208,70%,98%);color:var(--supertext);font-family:var(--font-display),sans-serif;font-synthesis:weight style small-caps;font-weight:270}h1{font-size:clamp(2.5rem,3.5vw + 1.75rem,4rem);font-synthesis:style!important;line-height:1.18;margin-bottom:.75rem;margin-top:0;text-shadow:0 0 .05em #d6e6f5,0 0 .22em #8ec4f6,0 0 .75em #51abf6;text-shadow:0 0 .05em hsla(210,60%,90%,.7),0 0 .22em hsla(209,85%,76%,.45),0 0 .75em hsla(207,90%,64%,.32);text-shadow:var(--glow)}h2{font-size:clamp(1.5rem,1.6vw + 1rem,2.2rem);line-height:1.24}h2,h3{margin-bottom:.4em;margin-top:.25em}h3{font-size:clamp(1.2rem,1vw + .95rem,1.6rem);line-height:1.26}h4,h5,h6{margin-bottom:.35em;margin-top:.2em}h4{font-size:clamp(1rem,.9vw + .9rem,1.35rem);line-height:1.3}h5{font-size:clamp(.95rem,.75vw + .85rem,1.15rem);line-height:1.34}h6{font-size:clamp(.9rem,.6vw + .8rem,1.05rem);line-height:1.4}em,strong{font-family:"Geist",var(--font-display),sans-serif!important;opacity:.96}strong{font-weight:670}p{margin-bottom:.5em;margin-top:.5em}subt{color:#9aaabc;color:hsl(212,20%,67%);color:var(--subtext0);font-size:.85em;line-height:1.2}code,pre{background:#101319;background:hsl(218,22%,8%);background:var(--surface0);font-size:.95em;-webkit-border-radius:0;-moz-border-radius:0;border:.075rem solid #1c222c;border:.075rem solid hsl(217,22%,14.5%);border:.075rem solid var(--surface2);border-radius:0;font-family:var(--font-mono),monospace;font-stretch:100%;font-variation-settings:unset;padding:.05em .25em}pre{overflow-x:auto;padding:1rem}pre code{background:transparent;border:none;padding:0}a,a:visited{color:#f6fafd;color:hsl(208,70%,98%);color:var(--supertext);-webkit-text-decoration-color:hsl(213,17%,60%)!important;-moz-text-decoration-color:hsl(213,17%,60%)!important;text-decoration-color:#8897aa!important;text-decoration-color:hsl(213,17%,60%)!important;-webkit-text-decoration-color:var(--subtext1)!important;-moz-text-decoration-color:var(--subtext1)!important;text-decoration-color:var(--subtext1)!important;-webkit-transition:color .25s ease,-webkit-text-decoration-color .25s ease;transition:color .25s ease,-webkit-text-decoration-color .25s ease;-o-transition:color .25s ease,text-decoration-color .25s ease;-moz-transition:color .25s ease,text-decoration-color .25s ease,-moz-text-decoration-color .25s ease;transition:color .25s ease,text-decoration-color .25s ease;transition:color .25s ease,text-decoration-color .25s ease,-webkit-text-decoration-color .25s ease,-moz-text-decoration-color .25s ease}a:visited{-webkit-text-decoration-color:hsl(211,20%,65%)!important;-moz-text-decoration-color:hsl(211,20%,65%)!important;text-decoration-color:#94a5b8!important;text-decoration-color:hsl(211,20%,65%)!important;-webkit-text-decoration-color:var(--overlay1)!important;-moz-text-decoration-color:var(--overlay1)!important;text-decoration-color:var(--overlay1)!important}.tooltip-wrapper:has(.tooltip:hover) a,a:hover{-webkit-text-decoration-color:hsl(209,85%,76%)!important;-moz-text-decoration-color:hsl(209,85%,76%)!important;text-decoration-color:#8ec4f6!important;text-decoration-color:hsl(209,85%,76%)!important;-webkit-text-decoration-color:var(--accent)!important;-moz-text-decoration-color:var(--accent)!important;color:#8ec4f6;color:hsl(209,85%,76%);color:var(--accent);text-decoration-color:var(--accent)!important}a:after{background-color:#8ec4f6;background-color:hsl(209,85%,76%);background-color:var(--accent);content:"";display:inline-block;height:1em;width:1em;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 -960 960 960" width="20px" fill="black"><path d="M144-144v-672h336v72H216v528h528v-264h72v336H144Zm243-192-51-51 357-357H576v-72h240v240h-72v-117L387-336Z"/></svg>');margin-left:.1em;mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 -960 960 960" width="20px" fill="black"><path d="M144-144v-672h336v72H216v528h528v-264h72v336H144Zm243-192-51-51 357-357H576v-72h240v240h-72v-117L387-336Z"/></svg>');vertical-align:middle;-webkit-transform:translateY(-1px);-moz-transform:translateY(-1px);-ms-transform:translateY(-1px);-o-transform:translateY(-1px);transform:translateY(-1px)}a.web-button:after,a[href^="/"]:after{content:"";display:none}app{margin:0 0 1rem;max-width:100%;width:95%}@media (min-width:960px) and (orientation:landscape){app{width:100%}}main{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;min-height:100vh;width:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:start;-webkit-justify-content:flex-start;-moz-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;margin-top:1rem}main>*{width:100%}nav{margin-top:.35rem}nav a{margin-left:1rem}article{-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1}.webbtns>*{-webkit-animation:groove 2s cubic-bezier(.3,0,.7,.9) infinite;-moz-animation:groove 2s cubic-bezier(.3,0,.7,.9) infinite;-o-animation:groove 2s cubic-bezier(.3,0,.7,.9) infinite;animation:groove 2s cubic-bezier(.3,0,.7,.9) infinite}.webbtns :nth-child(2n){-webkit-animation-delay:-1s;-moz-animation-delay:-1s;-o-animation-delay:-1s;animation-delay:-1s}.webbtns.fast>*{-webkit-animation-delay:-1s;-moz-animation-delay:-1s;-o-animation-delay:-1s;animation-delay:-1s}.webbtns.fast :nth-child(2n){-webkit-animation-delay:-2s;-moz-animation-delay:-2s;-o-animation-delay:-2s;animation-delay:-2s}.layout-container{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:0 auto;width:min(90pc,-webkit-calc(100% - 3pc));width:min(90pc,-moz-calc(100% - 3pc));width:min(90pc,calc(100% - 3pc));-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.background-container{background:#080a0d;background:hsla(218,25%,4.5%,.4);background:var(--card-bg);-webkit-backdrop-filter:saturate(160%) brightness(105%);backdrop-filter:saturate(160%) brightness(105%);padding:.7rem}.post-body.background-container{-webkit-backdrop-filter:none;backdrop-filter:none}.top-blur{--strip-w:100vw;--strip-h:8rem;--strip-rx:0.5;--strip-lift:1rem;left:50%;position:absolute;top:-1rem;top:-webkit-calc(var(--strip-lift)*-1);top:-moz-calc(var(--strip-lift)*-1);top:calc(var(--strip-lift)*-1);-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);-o-transform:translateX(-50%);height:9rem;height:-webkit-calc(var(--strip-h) + var(--strip-lift));height:-moz-calc(var(--strip-h) + var(--strip-lift));height:calc(var(--strip-h) + var(--strip-lift));pointer-events:none;transform:translateX(-50%);width:100vw;width:var(--strip-w);z-index:-1}.top-blur-layer{height:-webkit-calc(var(--end)*var(--strip-h) + var(--strip-lift));height:-moz-calc(var(--end)*var(--strip-h) + var(--strip-lift));height:calc(var(--end)*var(--strip-h) + var(--strip-lift));left:0;margin-left:auto;margin-right:auto;position:absolute;right:0;top:0;width:min(100%,-webkit-calc(var(--end)*var(--strip-rx)*200%));width:min(100%,-moz-calc(var(--end)*var(--strip-rx)*200%));width:min(100%,calc(var(--end)*var(--strip-rx)*200%));-webkit-backdrop-filter:blur(var(--blur)) brightness(1.1) saturate(.9) contrast(1.05);backdrop-filter:blur(var(--blur)) brightness(1.1) saturate(.9) contrast(1.05);-webkit-mask-image:-webkit-radial-gradient(50% var(--strip-lift),-webkit-calc(var(--strip-w)*var(--strip-rx)) var(--strip-h),#000 0,#000 -webkit-calc(var(--mid)*100%),transparent -webkit-calc(var(--end)*100%));mask-image:radial-gradient(-moz-calc(var(--strip-w)*var(--strip-rx)) var(--strip-h) at 50% var(--strip-lift),#000 0,#000 -moz-calc(var(--mid)*100%),transparent -moz-calc(var(--end)*100%));mask-image:radial-gradient(calc(var(--strip-w)*var(--strip-rx)) var(--strip-h) at 50% var(--strip-lift),#000 0,#000 calc(var(--mid)*100%),transparent calc(var(--end)*100%));-webkit-mask-size:var(--strip-w) -webkit-calc(var(--strip-h) + var(--strip-lift));mask-size:var(--strip-w) -moz-calc(var(--strip-h) + var(--strip-lift));mask-size:var(--strip-w) calc(var(--strip-h) + var(--strip-lift));-webkit-mask-position:center top;mask-position:center top;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}@media (orientation:portrait){.top-blur{--strip-w:-webkit-calc(100vw + var(--bg-bleed-l) + var(--bg-bleed-r));--strip-w:-moz-calc(100vw + var(--bg-bleed-l) + var(--bg-bleed-r));--strip-w:calc(100vw + var(--bg-bleed-l) + var(--bg-bleed-r));--strip-rx:4;--strip-h:5.5rem;-webkit-transform:translateX(-webkit-calc(-50% + (var(--bg-bleed-r) - var(--bg-bleed-l))/2));-moz-transform:translateX(-moz-calc(-50% + (var(--bg-bleed-r) - var(--bg-bleed-l))/2));-ms-transform:translateX(calc(-50% + (var(--bg-bleed-r) - var(--bg-bleed-l))/2));-o-transform:translateX(calc(-50% + (var(--bg-bleed-r) - var(--bg-bleed-l))/2));transform:translateX(calc(-50% + (var(--bg-bleed-r) - var(--bg-bleed-l))/2))}}.page-header{padding-bottom:.8rem!important;position:relative}.page-header h1{--glow-room:0.8em;font-size:max(3.75rem,min(14vw,8.5rem));line-height:.95;padding:.8em .8em 0;padding:var(--glow-room) var(--glow-room) 0;-webkit-mask-image:-webkit-gradient(linear,left top,left bottom,from(#000),to(transparent));-webkit-mask-image:-webkit-linear-gradient(top,#000 -webkit-calc(.32em + 60%),transparent 100%);mask-image:linear-gradient(to bottom,#000 -moz-calc(.32em + 60%),transparent 100%);mask-image:-webkit-gradient(linear,left top,left bottom,from(#000),to(transparent));mask-image:linear-gradient(to bottom,#000 calc(.32em + 60%),transparent 100%);-webkit-mask-image:-webkit-linear-gradient(top,#000 -webkit-calc(var(--glow-room) + (100% - var(--glow-room))*0.6),transparent 100%);margin:-.8em -.8em 0!important;margin:calc(var(--glow-room)*-1) calc(var(--glow-room)*-1) 0!important;mask-image:linear-gradient(to bottom,#000 -moz-calc(var(--glow-room) + (100% - var(--glow-room))*0.6),transparent 100%);mask-image:linear-gradient(to bottom,#000 calc(var(--glow-room) + (100% - var(--glow-room))*.6),transparent 100%)}.post-title{font-size:max(2.5rem,min(9vw,5rem))!important;padding-top:1.75rem}.page-header .post-title{padding-top:calc(1.75rem + var(--glow-room))}.page-header:not(:has(.post-title)) p{font-size:1.1rem;margin-left:.6rem;margin-top:-.75rem;position:relative}.sidebar{--nav-spread:0rem;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;gap:.5rem;justify-content:space-between;min-height:3.5rem;width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:max(.5rem,env(safe-area-inset-top)) 0 1rem;position:-webkit-sticky;position:sticky;top:0;z-index:10}.sidebar.scrolled{--nav-spread:max(0.5rem,min(2vw,1.25rem))}.sidebar .sidebar-nav,.sidebar .site-title-link{-webkit-transition:-webkit-transform .35s cubic-bezier(.22,1,.36,1);transition:-webkit-transform .35s cubic-bezier(.22,1,.36,1);-o-transition:-o-transform .35s cubic-bezier(.22,1,.36,1);-moz-transition:transform .35s cubic-bezier(.22,1,.36,1),-moz-transform .35s cubic-bezier(.22,1,.36,1);transition:transform .35s cubic-bezier(.22,1,.36,1);transition:transform .35s cubic-bezier(.22,1,.36,1),-webkit-transform .35s cubic-bezier(.22,1,.36,1),-moz-transform .35s cubic-bezier(.22,1,.36,1),-o-transform .35s cubic-bezier(.22,1,.36,1);will-change:transform}.sidebar .site-title-link{-webkit-transform:translateX(-webkit-calc(var(--nav-spread)*-1));-moz-transform:translateX(-moz-calc(var(--nav-spread)*-1));-ms-transform:translateX(calc(var(--nav-spread)*-1));-o-transform:translateX(calc(var(--nav-spread)*-1));transform:translateX(calc(var(--nav-spread)*-1))}.sidebar .sidebar-nav{-webkit-transform:translateX(var(--nav-spread));-moz-transform:translateX(var(--nav-spread));-ms-transform:translateX(var(--nav-spread));-o-transform:translateX(var(--nav-spread));transform:translateX(var(--nav-spread))}.sidebar-nav{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;gap:.4rem;margin:0;min-width:0;overflow-x:auto;scrollbar-width:none}.sidebar-nav::-webkit-scrollbar{display:none}.nav-link{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;color:#8ec4f6!important;color:hsl(209,85%,76%)!important;color:var(--accent)!important;gap:.35rem;-webkit-text-decoration:none!important;font-size:1rem;text-decoration:none!important;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.nav-link svg{fill:currentColor;height:1em;vertical-align:-.125em;width:1em}.nav-link:hover{color:#8897aa!important;color:hsl(213,17%,60%)!important;color:var(--subtext1)!important}.nav-link.active{color:#f6fafd!important;color:hsl(208,70%,98%)!important;color:var(--supertext)!important}.sidebar.compact .nav-home{display:none}@media (pointer:coarse){.sidebar .sidebar-nav .nav-link,.sidebar .site-title-link{position:relative}.sidebar .sidebar-nav .nav-link:after,.sidebar .site-title-link:after{background:none;bottom:-10px;content:"";display:block;height:auto;left:-2px;margin:0;position:absolute;right:-2px;top:-10px;width:auto;-webkit-mask-image:none;mask-image:none}.sidebar .site-title-link:after{bottom:-10px;left:-1pc;right:-8px;top:-10px}.sidebar .sidebar-nav .nav-link:last-child:after{right:-1pc}.sidebar .sidebar-nav{margin-bottom:-10px;margin-right:-1pc;margin-top:-10px;padding-bottom:10px;padding-right:1pc;padding-top:10px}}.sidebar .background-container{background:#080a0d;background:hsla(218,25%,4.5%,.65);background:hsla(var(--crust-hsl),.65);padding:.4rem .7rem;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);-webkit-transition:background .15s ease;-o-transition:background .15s ease;-moz-transition:background .15s ease;transition:background .15s ease}.sidebar .nav-link.background-container:hover{background:#080a0d;background:hsla(218,25%,4.5%,.85);background:hsla(var(--crust-hsl),.85)}.site-title-link{-webkit-text-decoration:none!important;text-decoration:none!important;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.site-title-link,.site-title{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.site-title{text-shadow:none;contain:paint layout;font-size:1.1rem;gap:.5rem;line-height:1.2;margin:0;overflow:hidden;-webkit-font-smoothing:none;font-smooth:none}.site-title span{font-size:1.7rem;z-index:90}.site-title-pfp{display:inline-block;-ms-interpolation-mode:nearest-neighbor;height:3rem;image-rendering:-webkit-optimize-contrast;image-rendering:-moz-crisp-edges;image-rendering:-o-pixelated;image-rendering:pixelated;-webkit-transform:scale(2.7) translateY(-15%) translateX(25%);-moz-transform:scale(2.7) translateY(-15%) translateX(25%);-ms-transform:scale(2.7) translateY(-15%) translateX(25%);-o-transform:scale(2.7) translateY(-15%) translateX(25%);transform:scale(2.7) translateY(-15%) translateX(25%);-webkit-transform-origin:top right;-moz-transform-origin:top right;-ms-transform-origin:top right;-o-transform-origin:top right;transform-origin:top right;width:auto;-webkit-mask-image:-webkit-linear-gradient(10deg,rgba(0,0,0,.95) 60%,transparent 90%);mask-image:linear-gradient(80deg,rgba(0,0,0,.95) 60%,transparent 90%);z-index:84}.main-content{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;max-width:100%;min-width:0;padding-bottom:1rem;view-transition-name:page-content;width:100%}@media (orientation:portrait){.layout-container{max-width:100%;padding:0 1rem;width:100%}.sidebar{--nav-spread:max(0.5rem,min(2vw,1.25rem));gap:.25rem;padding-left:.5rem;padding-right:.5rem;top:1rem}.sidebar-nav{gap:0;-webkit-box-pack:end;-webkit-justify-content:flex-end;-moz-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.sidebar .site-title-link{-webkit-flex-shrink:1;-ms-flex-negative:1;flex-shrink:1;min-width:0}.site-title span{min-width:0;overflow:hidden;-o-text-overflow:ellipsis;font-size:1.6rem;text-overflow:ellipsis;white-space:nowrap}.sidebar .site-title{gap:.3rem;padding-left:.55rem;padding-right:.55rem}.sidebar .sidebar-nav .nav-link{margin-left:.25rem;padding-left:.5rem;padding-right:.5rem}.page-name{display:none}.site-title{font-size:1rem}.site-title-pfp{height:1.5rem}.main-content{padding:.75rem 0}.blog-list{gap:1rem}.blog-item{background:#080a0d;background:hsla(218,25%,4.5%,.4);background:var(--card-bg)}}ul.compact{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:.25rem 0;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;list-style:none;margin:.25rem 0 0;padding:0}ul.compact>li{display:inline;margin:0;white-space:nowrap}ul.compact>li:after{content:"/";margin:0 .75rem;opacity:.6}ul.compact>li:last-child:after{content:"";margin:0}ul.compact a{-webkit-text-decoration:underline;text-decoration:underline;text-underline-offset:2px}li:not(:has(a)){-webkit-transform:translateY(-.25rem);-moz-transform:translateY(-.25rem);-ms-transform:translateY(-.25rem);-o-transform:translateY(-.25rem);transform:translateY(-.25rem)}ul:is(li).compact>span{margin-bottom:0}ul:is(li).compact>a{margin-bottom:0}li:has(a){margin-bottom:0}.tooltip-wrapper{cursor:pointer;display:inline-block;position:relative}.tooltip-wrapper:before{content:"";left:50%;position:absolute;top:100%;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);-o-transform:translateX(-50%);height:1rem;min-width:5rem;pointer-events:none;transform:translateX(-50%);width:100%;z-index:999}.tooltip-wrapper:hover:before{pointer-events:auto}.tooltip-wrapper:has(.tooltip.top):before{bottom:100%;top:auto}.tooltip{left:50%;position:absolute;top:-webkit-calc(100% + .5rem);top:-moz-calc(100% + .5rem);top:calc(100% + .5rem);-webkit-transform:translateX(-50%) translateY(-.25rem);-moz-transform:translateX(-50%) translateY(-.25rem);-ms-transform:translateX(-50%) translateY(-.25rem);-o-transform:translateX(-50%) translateY(-.25rem);background:#101319;background:hsl(218,22%,8%);background:var(--surface0);color:#e9f0f7;color:hsl(209,45%,94%);color:var(--text);padding:.25rem .5rem;transform:translateX(-50%) translateY(-.25rem);-webkit-border-radius:0;-moz-border-radius:0;border:.083rem solid #7a8b9f;border:.083rem solid hsl(212,16%,55%);border:.083rem solid var(--overlay0);border-radius:0;font-size:.875rem;white-space:pre-line;z-index:1000;-webkit-box-shadow:0 2px 8px hsla(209,36%,85%,.35);-moz-box-shadow:0 2px 8px hsla(209,36%,85%,.35);box-shadow:0 2px 8px hsla(209,36%,85%,.35);-webkit-box-shadow:0 2px 8px var(--tooltip-shadow);-moz-box-shadow:0 2px 8px var(--tooltip-shadow);box-shadow:0 2px 8px var(--tooltip-shadow);max-width:40rem;opacity:0;text-align:center;visibility:hidden;width:-webkit-max-content;width:-moz-max-content;width:max-content;-webkit-transition:opacity .15s ease-in-out,visibility .15s ease-in-out,-webkit-transform .15s ease-in-out;transition:opacity .15s ease-in-out,visibility .15s ease-in-out,-webkit-transform .15s ease-in-out;-o-transition:opacity .15s ease-in-out,visibility .15s ease-in-out,-o-transform .15s ease-in-out;-moz-transition:opacity .15s ease-in-out,visibility .15s ease-in-out,transform .15s ease-in-out,-moz-transform .15s ease-in-out;transition:opacity .15s ease-in-out,visibility .15s ease-in-out,transform .15s ease-in-out;transition:opacity .15s ease-in-out,visibility .15s ease-in-out,transform .15s ease-in-out,-webkit-transform .15s ease-in-out,-moz-transform .15s ease-in-out,-o-transform .15s ease-in-out;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;cursor:text;pointer-events:none;user-select:text}.tooltip:after{bottom:100%;content:"";left:50%;position:absolute;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);-o-transform:translateX(-50%);border:.525rem solid transparent;border-bottom:.525rem solid var(--overlay0);transform:translateX(-50%);z-index:1001}.tooltip:before{bottom:-webkit-calc(100% - 1px);bottom:-moz-calc(100% - 1px);bottom:calc(100% - 1px);content:"";left:50%;position:absolute;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);-o-transform:translateX(-50%);border:.5rem solid transparent;border-bottom:.5rem solid var(--surface0);transform:translateX(-50%);z-index:1002}.tooltip-wrapper:hover .tooltip,.tooltip:hover{opacity:1;pointer-events:auto;visibility:visible;-webkit-transform:translateX(-50%) translateY(0);-moz-transform:translateX(-50%) translateY(0);-ms-transform:translateX(-50%) translateY(0);-o-transform:translateX(-50%) translateY(0);transform:translateX(-50%) translateY(0)}.tooltip.top{bottom:-webkit-calc(100% + .5rem);bottom:-moz-calc(100% + .5rem);bottom:calc(100% + .5rem);top:auto;-webkit-transform:translateX(-50%) translateY(.25rem);-moz-transform:translateX(-50%) translateY(.25rem);-ms-transform:translateX(-50%) translateY(.25rem);-o-transform:translateX(-50%) translateY(.25rem);transform:translateX(-50%) translateY(.25rem)}.tooltip.top:after{border-bottom-color:transparent;border-top-color:#7a8b9f;border-top-color:hsl(212,16%,55%);border-top-color:var(--overlay0);bottom:auto;top:100%}.tooltip.top:before{border-bottom-color:transparent;border-top-color:#101319;border-top-color:hsl(218,22%,8%);border-top-color:var(--surface0);bottom:auto;top:-webkit-calc(100% - 1px);top:-moz-calc(100% - 1px);top:calc(100% - 1px)}.tooltip-wrapper:hover .tooltip.top,.tooltip.top:hover{-webkit-transform:translateX(-50%) translateY(0);-moz-transform:translateX(-50%) translateY(0);-ms-transform:translateX(-50%) translateY(0);-o-transform:translateX(-50%) translateY(0);transform:translateX(-50%) translateY(0)}.blog-list{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin:.8rem auto 0;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.blog-item{border-bottom:1px solid hsl(216,20%,19%);border-bottom:1px solid var(--surface3);padding:1rem 1.25rem 1rem .75rem;position:relative}.blog-item h3{font-size:clamp(1.25rem,1.6vw + .5rem,2rem);font-variation-settings:"ELSH" 0!important;margin:0 0 .5rem;text-rendering:optimizeLegibility!important}.blog-item time{color:#9aaabc;color:hsl(212,20%,67%);color:var(--subtext0);display:block;font-size:.9rem}.blog-item.has-cover{overflow:hidden}.blog-item.has-cover:before{background-image:var(--cover-image);bottom:0;content:"";left:0;position:absolute;right:0;top:0;-webkit-background-size:cover;-moz-background-size:cover;-o-background-size:cover;background-position:90% 45%;background-size:cover;opacity:1;z-index:-1;-webkit-mask-image:-webkit-linear-gradient(135deg,rgba(0,0,0,.35) 40%,rgba(0,0,0,.25) 52.5%,transparent 80%);mask-image:linear-gradient(-45deg,rgba(0,0,0,.35) 40%,rgba(0,0,0,.25) 52.5%,transparent 80%)}@supports ((background-image:-webkit-image-set(url("x.webp") type("image/webp"))) or (background-image:image-set(url("x.webp") type("image/webp")))){.blog-item.has-cover:before{background-image:var(--cover-image-set,var(--cover-image))}}.blog-item.has-cover .post-desc,.blog-item.has-cover .tag,.blog-item.has-cover h3,.blog-item.has-cover time{text-shadow:none}@media (prefers-color-scheme:dark){.blog-item.has-cover .post-desc,.blog-item.has-cover .tag,.blog-item.has-cover h3,.blog-item.has-cover time{text-shadow:0 1px 8px rgba(0,0,0,.3)}}.blog-item.has-cover .tag{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.blog-link{-webkit-text-decoration:none!important;display:block;text-decoration:none!important}.blog-list a.blog-link:focus-visible h3,.blog-list a.blog-link:hover h3{color:#f6fafd;color:hsl(208,70%,98%);color:var(--supertext);-webkit-text-decoration:underline;text-decoration:underline;-webkit-text-decoration-color:hsl(213,17%,60%)!important;-moz-text-decoration-color:hsl(213,17%,60%)!important;text-decoration-color:#8897aa!important;text-decoration-color:hsl(213,17%,60%)!important;-webkit-text-decoration-color:var(--subtext1)!important;-moz-text-decoration-color:var(--subtext1)!important;text-decoration-color:var(--subtext1)!important}.blog-link:focus-visible{outline:1px dashed #8ec4f6;outline:1px dashed hsl(209,85%,76%);outline:1px dashed var(--accent);outline-offset:10px}.blog-item:has(.blog-link:focus-visible){background:#8ec4f6;background:hsla(209,85%,76%,.08);background:hsla(var(--accent-hsl),.08)}.blog-item.has-cover:has(.blog-link:focus-visible):before{opacity:.85}.post-desc{color:#9aaabc;color:hsl(212,20%,67%);color:var(--subtext0);margin-top:.5rem}.post-tags{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin-top:.5rem;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;gap:.5rem;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.post-tags .tag{background:#94a5b8;background:hsla(211,20%,65%,.25);background:hsla(var(--overlay1-hsl),.25);color:#f6fafd;color:hsl(208,70%,98%);color:var(--supertext);padding:.15rem .5rem;-webkit-border-radius:999px;-moz-border-radius:999px;border:1px solid #afbfd0;border:1px solid hsla(210,26%,75%,.3);border:1px solid hsla(var(--overlay2-hsl),.3);border-radius:999px;font-size:.8rem}.post-tags .material-symbols{color:#9aaabc;color:hsl(212,20%,67%);color:var(--subtext0)}.post-body{padding:1.25rem!important}article.blog-content{line-height:1.9;margin:0 auto;text-wrap:pretty}article.blog-content .post-title{margin-bottom:.75rem;margin-top:0}article.blog-content h1{margin-top:0}article.blog-content h2{margin-top:2rem}article.blog-content p{margin-bottom:1rem;margin-top:0}article.blog-content .post-body{margin-top:1.5rem}article.blog-content blockquote{border-left:4px solid hsl(211,20%,65%);border-left:4px solid var(--overlay1);color:#8897aa;color:hsl(213,17%,60%);color:var(--subtext1);font-style:italic;font-variation-settings:"slnt" -5;margin-left:0;padding-left:1rem}article.blog-content img{height:auto;width:100%;-ms-interpolation-mode:nearest-neighbor;image-rendering:-webkit-optimize-contrast;image-rendering:-moz-crisp-edges;image-rendering:-o-pixelated;image-rendering:pixelated;text-align:center}article.blog-content .image-item{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:100%}article.blog-content .image-item img{display:block;margin-left:auto;margin-right:auto;max-width:100%;width:auto;width:initial}cap{display:block}cap subt .material-symbols{color:#8897aa;color:hsl(213,17%,60%);color:var(--subtext1);font-size:1.5em;padding-bottom:3px;padding-right:5px;vertical-align:middle}cap subt:not(:has(.material-symbols)){color:#8897aa;color:hsl(213,17%,60%);color:var(--subtext1);padding-left:1.5rem}:root[data-vt-scope=splash] ::view-transition-new(page-content),:root[data-vt-scope=splash] ::view-transition-new(root),:root[data-vt-scope=splash] ::view-transition-old(page-content),:root[data-vt-scope=splash] ::view-transition-old(root){-webkit-animation:none!important;-moz-animation:none!important;-o-animation:none!important;animation:none!important;-webkit-animation-duration:0s!important;-moz-animation-duration:0s!important;-o-animation-duration:0s!important;animation-duration:0s!important;opacity:1!important;-webkit-transform:none!important;-moz-transform:none!important;-ms-transform:none!important;-o-transform:none!important;transform:none!important;-webkit-filter:none!important;filter:none!important;mix-blend-mode:normal!important}:root[data-vt-scope=splash] h1,:root[data-vt-scope=splash] main,:root[data-vt-scope=splash] nav,:root[data-vt-scope=splash] nav *{view-transition-name:none!important}@-webkit-keyframes transition-new{0%{opacity:0;-webkit-transform:translateY(5px);transform:translateY(5px);-webkit-filter:blur(4px);filter:blur(4px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0);-webkit-filter:blur(0);filter:blur(0)}}@-moz-keyframes transition-new{0%{opacity:0;-moz-transform:translateY(5px);filter:blur(4px);transform:translateY(5px)}to{opacity:1;-moz-transform:translateY(0);filter:blur(0);transform:translateY(0)}}@-o-keyframes transition-new{0%{opacity:0;-o-transform:translateY(5px);filter:blur(4px);transform:translateY(5px)}to{opacity:1;-o-transform:translateY(0);filter:blur(0);transform:translateY(0)}}@keyframes transition-new{0%{opacity:0;-webkit-transform:translateY(5px);-moz-transform:translateY(5px);-o-transform:translateY(5px);transform:translateY(5px);-webkit-filter:blur(4px);filter:blur(4px)}to{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);transform:translateY(0);-webkit-filter:blur(0);filter:blur(0)}}@-webkit-keyframes transition-old{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0);-webkit-filter:blur(0);filter:blur(0)}to{opacity:0;-webkit-transform:translateY(-5px);transform:translateY(-5px);-webkit-filter:blur(4px);filter:blur(4px)}}@-moz-keyframes transition-old{0%{opacity:1;-moz-transform:translateY(0);filter:blur(0);transform:translateY(0)}to{opacity:0;-moz-transform:translateY(-5px);filter:blur(4px);transform:translateY(-5px)}}@-o-keyframes transition-old{0%{opacity:1;-o-transform:translateY(0);filter:blur(0);transform:translateY(0)}to{opacity:0;-o-transform:translateY(-5px);filter:blur(4px);transform:translateY(-5px)}}@keyframes transition-old{0%{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);transform:translateY(0);-webkit-filter:blur(0);filter:blur(0)}to{opacity:0;-webkit-transform:translateY(-5px);-moz-transform:translateY(-5px);-o-transform:translateY(-5px);transform:translateY(-5px);-webkit-filter:blur(4px);filter:blur(4px)}}::view-transition-old(splash-message){-webkit-animation:transition-old .35s ease forwards;-moz-animation:transition-old .35s ease forwards;-o-animation:transition-old .35s ease forwards;animation:transition-old .35s ease forwards}::view-transition-new(splash-message){-webkit-animation:transition-new .35s ease forwards;-moz-animation:transition-new .35s ease forwards;-o-animation:transition-new .35s ease forwards;animation:transition-new .35s ease forwards}.livecard{display:block;-webkit-text-decoration:none;color:inherit;text-decoration:none}.livecard,.livecard *{text-wrap:pretty;text-wrap:balance;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}.livecard a:after,.livecard:after{display:none!important}.livecard-header{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;gap:.4rem;margin:0 0 .5rem}.livecard-header,.livecard-icon{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.livecard-icon{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;color:var(--supertext);font-size:1.2rem;justify-content:center;line-height:1}.livecard-icon,.livecard-platform{color:#f6fafd;color:hsl(208,70%,98%)}.livecard-platform{color:var(--supertext);font-family:var(--font-display),sans-serif;font-size:1.05rem}.livecard-topbtn{-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;color:#9aaabc!important;color:hsl(212,20%,67%)!important;color:var(--subtext0)!important;justify-content:center;-webkit-text-decoration:none!important;font-size:1.2rem;line-height:1;text-decoration:none!important}.livecard-topbtn,.livecard-refresh{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.livecard-refresh{background:none;border:none;color:#9aaabc;color:hsl(212,20%,67%);color:var(--subtext0);cursor:pointer;margin-left:auto;padding:.2rem;font:inherit}.livecard-header>:not(.livecard-icon):not(.livecard-platform):not(.livecard-stat)+.livecard-refresh{margin-left:.4rem}.livecard-refresh:hover{color:#e9f0f7;color:hsl(209,45%,94%);color:var(--text)}.livecard-refresh.refreshing{cursor:progress;opacity:.5}.livecard-badge,.livecard-stat{color:#8897aa;color:hsl(213,17%,60%);color:var(--subtext1);font-size:.75rem;letter-spacing:.05em}.livecard-badge{margin-left:auto;text-transform:uppercase}.livecard-status{color:#6f7d90;color:hsl(215,13%,50%);color:var(--subtext2);font-size:.85rem;margin:auto;text-align:center}@-webkit-keyframes livecard-fade-in{0%{opacity:0;-webkit-filter:blur(8px);filter:blur(8px)}to{opacity:1;-webkit-filter:blur(0);filter:blur(0)}}@-moz-keyframes livecard-fade-in{0%{filter:blur(8px);opacity:0}to{filter:blur(0);opacity:1}}@-o-keyframes livecard-fade-in{0%{filter:blur(8px);opacity:0}to{filter:blur(0);opacity:1}}@keyframes livecard-fade-in{0%{opacity:0;-webkit-filter:blur(8px);filter:blur(8px)}to{opacity:1;-webkit-filter:blur(0);filter:blur(0)}}@-webkit-keyframes livecard-fade-in-plain{0%{opacity:0}to{opacity:1}}@-moz-keyframes livecard-fade-in-plain{0%{opacity:0}to{opacity:1}}@-o-keyframes livecard-fade-in-plain{0%{opacity:0}to{opacity:1}}@keyframes livecard-fade-in-plain{0%{opacity:0}to{opacity:1}}@-webkit-keyframes masto-fade-in{0%{opacity:0;-webkit-filter:blur(8px);filter:blur(8px)}to{opacity:.67;-webkit-filter:blur(0);filter:blur(0)}}@-moz-keyframes masto-fade-in{0%{filter:blur(8px);opacity:0}to{filter:blur(0);opacity:.67}}@-o-keyframes masto-fade-in{0%{filter:blur(8px);opacity:0}to{filter:blur(0);opacity:.67}}@keyframes masto-fade-in{0%{opacity:0;-webkit-filter:blur(8px);filter:blur(8px)}to{opacity:.67;-webkit-filter:blur(0);filter:blur(0)}}@-webkit-keyframes lastfm-bleed-fade-in{0%{opacity:0;-webkit-filter:brightness(.75) contrast(1.1) saturate(1.3) blur(8px);filter:brightness(.75) contrast(1.1) saturate(1.3) blur(8px)}to{opacity:1;-webkit-filter:brightness(.75) contrast(1.1) saturate(1.3) blur(.8px);filter:brightness(.75) contrast(1.1) saturate(1.3) blur(.8px)}}@-moz-keyframes lastfm-bleed-fade-in{0%{filter:brightness(.75) contrast(1.1) saturate(1.3) blur(8px);opacity:0}to{filter:brightness(.75) contrast(1.1) saturate(1.3) blur(.8px);opacity:1}}@-o-keyframes lastfm-bleed-fade-in{0%{filter:brightness(.75) contrast(1.1) saturate(1.3) blur(8px);opacity:0}to{filter:brightness(.75) contrast(1.1) saturate(1.3) blur(.8px);opacity:1}}@keyframes lastfm-bleed-fade-in{0%{opacity:0;-webkit-filter:brightness(.75) contrast(1.1) saturate(1.3) blur(8px);filter:brightness(.75) contrast(1.1) saturate(1.3) blur(8px)}to{opacity:1;-webkit-filter:brightness(.75) contrast(1.1) saturate(1.3) blur(.8px);filter:brightness(.75) contrast(1.1) saturate(1.3) blur(.8px)}}.livecard.is-initial .lastfm-track>.lastfm-art,.livecard.is-initial .lastfm-track>.lastfm-meta,.livecard.is-initial>.post{-webkit-animation:livecard-fade-in .35s ease-out;-moz-animation:livecard-fade-in .35s ease-out;-o-animation:livecard-fade-in .35s ease-out;animation:livecard-fade-in .35s ease-out}.livecard.is-initial>.fedi-post-bleed{-webkit-animation:masto-fade-in .9s ease-out;-moz-animation:masto-fade-in .9s ease-out;-o-animation:masto-fade-in .9s ease-out;animation:masto-fade-in .9s ease-out}.livecard.is-initial .lastfm-art-bleed{-webkit-animation:lastfm-bleed-fade-in .9s ease-out;-moz-animation:lastfm-bleed-fade-in .9s ease-out;-o-animation:lastfm-bleed-fade-in .9s ease-out;animation:lastfm-bleed-fade-in .9s ease-out}.livecard.is-initial .livecard-header .livecard-stat{-webkit-animation:livecard-fade-in-plain .18s ease-out;-moz-animation:livecard-fade-in-plain .18s ease-out;-o-animation:livecard-fade-in-plain .18s ease-out;animation:livecard-fade-in-plain .18s ease-out}@-webkit-keyframes livecard-refresh-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(2turn);transform:rotate(2turn)}}@-moz-keyframes livecard-refresh-spin{0%{-moz-transform:rotate(0);transform:rotate(0)}to{-moz-transform:rotate(2turn);transform:rotate(2turn)}}@-o-keyframes livecard-refresh-spin{0%{-o-transform:rotate(0);transform:rotate(0)}to{-o-transform:rotate(2turn);transform:rotate(2turn)}}@keyframes livecard-refresh-spin{0%{-webkit-transform:rotate(0);-moz-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(2turn);-moz-transform:rotate(2turn);-o-transform:rotate(2turn);transform:rotate(2turn)}}.livecard-refresh.spin .material-symbols{-webkit-animation:livecard-refresh-spin .7s cubic-bezier(.75,-.5,.25,1.5);-moz-animation:livecard-refresh-spin .7s cubic-bezier(.75,-.5,.25,1.5);-o-animation:livecard-refresh-spin .7s cubic-bezier(.75,-.5,.25,1.5);animation:livecard-refresh-spin .7s cubic-bezier(.75,-.5,.25,1.5);-webkit-transform-origin:50% 51%;-moz-transform-origin:50% 51%;-ms-transform-origin:50% 51%;-o-transform-origin:50% 51%;transform-origin:50% 51%}img{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.project-card *{-webkit-text-decoration:none!important;text-decoration:none!important}:root{--ctp-mauve:#cba6f7;--ctp-red:#f38ba8;--ctp-peach:#fab387;--ctp-yellow:#f9e2af;--ctp-green:#a6e3a1;--ctp-teal:#94e2d5;--ctp-blue:#89b4fa;--ctp-csurface2:#585b70}.pl-c{color:#6f7d90;color:hsl(215,13%,50%);color:var(--subtext2);font-style:italic}.pl-c1,.pl-s .pl-v,.pl-e,.pl-en{color:#89b4fa;color:var(--ctp-blue)}.pl-s .pl-s1,.pl-smi{color:#fab387;color:var(--ctp-peach)}.pl-ent{color:#89b4fa;color:var(--ctp-blue)}.pl-k{color:#cba6f7;color:var(--ctp-mauve)}.pl-pds,.pl-s,.pl-s .pl-pse .pl-s1,.pl-sr,.pl-sr .pl-cce,.pl-sr .pl-sra,.pl-sr .pl-sre{color:#a6e3a1;color:var(--ctp-green)}.pl-smw,.pl-v{color:#fab387;color:var(--ctp-peach)}.pl-bu,.pl-ii{color:#f38ba8;color:var(--ctp-red)}.pl-ii{background:rgba(243,139,168,.15)}.pl-c2{background:rgba(243,139,168,.5);color:#e9f0f7;color:hsl(209,45%,94%);color:var(--text)}.pl-sr .pl-cce{color:#94e2d5;color:var(--ctp-teal);font-weight:bold}.pl-ml{color:#f9e2af;color:var(--ctp-yellow)}.pl-mh,.pl-mh .pl-en,.pl-ms{color:#f38ba8;color:var(--ctp-red);font-weight:bold}.pl-mi{font-style:italic}.pl-mi,.pl-mb{color:#f9e2af;color:var(--ctp-yellow)}.pl-mb{font-weight:bold}.pl-md{background:rgba(243,139,168,.25);color:var(--text)}.pl-md,.pl-mi1{color:#e9f0f7;color:hsl(209,45%,94%)}.pl-mi1{background:rgba(166,227,161,.25);color:var(--text)}.pl-mc{background:rgba(249,226,175,.25);color:var(--text)}.pl-mc,.pl-mi2{color:#e9f0f7;color:hsl(209,45%,94%)}.pl-mi2{background:rgba(137,180,250,.25);color:var(--text)}.pl-mdr{color:#cba6f7;color:var(--ctp-mauve);font-weight:bold}.pl-ba{color:#6f7d90;color:hsl(215,13%,50%);color:var(--subtext2)}.pl-sg{color:#585b70;color:var(--ctp-csurface2)}.pl-corl{-webkit-text-decoration:underline;color:#89b4fa;color:var(--ctp-blue);text-decoration:underline}@media (prefers-reduced-motion:reduce){*{-webkit-transition:none!important;-o-transition:none!important;-moz-transition:none!important;transition:none!important;-webkit-animation:none!important;-moz-animation:none!important;-o-animation:none!important;animation:none!important;scroll-behavior:auto!important}@supports (animation-timeline:scroll()){.page-bg-fixed,.page-bg-grain,.page-bg-photo{-webkit-animation:page-bg-hold linear both!important;-moz-animation:page-bg-hold linear both!important;-o-animation:page-bg-hold linear both!important;animation:page-bg-hold linear both!important;animation-timeline:scroll(root block)!important}}.webbtns,.webbtns *{-webkit-animation:none;-moz-animation:none;-o-animation:none;animation:none}}