i[data-v-160c9599]{margin:0 3px}h1[data-v-6f07e27d],h2[data-v-6f07e27d]{font-weight:400}ul[data-v-6f07e27d]{list-style-type:none;padding:0}li[data-v-6f07e27d]{display:inline-block;margin:0 10px}.hello[data-v-6f07e27d]{display:block}.hero[data-v-6f07e27d]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(88svh - var(--nav-height));padding:clamp(24px,5vw,64px) clamp(12px,4vw,48px) 0}.hero-kicker[data-v-6f07e27d]{font-family:var(--font-mono);font-size:var(--step--1);color:var(--ink-dim);margin:0 0 10px;overflow-wrap:anywhere}.hero-ok[data-v-6f07e27d]{color:#3fb950}.hero-title[data-v-6f07e27d]{font-family:var(--font-mono);font-size:var(--step-5);line-height:1.05;font-weight:700;margin:.1em auto .4em;display:inline-block;padding:.12em .4em;color:#fff;background:linear-gradient(120deg,var(--NCSU_Reynolds_Red),var(--NCSU_Pyroman_Flame));box-shadow:10px 10px 0 var(--accent-shadow)}.hero-body[data-v-6f07e27d]{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:clamp(16px,4vw,48px);max-width:1100px}.hero-text[data-v-6f07e27d]{min-width:min(50vw,480px);max-width:620px}.hero-text h2[data-v-6f07e27d]{font-size:var(--step-3);margin:0 0 .4em}.hero-stats[data-v-6f07e27d]{max-width:min(100%,460px);height:auto}.hero-photo[data-v-6f07e27d]{max-width:min(60vw,380px);max-height:45vh;height:auto;object-fit:contain;border:1px solid var(--line);box-shadow:12px 12px 0 var(--accent-shadow)}.site-section[data-v-6f07e27d]{display:block;max-width:1200px;margin:0 auto;padding:clamp(28px,6vw,72px) clamp(8px,3vw,32px) 0}.displayArea[data-v-6f07e27d]{display:block}.introArea[data-v-6f07e27d]{display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:clamp(14px,2.5vw,28px);margin-top:clamp(16px,3vw,32px)}.introAreaHeader[data-v-6f07e27d]{margin:0;font-family:var(--font-mono);font-size:var(--step-3);font-weight:700;letter-spacing:.02em}.introAreaHeader[data-v-6f07e27d]:before{content:attr(data-snap);display:block;font-size:var(--step--1);font-weight:400;color:var(--ink-dim);margin-bottom:4px}.introAreaHeader[data-v-6f07e27d]:after{content:"";display:block;width:72px;height:3px;margin:14px auto 0;background:linear-gradient(90deg,var(--NCSU_Wolfpack_Red),var(--NCSU_Pyroman_Flame))}.skillbox[data-v-6f07e27d]{margin:0;padding:clamp(14px,2.5vw,26px);border:1px solid var(--line);background:var(--panel);transition:border-color .25s ease,box-shadow .25s ease}@media(hover:hover){.skillbox[data-v-6f07e27d]:hover{border-color:var(--accent-shadow);box-shadow:6px 6px 0 var(--accent-shadow)}}.skillbox h3[data-v-6f07e27d]{font-family:var(--font-mono);font-size:var(--step-2);font-weight:700;margin:0 0 10px}.skillbox h3[data-v-6f07e27d]:before{content:"## ";color:var(--accent-text)}@supports (animation-timeline: view()){@media(prefers-reduced-motion:no-preference){.skillbox[data-v-6f07e27d]{animation:card-in-6f07e27d linear both;animation-timeline:view();animation-range:entry 0% entry 60%}}}@keyframes card-in-6f07e27d{0%{opacity:.15;transform:translateY(32px) scale(.97)}to{opacity:1;transform:none}}.devicon .backgroundbox[data-v-6f07e27d]{--insetwidth: 5px;background:#fff;border-radius:var(--insetwidth);margin:0 var(--sidemargin);filter:var(--filter-dropshadow)}.devicon .backgroundbox[data-v-6f07e27d]>*{font-size:calc(1em - var(--insetwidth));margin:3px 0;filter:var(--filter-dropshadow)}.devicon[data-v-6f07e27d]{--fontsize: 4em;--blockwidth: calc(1em + var(--sidemargin) * 2);display:flex;justify-content:center;font-size:var(--fontsize);filter:var(--filter-dropshadow);flex-wrap:wrap;max-width:calc(var(--blockwidth) * 4);color:#fff}.devicon[data-v-6f07e27d]>*,.devicon svg[data-v-6f07e27d],.devicon img[data-v-6f07e27d]{height:1em;width:1em;margin:0px var(--sidemargin) calc(2*var(--sidemargin));justify-content:center;display:inline-grid;object-fit:scale-down}.tooltip[data-v-6f07e27d]{--tooltipFontSize: 15px}.tooltip p[data-v-6f07e27d]{font-size:var(--tooltipFontSize);font-family:var(--font-mono);color:var(--ink);margin-top:5px;margin-bottom:0}.tooltip[data-v-6f07e27d] *{font-size:calc(1em - var(--tooltipFontSize));display:block}.tooltip>a[data-v-6f07e27d]{width:1em;font-size:1em}.tooltip svg[data-v-6f07e27d],.tooltip img[data-v-6f07e27d]{margin-bottom:0}.about-text[data-v-6f07e27d]{max-width:640px;text-align:left;line-height:1.65}.about-text p[data-v-6f07e27d]{margin-bottom:10px}.about-cta[data-v-6f07e27d]{font-family:var(--font-mono);font-size:var(--step--1);color:var(--ink-dim);border-top:1px solid var(--line);padding-top:10px;margin-top:14px}.st0[data-v-6f07e27d]{fill:#75aadb}.st1[data-v-6f07e27d]{fill:#4d4d4d}.st2[data-v-6f07e27d]{fill:#fff}.st3[data-v-6f07e27d]{fill:url(#SVGID_1_)}.st4[data-v-6f07e27d]{fill:url(#SVGID_2_)}.st5[data-v-6f07e27d]{fill:url(#SVGID_3_)}.st6[data-v-6f07e27d]{fill:url(#SVGID_4_)}.st7[data-v-6f07e27d]{fill:url(#SVGID_5_)}.st8[data-v-6f07e27d]{fill:url(#SVGID_6_)}.st9[data-v-6f07e27d]{fill:url(#SVGID_7_)}.st10[data-v-6f07e27d]{fill:url(#SVGID_8_)}.st11[data-v-6f07e27d]{fill:url(#SVGID_9_)}.st12[data-v-6f07e27d]{fill:url(#SVGID_10_)}.st13[data-v-6f07e27d]{opacity:.18;fill:url(#SVGID_11_)}.st14[data-v-6f07e27d]{opacity:.3}.bucket-list[data-v-6f07e27d]{max-width:400px;text-align:left}.goals-list[data-v-6f07e27d]{list-style:none;padding:0}.goals-list li[data-v-6f07e27d]{display:block;margin:0;padding:5px 0;color:var(--ink)}.goals-list li[data-v-6f07e27d]:before{content:"🟩 "}.goals-list li.completed[data-v-6f07e27d]{text-decoration:line-through;opacity:.7}.goals-list li.completed[data-v-6f07e27d]:before{content:"✅ "}.cls-1[data-v-6f07e27d]{fill:url(#radial-gradient)}.cls-2[data-v-6f07e27d]{fill:none}.cls-3[data-v-6f07e27d]{fill:url(#radial-gradient-2)}.cls-4[data-v-6f07e27d]{fill:url(#radial-gradient-3)}.cls-5[data-v-6f07e27d]{clip-path:url(#clip-path)}.cls-6[data-v-6f07e27d]{fill:url(#radial-gradient-5)}.cls-7[data-v-6f07e27d]{clip-path:url(#clip-path-2)}.cls-8[data-v-6f07e27d]{fill:url(#radial-gradient-6)}.cls-9[data-v-6f07e27d]{fill:url(#radial-gradient-7)}.pay-icon[data-v-6f07e27d]{font-size:1em;font-weight:700;color:#3d95ce;display:block}.pay-icon--venmo[data-v-6f07e27d]{color:#3d95ce}.pay-icon--cashapp[data-v-6f07e27d]{color:#00d632}.pay-icon--paypal[data-v-6f07e27d]{color:#003087}.pay-icon--zelle[data-v-6f07e27d]{color:#6d1ed4}.pay-links[data-v-6f07e27d]{font-size:4em}@property --hue{syntax: "<number>"; inherits: true; initial-value: 25;}:root{--NCSU_Wolfpack_Red: #CC0000;--NCSU_Reynolds_Red: #990000;--NCSU_Pyroman_Flame: #D14905;--NCSU_Hunt_Yellow: #FAC800;--NCSU_Genomic_Green: #6F7D1C;--NCSU_Carmichael_Aqua: #008473;--NCSU_Innovation_Blue: #427E93;--NCSU_Bio-Indigo: #4156A1;--LINE_Green: #06c755;--filter-dropshadow: drop-shadow(1.1px 1.1px 1.1px grey);--sidemargin: 15px;--ink: #ded9d6;--ink-dim: #9c948f;--line: rgba(255, 255, 255, .12);--accent-text: #ff4d42;--accent-shadow: rgba(204, 0, 0, .55);--panel: rgba(24, 16, 15, .55);--font-mono: ui-monospace, "SF Mono", "Cascadia Code", "JetBrains Mono", Menlo, Consolas, monospace;--font-body: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--step-5: clamp(2.6rem, 1.6rem + 5vw, 5.5rem);--step-3: clamp(1.5rem, 1.15rem + 1.8vw, 2.4rem);--step-2: clamp(1.2rem, 1.05rem + .8vw, 1.6rem);--step-0: clamp(1rem, .95rem + .3vw, 1.125rem);--step--1: clamp(.78rem, .74rem + .2vw, .875rem);--nav-height: 56px}@supports (color: oklch(50% .1 20)){:root{--ink: oklch(.89 .008 50);--ink-dim: oklch(.66 .015 45);--line: oklch(1 0 0 / .12);--accent-text: oklch(.66 .22 27);--accent-shadow: oklch(.42 .17 27 / .6);--panel: oklch(.19 .015 27 / .5)}}html{scroll-padding-top:calc(var(--nav-height) + 16px)}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{margin:0;min-height:100vh;min-height:100svh;background:#120c0b;color:var(--ink)}@supports (color: oklch(50% .1 20)){body{background:oklch(.145 .014 calc(var(--hue) + 5))}}@keyframes hue-shift{to{--hue: -30}}@keyframes progress-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@supports (animation-timeline: scroll()){@media(prefers-reduced-motion:no-preference){html{animation:hue-shift linear both;animation-timeline:scroll()}.scroll-progress{animation:progress-grow linear both;animation-timeline:scroll()}}}.scroll-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:100;transform-origin:0 50%;transform:scaleX(var(--scroll-p, 0));background:linear-gradient(90deg,var(--NCSU_Wolfpack_Red),#ff6a00,#ff2e88)}@supports (color: oklch(50% .1 20)){.scroll-progress{background:linear-gradient(90deg in oklch,oklch(.6 .23 var(--hue)),oklch(.68 .19 calc(var(--hue) + 45)),oklch(.6 .23 calc(var(--hue) - 45)))}}.aurora{position:fixed;inset:-15%;z-index:-2;pointer-events:none;will-change:transform;background:radial-gradient(60vmax 45vmax at 15% 10%,rgba(204,0,0,.22),transparent 70%),radial-gradient(70vmax 50vmax at 85% 35%,rgba(209,73,5,.14),transparent 70%),radial-gradient(80vmax 55vmax at 45% 100%,rgba(190,0,90,.16),transparent 70%)}@supports (color: oklch(50% .1 20)){.aurora{background:radial-gradient(60vmax 45vmax at 15% 10%,oklch(.45 .19 var(--hue) / .3),transparent 70%),radial-gradient(70vmax 50vmax at 85% 35%,oklch(.52 .16 calc(var(--hue) + 45) / .18),transparent 70%),radial-gradient(80vmax 55vmax at 45% 100%,oklch(.44 .18 calc(var(--hue) - 50) / .22),transparent 70%)}}@media(prefers-reduced-motion:no-preference){.aurora{animation:aurora-drift 45s ease-in-out infinite alternate}}@keyframes aurora-drift{0%{transform:translate3d(-2%,-1%,0) rotate(-1.5deg) scale(1)}to{transform:translate3d(2%,2%,0) rotate(1.5deg) scale(1.08)}}.grain{position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}#app{font-family:var(--font-body);font-size:var(--step-0);text-align:center;color:var(--ink)}.skip-link{position:absolute;top:-100%;left:0;background:var(--NCSU_Wolfpack_Red);color:#fff!important;border:none!important;padding:.5rem 1rem;z-index:9999;font-weight:700;font-family:var(--font-mono)}.skip-link:focus{top:0}#app a:any-link{color:var(--accent-text);text-decoration:none;border-bottom:1.5px solid var(--accent-shadow)}@media(hover:hover){#app a:any-link:hover{border-bottom-color:var(--accent-text);background:#cc00001f}}#app a:focus-visible,#app button:focus-visible{outline:2px solid var(--NCSU_Hunt_Yellow);outline-offset:3px}#app .tooltip a,#app a:has(img){border-bottom:none}.site-nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:12px;min-height:var(--nav-height);padding:0 clamp(10px,3vw,24px);padding-left:max(clamp(10px,3vw,24px),env(safe-area-inset-left));padding-right:max(clamp(10px,3vw,24px),env(safe-area-inset-right));font-family:var(--font-mono);font-size:var(--step--1);text-align:left;border-bottom:1px solid var(--line);background:#0e0909d1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nav-brand{white-space:nowrap;font-weight:700;border-bottom:none!important}.nav-links{display:flex;flex:1 1 0;min-width:0;gap:4px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.nav-links::-webkit-scrollbar{display:none}@media(max-width:700px){.site-nav{flex-wrap:wrap;padding-top:4px;padding-bottom:4px}.nav-links{flex-basis:100%;order:3}}.nav-links a{padding:10px 8px;white-space:nowrap;color:var(--ink-dim)!important;border-bottom:none!important}.nav-links a:before{content:"./";opacity:.5}@media(hover:hover){.nav-links a:hover{color:var(--accent-text)!important;background:none}}main{display:block}.site-footer{margin-top:clamp(48px,8vh,96px);padding:24px 16px calc(24px + env(safe-area-inset-bottom));border-top:1px solid var(--line);font-family:var(--font-mono);font-size:var(--step--1);color:var(--ink-dim)}.reveal{opacity:1;transform:none}@media(prefers-reduced-motion:no-preference){.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.reveal.is-revealed{opacity:1;transform:none}}.blinking{animation-name:blink;animation-duration:.4s;animation-timing-function:cubic-bezier(1,.3,.3,1);animation-direction:alternate;animation-iteration-count:infinite}@keyframes blink{0%{opacity:0}to{opacity:1}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.disaster-btn{margin-left:auto;padding:8px 12px;font-family:var(--font-mono);font-size:var(--step--1);white-space:nowrap;color:var(--accent-text);background:transparent;border:1px solid var(--accent-shadow);cursor:pointer}@media(hover:hover){.disaster-btn:hover:not(:disabled){background:#cc000026;box-shadow:3px 3px 0 var(--accent-shadow)}}.disaster-btn:disabled{opacity:.5;cursor:wait}@media(prefers-reduced-motion:no-preference){body.disaster main,body.disaster .site-footer{animation:glitch .14s steps(2) infinite}}@keyframes glitch{0%{transform:translate(-3px,1px) skew(-1deg);filter:hue-rotate(70deg) contrast(1.4)}50%{transform:translate(3px,-2px) skew(1.5deg);filter:hue-rotate(-90deg) saturate(3)}to{transform:translate(-1px,2px);filter:invert(.08)}}.restore-overlay{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:16px;background:#0a0606d1}.restore-panel{width:min(440px,92vw);padding:clamp(16px,4vw,28px);font-family:var(--font-mono);text-align:left;color:var(--ink);background:#140d0c;border:1px solid var(--accent-shadow);box-shadow:10px 10px #cc000059}.restore-title{margin:0 0 4px;font-size:var(--step-2);font-weight:700;color:var(--accent-text)}.restore-sub{margin:0 0 12px;color:var(--ink-dim)}.restore-bar{height:10px;margin:12px 0;border:1px solid var(--line)}.restore-bar-fill{height:100%;width:0;background:linear-gradient(90deg,var(--NCSU_Wolfpack_Red),#ff6a00);animation:restore-fill 1.7s linear forwards}.restore-bar-fill.full{width:100%;animation:none}@keyframes restore-fill{to{width:100%}}.restore-log{margin:0;padding:0;list-style:none;font-size:var(--step--1);color:var(--ink-dim)}.restore-log li{padding:2px 0}.restore-log li:before{content:"▸ ";color:var(--accent-text)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.aurora,.blinking,.restore-bar-fill{animation:none}.restore-bar-fill{width:100%}.blinking{opacity:1}}
