:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg-color:var(--lightningcss-light,oklch(92.8% 0 0))var(--lightningcss-dark,oklch(21.78% 0 0));--text-color:var(--lightningcss-light,oklch(22.25% .0141 274.5))var(--lightningcss-dark,oklch(89.93% .0164 262.75));--border-color:var(--lightningcss-light,oklch(80% 0 0))var(--lightningcss-dark,oklch(30% 0 0));--shadow-color:var(--lightningcss-light,oklch(0% 0 0/.3))var(--lightningcss-dark,oklch(100% 0 0/.3));--overlay-color:var(--lightningcss-light,oklch(100% 0 0/.9))var(--lightningcss-dark,oklch(20% 0 0/.9));--link-color:var(--lightningcss-light,oklch(42.54% .1269 299.1))var(--lightningcss-dark,oklch(72.36% .0454 298.54));--code-color:var(--lightningcss-light,oklch(39.07% .0915 253.74))var(--lightningcss-dark,oklch(72.04% .0912 253.56));--emphasis-color:var(--lightningcss-light,oklch(40% .1359 19.2))var(--lightningcss-dark,oklch(75.38% .1015 17.52));--abbr-color:var(--lightningcss-light,oklch(38.35% .0678 207.03))var(--lightningcss-dark,oklch(71.95% .0684 206.76));--bg-opacity:.2;--aws-badge-color:oklch(77.2% .1738 64.55);--nav-height:3rem}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*{box-sizing:border-box;letter-spacing:-.031rem;text-underline-offset:.188rem;margin:0;padding:0;font-family:SF Mono,IBM Plex Mono,Courier,monospace}html,body{background-color:var(--bg-color);background-image:radial-gradient(circle at center, var(--text-color) .0625rem, transparent .03125rem);background-position:0 0;background-size:1.25rem 1.25rem}body{color:var(--text-color);min-height:100dvh;margin:0;overflow:hidden}:is(h1,h2,h3,h4,h5,h6){text-wrap:pretty}.terminal-header h2{letter-spacing:-.04rem;font-size:90%}.panel-toggle{color:inherit;font:inherit;letter-spacing:inherit;cursor:inherit;text-align:left;background:0 0;border:none;padding:0}.terminal-content h3{font-size:120%}abbr{color:var(--abbr-color)}p{text-wrap:pretty;margin-top:0;display:inline-block}a{color:var(--link-color);padding:0 .125rem;text-decoration:none;transition:background-color .3s,color .3s;display:inline-block}a:hover{background-color:var(--link-color);color:var(--bg-color)}abbr code{-webkit-text-decoration:inherit;text-decoration:inherit}code,pre{color:var(--code-color);display:inline-block}code a{color:var(--code-color);text-decoration:underline}code a:hover{background-color:var(--code-color);color:var(--bg-color);text-decoration:none}strong{color:var(--emphasis-color);display:inline-block}:is(a,button,summary):focus-visible{outline-offset:.25rem;outline:.125rem dashed}[hidden]{display:none!important}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:.0625rem;height:.0625rem;margin:-.0625rem;padding:0;position:absolute;overflow:hidden}section{white-space:pre-line;color:var(--text-color);cursor:default;flex-direction:column;align-content:center;padding:1.25rem 2rem 2rem;font-size:.875rem;line-height:1.6;display:flex}section ul{margin:0;padding-left:1.25rem}section ul li{margin-top:-.4rem;margin-bottom:-.4rem}section ul li::marker{content:"* "}section ul *{font-size:105%}details{padding:0}details[open]>summary{margin:0 0 -1.5rem;padding:0}details>ul{margin:0 0 -2rem;padding-left:1rem;line-height:1.2}details li{margin:.2rem 0}aside{flex-direction:column;display:flex}@media screen and (width>=31.25rem){abbr[title]:hover:after,abbr[title]:focus:after{content:attr(title);width:auto;white-space:preserve nowrap;z-index:100;background-color:var(--text-color);color:var(--bg-color);box-shadow:.0625rem .0625rem .3125rem 0rem var(--shadow-color);border-radius:.25rem;margin-top:.3125rem;padding:.125rem .25rem;font-size:.75rem;position:absolute;top:100%;left:50%;transform:translate(-40%)}}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;position:relative}.panel{will-change:transform;width:45%;max-width:37.5rem;height:auto;transition:width .3s,transform .3s;position:absolute;transform:translate(0,0)}.panel.dragging{will-change:transform}.terminal-window{border:.125rem solid var(--border-color);background-color:var(--bg-color);-webkit-user-select:none;user-select:none;flex-direction:column;width:100%;transition:border-color .3s,box-shadow .3s;display:flex;position:relative}.terminal-header{background-color:var(--text-color);color:var(--bg-color);cursor:default;justify-content:space-between;align-items:center;padding:.4rem .8rem;display:flex}.terminal-content{flex-direction:column;flex:1;justify-content:center;align-items:center;padding:1.25rem;display:flex}.panel.active:not(#preview) .terminal-header{cursor:move;touch-action:none}.panel.active .terminal-content{-webkit-user-select:text;user-select:text}.active .terminal-window{border:.125rem solid var(--text-color);box-shadow:.5rem .5rem 0 var(--shadow-color)}.panel.dragging{transition:none!important}.panel.dragging .terminal-window{-webkit-user-select:none;user-select:none}.terminal-window:after{content:"";background-color:var(--overlay-color);opacity:1;pointer-events:none;transition:opacity .3s;position:absolute;inset:0}.panel:not(.active):hover .terminal-window:after{opacity:.7}.active .terminal-window:after{opacity:0}#welcome{z-index:5;width:100%;max-width:37.5rem;top:calc(40vh - 5.688rem);left:25vw}#about{z-index:3;max-width:37.5rem;top:calc(15vh - 5.688rem);left:1.5vw}#about .terminal-content{justify-content:space-between;min-height:20rem}#projects{z-index:2;max-width:fit-content;top:calc(12vh - 5.688rem);right:1.5vw}#skills{z-index:4;max-width:fit-content;top:calc(45vh - 5.688rem);left:5vw}#refs{z-index:1;max-width:fit-content;top:calc(86vh - 5.688rem);right:2vw}sup{cursor:pointer;transition:background-color .3s,color .3s}sup a,sup a:hover{color:inherit;background-color:#0000;padding:0}sup.highlight{background-color:var(--text-color);color:var(--bg-color);border-radius:.125rem;padding:0 .25rem}#refs sup{margin-right:.5rem}#preview{top:calc(50% + var(--nav-height) / 2);background:var(--bg-color);width:90%;max-width:75rem;height:80dvh;position:fixed;left:50%;transform:translate(-50%,-50%)}#preview::backdrop{background-color:var(--shadow-color);-webkit-backdrop-filter:blur(.1875rem);backdrop-filter:blur(.1875rem)}#preview .terminal-window{flex-direction:column;height:100%;margin:0;display:flex}#preview .terminal-content{flex-direction:column;flex:1;justify-content:center;align-items:center;padding:1rem;display:flex;overflow:hidden}#preview .preview-container{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.5rem;width:100%;max-width:100rem;height:100%;margin:0 auto;display:flex;overflow:hidden}#preview iframe{width:inherit;height:inherit;background:var(--bg-color);border:none;flex:auto;min-height:0}#preview .preview-external-link{flex:none}#preview img{object-fit:contain;object-position:center;width:auto;max-width:100%;height:auto;max-height:100%;display:block}#preview.image-preview{width:fit-content;max-width:min(90vw,75rem);height:fit-content;max-height:80dvh}#preview.image-preview .terminal-window{width:fit-content;max-width:100%;height:auto}#preview.image-preview .terminal-content,#preview.image-preview .preview-container{flex:0 auto;width:fit-content;max-width:100%;height:fit-content}#preview.image-preview .terminal-content{max-height:calc(80dvh - 2rem);overflow:auto}#preview.image-preview img{max-width:calc(90vw - 2rem);max-height:calc(80dvh - 5rem)}@media (width<=75rem){.panel.active{width:75%}}@media (width<=48rem){.panel.active{width:90%}}@media (width<=31.25rem){body{overflow-y:auto}.panel:not(#preview) .terminal-content{justify-content:flex-start;align-items:stretch;padding:.75rem 1.25rem 1.25rem}section h4{padding-bottom:1.25rem}section ul *{font-size:96%}.panel:not(#preview){margin-bottom:2rem;width:100%!important;max-width:100%!important;height:auto!important;position:relative!important;inset:0!important;transform:none!important}.panel:not(#preview) .terminal-window,.active.panel:not(#preview) .terminal-window{box-shadow:none;background:0 0;border:none}.panel:not(#preview) .terminal-window:after{display:none}.panel:not(#preview) .terminal-header{color:var(--text-color);cursor:default;border-bottom:.125rem solid var(--border-color);background:0 0;flex-direction:row;justify-content:space-between;padding:0 0 .75rem}.panel:not(#preview) .terminal-header h2{font-size:120%}#preview{margin-top:var(--nav-height);height:calc(100vh - var(--nav-height));height:calc(100dvh - var(--nav-height));position:fixed;inset:0;transform:none;width:100%!important}#preview.image-preview{top:calc(50% + var(--nav-height) / 2);height:fit-content;max-height:calc(100dvh - var(--nav-height) - 2rem);margin-top:0;bottom:auto;left:50%;right:auto;width:fit-content!important;max-width:calc(100vw - 2rem)!important;transform:translate(-50%,-50%)!important}#preview.image-preview img{max-width:calc(100vw - 4rem);max-height:calc(100dvh - var(--nav-height) - 6rem)}#preview.image-preview .terminal-content{min-height:0}#preview::backdrop{background-color:var(--shadow-color);-webkit-backdrop-filter:blur(.125rem);backdrop-filter:blur(.125rem)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2"),url(./ibm-plex-mono-latin-400-normal.CvHOgSBP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:italic;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-latin-400-italic.BqAiT5Ww.woff2)format("woff2"),url(./ibm-plex-mono-latin-400-italic.66oory27.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:700;src:url(./ibm-plex-mono-latin-700-normal.7sUh57Bg.woff2)format("woff2"),url(./ibm-plex-mono-latin-700-normal.CNHXzs6v.woff)format("woff")}button.svelte-1cmi4dh{color:var(--bg-color);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:.5rem;font-size:1.1rem;line-height:1;transition:background-color .3s;display:flex}button.svelte-1cmi4dh:hover{background-color:var(--bg-color);color:var(--text-color);opacity:.9}@media (width<=31.25rem){button.svelte-1cmi4dh{flex-shrink:0;min-width:2.75rem;min-height:2.75rem}}nav.svelte-12qhfyh{background-color:var(--text-color);z-index:1000;width:100%;height:var(--nav-height);justify-content:space-between;align-items:center;padding:0 2rem;display:flex;position:fixed;top:0}nav.svelte-12qhfyh ul:where(.svelte-12qhfyh){margin:0;list-style:none;display:flex}nav.svelte-12qhfyh ul:where(.svelte-12qhfyh) li:where(.svelte-12qhfyh){margin:0 .5rem}nav.svelte-12qhfyh ul:where(.svelte-12qhfyh) li:where(.svelte-12qhfyh) a:where(.svelte-12qhfyh){color:var(--bg-color);align-items:center;padding:.25rem .75rem;font-size:1rem;display:flex}nav.svelte-12qhfyh ul:where(.svelte-12qhfyh) li:where(.svelte-12qhfyh) a:where(.svelte-12qhfyh):hover,nav.svelte-12qhfyh ul:where(.svelte-12qhfyh) li:where(.svelte-12qhfyh) a:where(.svelte-12qhfyh).active-link,nav.svelte-12qhfyh ul:where(.svelte-12qhfyh) li:where(.svelte-12qhfyh) a[aria-current=page]:where(.svelte-12qhfyh){background-color:var(--bg-color);color:var(--text-color)}nav.svelte-12qhfyh ul:where(.svelte-12qhfyh) li:where(.svelte-12qhfyh) a:where(.svelte-12qhfyh):hover{opacity:.9}nav.svelte-12qhfyh ul:where(.svelte-12qhfyh) li:where(.svelte-12qhfyh) a:where(.svelte-12qhfyh).active-link:hover{opacity:.8}@media (width<=31.25rem){nav.blog-page-nav.svelte-12qhfyh{height:var(--nav-height);flex-direction:row;padding:.5rem 1rem}nav.blog-page-nav.svelte-12qhfyh ul:where(.svelte-12qhfyh){padding:0}nav.blog-page-nav.svelte-12qhfyh ul:where(.svelte-12qhfyh) li:where(.svelte-12qhfyh){margin:0}nav.svelte-12qhfyh{gap:.75rem;padding:0 .5rem}nav.svelte-12qhfyh ul:where(.svelte-12qhfyh) li:where(.svelte-12qhfyh):has(a[data-panel]:where(.svelte-12qhfyh)){display:none}nav.svelte-12qhfyh ul:where(.svelte-12qhfyh){-webkit-overflow-scrolling:touch;flex-wrap:nowrap;flex:auto;justify-content:flex-start;min-width:0;overflow-x:auto}nav.svelte-12qhfyh ul:where(.svelte-12qhfyh) li:where(.svelte-12qhfyh){flex:none;margin:.25rem}nav.svelte-12qhfyh ul:where(.svelte-12qhfyh) li:where(.svelte-12qhfyh) a:where(.svelte-12qhfyh){min-height:2.75rem;padding:.5rem}}
