/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--pac-mouth:35deg}}}@layer theme{:host,:root{--color-red-500:oklch(63.7% .237 25.331);--color-yellow-500:oklch(79.5% .184 86.047);--color-green-500:oklch(72.3% .219 149.579);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25/1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-7xl:4.5rem;--text-7xl--line-height:1;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wider:.05em;--leading-tight:1.25;--leading-relaxed:1.625;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-ping:ping 1s cubic-bezier(0,0,.2,1)infinite;--blur-sm:8px;--blur-md:12px;--blur-3xl:64px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-body);--default-mono-font-family:var(--font-code)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){*{outline-color:color-mix(in oklab,var(--ring)50%,transparent)}}body{background-color:var(--background);font-family:var(--font-body);color:var(--foreground)}h1,h2,h3,h4{font-family:var(--font-heading)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background-color:var(--muted)}::-webkit-scrollbar-thumb{background-color:var(--primary);border-radius:3.40282e+38px}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.absolute,.sr-only{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:calc(var(--spacing)*0)}.inset-x-3{inset-inline:calc(var(--spacing)*3)}.-top-1{top:calc(var(--spacing)*-1)}.-top-10{top:calc(var(--spacing)*-10)}.top-0{top:calc(var(--spacing)*0)}.top-1{top:calc(var(--spacing)*1)}.top-2{top:calc(var(--spacing)*2)}.top-2\.5{top:calc(var(--spacing)*2.5)}.top-16{top:calc(var(--spacing)*16)}.top-20{top:calc(var(--spacing)*20)}.top-24{top:calc(var(--spacing)*24)}.top-28{top:calc(var(--spacing)*28)}.top-\[4\.25rem\]{top:4.25rem}.-right-1{right:calc(var(--spacing)*-1)}.-right-10{right:calc(var(--spacing)*-10)}.right-0{right:calc(var(--spacing)*0)}.right-1{right:calc(var(--spacing)*1)}.right-4{right:calc(var(--spacing)*4)}.right-\[6\%\]{right:6%}.bottom-1{bottom:calc(var(--spacing)*1)}.bottom-4{bottom:calc(var(--spacing)*4)}.bottom-12{bottom:calc(var(--spacing)*12)}.bottom-14{bottom:calc(var(--spacing)*14)}.bottom-16{bottom:calc(var(--spacing)*16)}.bottom-20{bottom:calc(var(--spacing)*20)}.left-0{left:calc(var(--spacing)*0)}.left-1{left:calc(var(--spacing)*1)}.left-1\/2{left:50%}.left-4{left:calc(var(--spacing)*4)}.left-\[4\%\]{left:4%}.left-\[6\%\]{left:6%}.left-\[7\%\]{left:7%}.left-\[46\%\]{left:46%}.isolate{isolation:isolate}.-z-10{z-index:calc(10*-1)}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.z-70{z-index:70}.mx-auto{margin-inline:auto}.mt-0\.5{margin-top:calc(var(--spacing)*.5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-5{margin-top:calc(var(--spacing)*5)}.mt-6{margin-top:calc(var(--spacing)*6)}.mt-auto{margin-top:auto}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.h-1{height:calc(var(--spacing)*1)}.h-1\.5{height:calc(var(--spacing)*1.5)}.h-2{height:calc(var(--spacing)*2)}.h-3{height:calc(var(--spacing)*3)}.h-3\.5{height:calc(var(--spacing)*3.5)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-96{height:calc(var(--spacing)*96)}.h-full{height:100%}.max-h-\[calc\(100dvh-5\.5rem\)\]{max-height:calc(100dvh - 5.5rem)}.max-h-\[min\(70vh\,34rem\)\]{max-height:min(70vh,34rem)}.min-h-screen{min-height:100vh}.w-1\.5{width:calc(var(--spacing)*1.5)}.w-2{width:calc(var(--spacing)*2)}.w-2\.5{width:calc(var(--spacing)*2.5)}.w-3{width:calc(var(--spacing)*3)}.w-3\.5{width:calc(var(--spacing)*3.5)}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-7{width:calc(var(--spacing)*7)}.w-9{width:calc(var(--spacing)*9)}.w-10{width:calc(var(--spacing)*10)}.w-12{width:calc(var(--spacing)*12)}.w-20{width:calc(var(--spacing)*20)}.w-96{width:calc(var(--spacing)*96)}.w-\[min\(22rem\,calc\(100vw-2rem\)\)\]{width:min(22rem,100vw - 2rem)}.w-\[min\(24rem\,calc\(100vw-2rem\)\)\]{width:min(24rem,100vw - 2rem)}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.min-w-0{min-width:calc(var(--spacing)*0)}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x:calc(calc(1/2*100%)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.-rotate-6{rotate:-6deg}.-rotate-12{rotate:-12deg}.-rotate-20{rotate:-20deg}.rotate-12{rotate:12deg}.rotate-25{rotate:25deg}.rotate-45{rotate:45deg}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-ping{animation:var(--animate-ping)}.animate-spin{animation:var(--animate-spin)}.touch-none{touch-action:none}.resize-none{resize:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}.gap-8{gap:calc(var(--spacing)*8)}.gap-12{gap:calc(var(--spacing)*12)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*8)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*8)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-12>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*12)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*12)*calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:calc(var(--radius) + 8px)}.rounded-full{border-radius:3.40282e+38px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:calc(var(--radius) + 4px)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-black\/20{border-color:#0003}@supports (color:color-mix(in lab,red,red)){.border-black\/20{border-color:color-mix(in oklab,var(--color-black)20%,transparent)}}.border-border{border-color:var(--border)}.border-primary{border-color:var(--primary)}.bg-background,.bg-background\/80{background-color:var(--background)}@supports (color:color-mix(in lab,red,red)){.bg-background\/80{background-color:color-mix(in oklab,var(--background)80%,transparent)}}.bg-black\/45{background-color:#00000073}@supports (color:color-mix(in lab,red,red)){.bg-black\/45{background-color:color-mix(in oklab,var(--color-black)45%,transparent)}}.bg-black\/60{background-color:#0009}@supports (color:color-mix(in lab,red,red)){.bg-black\/60{background-color:color-mix(in oklab,var(--color-black)60%,transparent)}}.bg-card{background-color:var(--card)}.bg-green-500{background-color:var(--color-green-500)}.bg-muted,.bg-muted\/30{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/30{background-color:color-mix(in oklab,var(--muted)30%,transparent)}}.bg-popover{background-color:var(--popover)}.bg-primary,.bg-primary\/10{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/10{background-color:color-mix(in oklab,var(--primary)10%,transparent)}}.bg-primary\/70{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/70{background-color:color-mix(in oklab,var(--primary)70%,transparent)}}.bg-red-500{background-color:var(--color-red-500)}.bg-secondary{background-color:var(--secondary)}.bg-skill-1{background-color:var(--skill-1)}.bg-skill-1-alt{background-color:var(--skill-1-alt)}.bg-skill-1\/10{background-color:var(--skill-1)}@supports (color:color-mix(in lab,red,red)){.bg-skill-1\/10{background-color:color-mix(in oklab,var(--skill-1)10%,transparent)}}.bg-skill-2,.bg-skill-2\/10{background-color:var(--skill-2)}@supports (color:color-mix(in lab,red,red)){.bg-skill-2\/10{background-color:color-mix(in oklab,var(--skill-2)10%,transparent)}}.bg-skill-3,.bg-skill-3\/10{background-color:var(--skill-3)}@supports (color:color-mix(in lab,red,red)){.bg-skill-3\/10{background-color:color-mix(in oklab,var(--skill-3)10%,transparent)}}.bg-skill-track{background-color:var(--skill-track)}.bg-tech-electron\/10{background-color:var(--tech-electron)}@supports (color:color-mix(in lab,red,red)){.bg-tech-electron\/10{background-color:color-mix(in oklab,var(--tech-electron)10%,transparent)}}.bg-tech-react\/10{background-color:var(--tech-react)}@supports (color:color-mix(in lab,red,red)){.bg-tech-react\/10{background-color:color-mix(in oklab,var(--tech-react)10%,transparent)}}.bg-tech-solid\/10{background-color:var(--tech-solid)}@supports (color:color-mix(in lab,red,red)){.bg-tech-solid\/10{background-color:color-mix(in oklab,var(--tech-solid)10%,transparent)}}.bg-tech-svelte\/10{background-color:var(--tech-svelte)}@supports (color:color-mix(in lab,red,red)){.bg-tech-svelte\/10{background-color:color-mix(in oklab,var(--tech-svelte)10%,transparent)}}.bg-yellow-500{background-color:var(--color-yellow-500)}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-primary\/20{--tw-gradient-from:var(--primary)}@supports (color:color-mix(in lab,red,red)){.from-primary\/20{--tw-gradient-from:color-mix(in oklab,var(--primary)20%,transparent)}}.from-primary\/20{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-accent\/20{--tw-gradient-to:var(--accent)}@supports (color:color-mix(in lab,red,red)){.to-accent\/20{--tw-gradient-to:color-mix(in oklab,var(--accent)20%,transparent)}}.to-accent\/20{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.p-1{padding:calc(var(--spacing)*1)}.p-2{padding:calc(var(--spacing)*2)}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.p-8{padding:calc(var(--spacing)*8)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.px-6{padding-inline:calc(var(--spacing)*6)}.px-8{padding-inline:calc(var(--spacing)*8)}.py-1{padding-block:calc(var(--spacing)*1)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-12{padding-block:calc(var(--spacing)*12)}.py-20{padding-block:calc(var(--spacing)*20)}.pt-0\.5{padding-top:calc(var(--spacing)*.5)}.pt-1{padding-top:calc(var(--spacing)*1)}.pt-4{padding-top:calc(var(--spacing)*4)}.pt-8{padding-top:calc(var(--spacing)*8)}.pt-20{padding-top:calc(var(--spacing)*20)}.pr-1{padding-right:calc(var(--spacing)*1)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pl-3{padding-left:calc(var(--spacing)*3)}.pl-4{padding-left:calc(var(--spacing)*4)}.pl-8{padding-left:calc(var(--spacing)*8)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:var(--font-code)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-balance{text-wrap:balance}.whitespace-nowrap{white-space:nowrap}.text-destructive{color:var(--destructive)}.text-foreground{color:var(--foreground)}.text-muted-foreground,.text-muted-foreground\/40{color:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.text-muted-foreground\/40{color:color-mix(in oklab,var(--muted-foreground)40%,transparent)}}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-skill-1{color:var(--skill-1)}.text-skill-2{color:var(--skill-2)}.text-skill-3{color:var(--skill-3)}.text-syntax-keyword{color:var(--syntax-keyword)}.text-syntax-string{color:var(--syntax-string)}.text-tech-electron{color:var(--tech-electron)}.text-tech-nodejs{color:var(--tech-nodejs)}.text-tech-react{color:var(--tech-react)}.text-tech-solid{color:var(--tech-solid)}.text-tech-svelte{color:var(--tech-svelte)}.text-tech-typescript{color:var(--tech-typescript)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-40{opacity:.4}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-85{opacity:.85}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.shadow,.shadow-2xl{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a)}.shadow-lg,.shadow-xl{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur-3xl{--tw-blur:blur(var(--blur-3xl))}.blur-3xl,.grayscale{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.grayscale{--tw-grayscale:grayscale(100%)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md))}.backdrop-blur-md,.backdrop-blur-sm{-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm))}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.last\:mb-0:last-child{margin-bottom:calc(var(--spacing)*0)}@media (hover:hover){.hover\:scale-125:hover{--tw-scale-x:125%;--tw-scale-y:125%;--tw-scale-z:125%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\:border-muted-foreground:hover{border-color:var(--muted-foreground)}.hover\:border-primary:hover{border-color:var(--primary)}.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--primary)90%,transparent)}}.hover\:bg-secondary:hover{background-color:var(--secondary)}.hover\:bg-skill-track:hover{background-color:var(--skill-track)}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:text-primary:hover,.hover\:text-primary\/80:hover{color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:text-primary\/80:hover{color:color-mix(in oklab,var(--primary)80%,transparent)}}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:brightness-110:hover{--tw-brightness:brightness(110%);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}}.focus\:border-transparent:focus{border-color:#0000}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-primary:focus{--tw-ring-color:var(--primary)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width:40rem){.sm\:absolute{position:absolute}.sm\:inset-x-auto{inset-inline:auto}.sm\:top-auto{top:auto}.sm\:top-full{top:100%}.sm\:right-0{right:calc(var(--spacing)*0)}.sm\:bottom-6{bottom:calc(var(--spacing)*6)}.sm\:mt-3{margin-top:calc(var(--spacing)*3)}.sm\:max-h-\[min\(75vh\,38rem\)\]{max-height:min(75vh,38rem)}.sm\:w-\[36rem\]{width:36rem}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:p-6{padding:calc(var(--spacing)*6)}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media (min-width:48rem){.md\:flex{display:flex}.md\:hidden{display:none}.md\:inline{display:inline}.md\:h-4{height:calc(var(--spacing)*4)}.md\:w-4{width:calc(var(--spacing)*4)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:gap-8{gap:calc(var(--spacing)*8)}.md\:px-3{padding-inline:calc(var(--spacing)*3)}.md\:py-1\.5{padding-block:calc(var(--spacing)*1.5)}.md\:text-left{text-align:left}}@media (min-width:64rem){.lg\:mt-0{margin-top:calc(var(--spacing)*0)}.lg\:block{display:block}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:justify-between{justify-content:space-between}.lg\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.lg\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.lg\:text-7xl{font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--line-height))}}}:root[data-theme=dracula]{color-scheme:dark;--background:#282a36;--foreground:#f8f8f2;--card:#303241;--card-foreground:#f8f8f2;--popover:#303241;--popover-foreground:#f8f8f2;--primary:#bd93f9;--primary-foreground:#282a36;--secondary:#44475a;--secondary-foreground:#f8f8f2;--muted:#343746;--muted-foreground:#b7bcd8;--accent:#ff79c6;--accent-foreground:#282a36;--destructive:#f55;--border:#44475a;--input:#44475a;--ring:#bd93f9;--syntax-keyword:#ff79c6;--syntax-string:#f1fa8c;--tech-typescript:#8be9fd;--tech-react:#8be9fd;--tech-svelte:#ffb86c;--tech-solid:#bd93f9;--tech-electron:#8be9fd;--tech-nodejs:#50fa7b;--skill-1:#50fa7b;--skill-1-alt:#8be9fd;--skill-2:#bd93f9;--skill-3:#ffb86c;--skill-track:#44475a}:root[data-theme=tokyo-night]{color-scheme:dark;--background:#1a1b26;--foreground:#c0caf5;--card:#1f2335;--card-foreground:#c0caf5;--popover:#1f2335;--popover-foreground:#c0caf5;--primary:#7aa2f7;--primary-foreground:#1a1b26;--secondary:#292e42;--secondary-foreground:#c0caf5;--muted:#1f2335;--muted-foreground:#a9b1d6;--accent:#bb9af7;--accent-foreground:#1a1b26;--destructive:#f7768e;--border:#2f3549;--input:#2f3549;--ring:#7aa2f7;--syntax-keyword:#bb9af7;--syntax-string:#9ece6a;--tech-typescript:#7aa2f7;--tech-react:#7dcfff;--tech-svelte:#ff9e64;--tech-solid:#2ac3de;--tech-electron:#7dcfff;--tech-nodejs:#9ece6a;--skill-1:#9ece6a;--skill-1-alt:#7dcfff;--skill-2:#bb9af7;--skill-3:#e0af68;--skill-track:#3b4261}:root[data-theme=nord]{color-scheme:dark;--background:#2e3440;--foreground:#eceff4;--card:#3b4252;--card-foreground:#eceff4;--popover:#3b4252;--popover-foreground:#eceff4;--primary:#88c0d0;--primary-foreground:#2e3440;--secondary:#434c5e;--secondary-foreground:#eceff4;--muted:#3b4252;--muted-foreground:#c2c9d6;--accent:#a3be8c;--accent-foreground:#2e3440;--destructive:#bf616a;--border:#4c566a;--input:#4c566a;--ring:#88c0d0;--syntax-keyword:#81a1c1;--syntax-string:#a3be8c;--tech-typescript:#81a1c1;--tech-react:#88c0d0;--tech-svelte:#d08770;--tech-solid:#8fbcbb;--tech-electron:#88c0d0;--tech-nodejs:#a3be8c;--skill-1:#a3be8c;--skill-1-alt:#88c0d0;--skill-2:#b48ead;--skill-3:#ebcb8b;--skill-track:#4c566a}:root[data-theme=monokai]{color-scheme:dark;--background:#272822;--foreground:#f8f8f2;--card:#31322b;--card-foreground:#f8f8f2;--popover:#31322b;--popover-foreground:#f8f8f2;--primary:#a6e22e;--primary-foreground:#272822;--secondary:#3e3d32;--secondary-foreground:#f8f8f2;--muted:#3e3d32;--muted-foreground:#cfcfc2;--accent:#f92672;--accent-foreground:#f8f8f2;--destructive:#f92672;--border:#49483e;--input:#49483e;--ring:#a6e22e;--syntax-keyword:#f92672;--syntax-string:#e6db74;--tech-typescript:#66d9ef;--tech-react:#66d9ef;--tech-svelte:#fd971f;--tech-solid:#ae81ff;--tech-electron:#66d9ef;--tech-nodejs:#a6e22e;--skill-1:#a6e22e;--skill-1-alt:#66d9ef;--skill-2:#ae81ff;--skill-3:#fd971f;--skill-track:#49483e}:root[data-theme=solarized-light]{color-scheme:light;--background:#fdf6e3;--foreground:#073642;--card:#eee8d5;--card-foreground:#073642;--popover:#eee8d5;--popover-foreground:#073642;--primary:#268bd2;--primary-foreground:#fdf6e3;--secondary:#e6dfc8;--secondary-foreground:#073642;--muted:#eee8d5;--muted-foreground:#586e75;--accent:#2aa198;--accent-foreground:#fdf6e3;--destructive:#dc322f;--border:#d9d2bd;--input:#d9d2bd;--ring:#268bd2;--syntax-keyword:#859900;--syntax-string:#2aa198;--tech-typescript:#268bd2;--tech-react:#2aa198;--tech-svelte:#cb4b16;--tech-solid:#6c71c4;--tech-electron:#2aa198;--tech-nodejs:#859900;--skill-1:#859900;--skill-1-alt:#2aa198;--skill-2:#6c71c4;--skill-3:#b58900;--skill-track:#d9d2bd}:root[data-theme=github-light]{color-scheme:light;--background:#fff;--foreground:#1f2328;--card:#fff;--card-foreground:#1f2328;--popover:#fff;--popover-foreground:#1f2328;--primary:#0969da;--primary-foreground:#fff;--secondary:#eff2f5;--secondary-foreground:#1f2328;--muted:#f6f8fa;--muted-foreground:#59636e;--accent:#8250df;--accent-foreground:#fff;--destructive:#cf222e;--border:#d0d7de;--input:#d0d7de;--ring:#0969da;--syntax-keyword:#cf222e;--syntax-string:#0a3069;--tech-typescript:#0969da;--tech-react:#1b7c83;--tech-svelte:#bc4c00;--tech-solid:#0550ae;--tech-electron:#1b7c83;--tech-nodejs:#1a7f37;--skill-1:#1a7f37;--skill-1-alt:#0969da;--skill-2:#8250df;--skill-3:#9a6700;--skill-track:#d8dee4}[data-theme=github-light] .card,[data-theme=github-light] .code-window{box-shadow:0 1px 3px #1f232814}[data-theme=github-light] .code-window{background:#f6f8fa}:root[data-theme=aero]{color-scheme:light;--background:#1565b8;--foreground:#fff;--card:#ffffffc7;--card-foreground:#1e1e1e;--popover:#ffffffc7;--popover-foreground:#1e1e1e;--primary:#9fd8ff;--primary-foreground:#0b3a73;--secondary:#ffffff40;--secondary-foreground:#fff;--muted:#ffffff59;--muted-foreground:#e3f1ff;--accent:#b9f3ff;--accent-foreground:#0b3a73;--destructive:#c42b1c;--border:#ffffff73;--input:#abadb3;--ring:#3d7bad;--radius:6px;--font-body:"Segoe UI","Segoe UI Variable Text",Tahoma,"Helvetica Neue",system-ui,sans-serif;--font-heading:var(--font-body);--font-code:Consolas,"Lucida Console",ui-monospace,monospace;--syntax-keyword:#00f;--syntax-string:#a31515;--tech-typescript:#2b91af;--tech-react:#0078d7;--tech-svelte:#c74b16;--tech-solid:#2e5c99;--tech-electron:#0078d7;--tech-nodejs:#2e7d32;--skill-1:#06b025;--skill-1-alt:#06b025;--skill-2:#2f8ae6;--skill-3:#d8a600;--skill-track:#e6e6e6}[data-theme=aero] body{text-shadow:0 1px 2px #00000059;background-color:#0e4c94;background-image:linear-gradient(115deg,#0000 38%,#ffffff1a 47%,#0000 56%),radial-gradient(60% 40% at 15% 0,#ffffff59,#0000 70%),radial-gradient(50% 60% at 85% 100%,#6edcff73,#0000 70%),radial-gradient(120% 35% at 50% 55%,#82e6ff38,#0000 70%),linear-gradient(160deg,#0a3466,#1462b5 40%,#2f95dc 65%,#0b4a8f);background-attachment:fixed}[data-theme=aero] section h2{text-shadow:0 1px 3px #00000080,0 0 18px #96dcff73}[data-theme=aero] .card{--foreground:#1e1e1e;--muted-foreground:#3b4a5c;--primary:#1a5fb4;--muted:#e3ecf6;--secondary:#e3ecf6;--secondary-foreground:#1e395b;--border:#b8cde3;--skill-track:#e6e6e6;color:var(--foreground);-webkit-backdrop-filter:blur(14px)saturate(1.5);backdrop-filter:blur(14px)saturate(1.5);text-shadow:none;background:linear-gradient(#ffffffd6,#e8f2fcbd);border:1px solid #ffffffbf;border-radius:8px;box-shadow:0 0 0 1px #00286459,inset 0 1px #fffffff2,0 10px 28px #00194659}[data-theme=aero] .card h3{color:#039}[data-theme=aero] .site-nav{-webkit-backdrop-filter:blur(14px)saturate(1.4);backdrop-filter:blur(14px)saturate(1.4);background:linear-gradient(#28466e8c,#0f2341b8);border-bottom:1px solid #00000080;box-shadow:inset 0 1px #ffffff59,inset 0 -1px #ffffff1f}[data-theme=aero] .site-logo{color:#fff;align-items:center;gap:.6rem;display:inline-flex}[data-theme=aero] .site-logo:before{content:"";background:radial-gradient(circle at 50% 28%,#ffffffe6 0 18%,#0000 45%),radial-gradient(circle at 50% 70%,#6fd0ff,#1b6fd1 55%,#0a3b7a 100%);border-radius:50%;width:30px;height:30px;box-shadow:0 0 10px #78d2ffd9,inset 0 0 0 1px #0006}[data-theme=aero] .btn-primary,[data-theme=aero] .btn-secondary{color:#000;text-shadow:none;background:linear-gradient(#f2f2f2,#ebebeb 50%,#ddd 51%,#cfcfcf);border:1px solid #707070;border-radius:3px;box-shadow:inset 0 0 0 1px #ffffffb3}[data-theme=aero] .btn-primary{border-color:#3c7fb1;animation:aero-default-button 1.6s ease-in-out infinite}[data-theme=aero] .btn-primary:hover,[data-theme=aero] .btn-secondary:hover{background:linear-gradient(#eaf6fd,#d9f0fc 50%,#bee6fd 51%,#a7d9f5);border-color:#3c7fb1}[data-theme=aero] .btn-primary:active,[data-theme=aero] .btn-secondary:active{background:linear-gradient(#e5f4fc,#c4e5f6 50%,#98d1ef 51%,#68b3db);border-color:#2c628b}[data-theme=aero] .btn-primary:disabled{color:#838383;background:#f4f4f4;border-color:#adb2b5;animation:none}@keyframes aero-default-button{0%,to{box-shadow:inset 0 0 0 1px #fff,0 0 0 1px #3c7fb159}50%{box-shadow:inset 0 0 0 1px #fff,0 0 0 1px #3c7fb199,0 0 8px #38a0e6d9}}[data-theme=aero] .chip{--muted-foreground:#1e395b;--secondary-foreground:#1e395b;--primary:#1a5fb4;text-shadow:none;background:linear-gradient(#fff,#e5f0fb);border:1px solid #a9c3de;box-shadow:inset 0 1px #fff}[data-theme=aero] .field{color:#000;background:#fff;border:1px solid #abadb3;border-top-color:#8e8f8f;border-radius:2px}[data-theme=aero] .field:hover{border-color:#5794bf #b7d5ea #c7e2f1 #c5daed}[data-theme=aero] .field:focus{box-shadow:none;border-color:#3d7bad #a4c9e3 #b7d9ed #b5cfe7}[data-theme=aero] .field::placeholder{color:#6d6d6d}[data-theme=aero] .heading-bar{background:linear-gradient(#c9eaff,#4aa8f0 50%,#1c86e0 51%,#5bb8ff);border-radius:3px;height:6px;box-shadow:0 0 8px #96dcffcc}[data-theme=aero] .skill-track{background:linear-gradient(#f3f3f3,#e2e2e2 50%,#dadada 51%,#e6e6e6);border:1px solid #bcbcbc;border-radius:3px;height:14px;overflow:hidden;box-shadow:inset 0 1px 1px #00000014}[data-theme=aero] .skill-fill{background-image:linear-gradient(#fff9,#ffffff40 45%,#0000 50%,#fff3);border-radius:0;height:100%;position:relative;overflow:hidden}[data-theme=aero] .skill-fill:after{content:"";background:linear-gradient(90deg,#0000,#ffffffa6,#0000);width:40%;animation:aero-shine 2.4s linear infinite;position:absolute;inset:0}@keyframes aero-shine{0%{transform:translate(-100%)}to{transform:translate(260%)}}[data-theme=aero] .code-window{-webkit-backdrop-filter:blur(16px)saturate(1.6);backdrop-filter:blur(16px)saturate(1.6);background:linear-gradient(#c8e1fa8c,#96c3f073);border:1px solid #001e508c;border-radius:8px;padding:.35rem .5rem .5rem;box-shadow:inset 0 0 0 1px #fff9,0 12px 32px #00143c73}[data-theme=aero] .code-window-dots{display:none}[data-theme=aero] .code-window-bar{height:22px;margin-block-end:.35rem;padding-left:.25rem}[data-theme=aero] .code-window-title{color:#000;font-family:var(--font-body);text-shadow:0 0 10px #fff,0 0 6px #fff;font-size:.8rem}[data-theme=aero] .code-window-title:after{content:" - Notepad"}[data-theme=aero] .win-controls{border:1px solid #001e468c;border-top:none;border-radius:0 0 5px 5px;align-self:flex-start;margin-top:-.4rem;margin-left:auto;display:flex;overflow:hidden;box-shadow:0 1px #ffffff80}[data-theme=aero] .win-controls>span{color:#fff;text-shadow:0 0 2px #000;background:linear-gradient(#ffffff8c,#fff3 50%,#bed7f04d 0,#ffffff59);border-right:1px solid #001e4659;place-items:center;width:26px;height:18px;font:700 10px/1 system-ui,sans-serif;display:grid}[data-theme=aero] .win-controls>.win-close{background:linear-gradient(#e8a597,#d76552 45%,#c43216 50%,#d4533d);border-right:none;width:44px}[data-theme=aero] .win-min:before{content:"–"}[data-theme=aero] .win-max:before{content:"☐"}[data-theme=aero] .win-close:before{content:"✕"}[data-theme=aero] .code-window-body{--muted-foreground:#000;text-shadow:none;background:#fff;border:1px solid #001e4673;padding:1rem 1.25rem}[data-theme=aero] .theme-menu.card{-webkit-backdrop-filter:none;backdrop-filter:none;background:#eef5fc}:root[data-theme=minecraft]{color-scheme:dark;--background:#2a1e14;--foreground:#fff;--card:#c6c6c6;--card-foreground:#3f3f3f;--popover:#c6c6c6;--popover-foreground:#3f3f3f;--primary:#80ff20;--primary-foreground:#1a1a1a;--secondary:#6f6f6f;--secondary-foreground:#fff;--muted:#00000059;--muted-foreground:#dcdcdc;--accent:#ff5;--accent-foreground:#1a1a1a;--destructive:#f55;--border:#000;--input:#a0a0a0;--ring:#fff;--radius:0px;--font-body:var(--font-pixelify),ui-monospace,monospace;--font-heading:var(--font-pixelify),ui-monospace,monospace;--font-code:var(--font-pixelify),ui-monospace,monospace;--syntax-keyword:#f5f;--syntax-string:#ff5;--tech-typescript:#5ff;--tech-react:#5ff;--tech-svelte:#fa0;--tech-solid:#8f8fff;--tech-electron:#5ff;--tech-nodejs:#5f5;--skill-1:#80ff20;--skill-1-alt:#5ff;--skill-2:#f5f;--skill-3:#fa0;--skill-track:#373737}[data-theme=minecraft] body{text-shadow:2px 2px #3f3f3f;background-color:#2a1e14;background-image:linear-gradient(#0000009e,#0000009e),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' shape-rendering='crispEdges'%3E%3Crect width='16' height='16' fill='%23866043'/%3E%3Cpath fill='%2379553a' d='M0 0h1v1h-1zM1 0h1v1h-1zM6 0h1v1h-1zM4 1h1v1h-1zM0 2h1v1h-1zM3 2h1v1h-1zM5 2h1v1h-1zM6 2h1v1h-1zM13 2h1v1h-1zM3 3h1v1h-1zM9 3h1v1h-1zM11 3h1v1h-1zM13 3h1v1h-1zM7 4h1v1h-1zM12 4h1v1h-1zM14 4h1v1h-1zM2 5h1v1h-1zM5 5h1v1h-1zM9 5h1v1h-1zM12 5h1v1h-1zM13 5h1v1h-1zM1 6h1v1h-1zM5 6h1v1h-1zM8 6h1v1h-1zM9 6h1v1h-1zM14 6h1v1h-1zM4 7h1v1h-1zM9 7h1v1h-1zM12 7h1v1h-1zM13 7h1v1h-1zM2 8h1v1h-1zM4 8h1v1h-1zM5 8h1v1h-1zM6 8h1v1h-1zM4 9h1v1h-1zM14 9h1v1h-1zM15 10h1v1h-1zM0 11h1v1h-1zM4 11h1v1h-1zM6 11h1v1h-1zM13 11h1v1h-1zM14 11h1v1h-1zM5 12h1v1h-1zM7 12h1v1h-1zM9 12h1v1h-1zM15 12h1v1h-1zM6 14h1v1h-1zM11 14h1v1h-1zM2 15h1v1h-1zM7 15h1v1h-1zM13 15h1v1h-1z'/%3E%3Cpath fill='%23593d29' d='M2 0h1v1h-1zM1 1h1v1h-1zM14 2h1v1h-1zM6 3h1v1h-1zM2 4h1v1h-1zM7 6h1v1h-1zM6 7h1v1h-1zM14 7h1v1h-1zM0 8h1v1h-1zM1 8h1v1h-1zM1 9h1v1h-1zM9 9h1v1h-1zM8 11h1v1h-1zM12 11h1v1h-1zM15 11h1v1h-1z'/%3E%3Cpath fill='%236c4d36' d='M3 0h1v1h-1zM4 0h1v1h-1zM5 0h1v1h-1zM12 0h1v1h-1zM13 0h1v1h-1zM13 1h1v1h-1zM7 2h1v1h-1zM8 2h1v1h-1zM10 3h1v1h-1zM14 3h1v1h-1zM1 5h1v1h-1zM4 5h1v1h-1zM8 5h1v1h-1zM11 5h1v1h-1zM13 6h1v1h-1zM0 7h1v1h-1zM8 7h1v1h-1zM3 8h1v1h-1zM12 8h1v1h-1zM14 8h1v1h-1zM0 9h1v1h-1zM6 9h1v1h-1zM10 10h1v1h-1zM1 11h1v1h-1zM2 11h1v1h-1zM3 11h1v1h-1zM8 12h1v1h-1zM11 12h1v1h-1zM12 12h1v1h-1zM5 13h1v1h-1zM8 13h1v1h-1zM14 13h1v1h-1zM1 14h1v1h-1zM3 14h1v1h-1zM5 14h1v1h-1zM13 14h1v1h-1zM14 14h1v1h-1zM3 15h1v1h-1zM5 15h1v1h-1zM10 15h1v1h-1zM14 15h1v1h-1z'/%3E%3Cpath fill='%23b9855c' d='M11 0h1v1h-1zM9 1h1v1h-1zM3 4h1v1h-1zM13 4h1v1h-1zM3 6h1v1h-1zM11 8h1v1h-1zM12 15h1v1h-1z'/%3E%3Cpath fill='%239b7653' d='M2 1h1v1h-1zM3 1h1v1h-1zM6 1h1v1h-1zM8 1h1v1h-1zM10 1h1v1h-1zM1 2h1v1h-1zM9 2h1v1h-1zM10 2h1v1h-1zM12 2h1v1h-1zM0 3h1v1h-1zM12 3h1v1h-1zM5 4h1v1h-1zM6 5h1v1h-1zM10 5h1v1h-1zM4 6h1v1h-1zM12 6h1v1h-1zM15 6h1v1h-1zM1 7h1v1h-1zM5 9h1v1h-1zM8 9h1v1h-1zM0 10h1v1h-1zM6 10h1v1h-1zM8 10h1v1h-1zM12 10h1v1h-1zM7 11h1v1h-1zM0 12h1v1h-1zM1 12h1v1h-1zM2 12h1v1h-1zM10 12h1v1h-1zM14 12h1v1h-1zM13 13h1v1h-1zM4 14h1v1h-1zM6 15h1v1h-1zM8 15h1v1h-1z'/%3E%3C/svg%3E");background-size:auto,64px 64px}[data-theme=minecraft] .card{--foreground:#3f3f3f;--muted-foreground:#4a4a4a;--primary:#1f5e0e;--muted:#8b8b8b;--secondary:#8b8b8b;--border:#555;color:var(--foreground);text-shadow:none;background:#c6c6c6;border:2px solid #000;box-shadow:inset 4px 4px #fff,inset -4px -4px #555}[data-theme=minecraft] .hero-name{color:#d6d6d6;letter-spacing:.02em;text-shadow:2px 2px #9a9a9a,4px 4px #6b6b6b,6px 6px #4a4a4a,8px 8px #1e1e1e}[data-theme=minecraft] .mc-splash{color:#ff0;font-family:var(--font-pixelify),monospace;white-space:nowrap;text-shadow:2px 2px #3f3f00;pointer-events:none;font-size:clamp(.9rem,1.6vw,1.2rem);animation:mc-splash .45s ease-in-out infinite alternate;display:block;position:absolute;bottom:-.25rem;right:0;transform:rotate(-15deg)}@media (min-width:1024px){[data-theme=minecraft] .mc-splash{bottom:-.75rem;left:15rem;right:auto}}@keyframes mc-splash{0%{transform:rotate(-15deg)scale(1)}to{transform:rotate(-15deg)scale(1.08)}}[data-theme=minecraft] .btn-primary,[data-theme=minecraft] .btn-secondary{color:#e0e0e0;text-shadow:2px 2px #383838;background:#6f6f6f;border:2px solid #000;border-radius:0;box-shadow:inset 2px 2px #a8a8a8,inset -2px -4px #4a4a4a}[data-theme=minecraft] .btn-primary:hover,[data-theme=minecraft] .btn-secondary:hover{color:#ffffa0;background:#7a87c4;border-color:#fff;box-shadow:inset 2px 2px #aab4ee,inset -2px -4px #4c5799}[data-theme=minecraft] .btn-primary:disabled{color:#a0a0a0;box-shadow:none;background:#2c2c2c;border-color:#000}[data-theme=minecraft] .chip{--muted-foreground:#fff;--secondary-foreground:#fff;--primary:#5f5;text-shadow:2px 2px #3e3e3e;background:#100010f0;border:2px solid #100010;border-radius:0;box-shadow:inset 0 0 0 2px #2d0b6e}[data-theme=minecraft] .field{color:#e0e0e0;background:#000;border:2px solid #a0a0a0;border-radius:0}[data-theme=minecraft] .field:focus{box-shadow:none;border-color:#fff}[data-theme=minecraft] .field::placeholder{color:#707070}[data-theme=minecraft] .heading-bar{background:repeating-linear-gradient(90deg,#0000 0 16px,#000 16px 18px),linear-gradient(90deg,#80ff20 0 68%,#2a2a2a 68%);border-radius:0;width:182px;height:10px;box-shadow:0 0 0 2px #000}[data-theme=minecraft] .skill-track{background:#1d1d1d;border-radius:0;height:10px;box-shadow:0 0 0 2px #000}[data-theme=minecraft] .skill-fill{background-image:repeating-linear-gradient(90deg,#0000 0 14px,#00000073 14px 16px);border-radius:0;height:100%}[data-theme=minecraft] .site-nav{-webkit-backdrop-filter:none;backdrop-filter:none;background:#000000b3;border-bottom:2px solid #000;box-shadow:0 2px #3a3a3a}[data-theme=minecraft] .code-window{--muted-foreground:#e0e0e0;-webkit-backdrop-filter:none;backdrop-filter:none;background:#0009;border:2px solid #000;border-radius:0}[data-theme=minecraft] .code-window-dots,[data-theme=minecraft] .hero-glow{display:none}[data-theme=minecraft] .code-window-body{font-size:1rem}[data-theme=minecraft] .code-cursor{display:inline}[data-theme=minecraft] .code-cursor:after{content:"_";animation:blink 1s step-end infinite}:root[data-theme=synthwave]{color-scheme:dark;--background:#1a0b2e;--foreground:#f8f7ff;--card:#2a1250c7;--card-foreground:#f8f7ff;--popover:#241040;--popover-foreground:#f8f7ff;--primary:#36f9f6;--primary-foreground:#1a0b2e;--secondary:#3b1d63;--secondary-foreground:#f8f7ff;--muted:#2a1250;--muted-foreground:#d4c2f2;--accent:#f92aad;--accent-foreground:#fff;--destructive:#fe4450;--border:#f92aad66;--input:#36f9f666;--ring:#36f9f6;--radius:4px;--font-heading:var(--font-orbitron),var(--font-body);--syntax-keyword:#fede5d;--syntax-string:#ff8b39;--tech-typescript:#36f9f6;--tech-react:#72f1b8;--tech-svelte:#ff8b39;--tech-solid:#b967ff;--tech-electron:#36f9f6;--tech-nodejs:#72f1b8;--skill-1:#72f1b8;--skill-1-alt:#36f9f6;--skill-2:#b967ff;--skill-3:#fede5d;--skill-track:#ffffff14}[data-theme=synthwave] body{background-color:#0d0221;background-image:radial-gradient(1.5px 1.5px at 8% 12%,#fff,#0000),radial-gradient(1px 1px at 22% 34%,#fff,#0000),radial-gradient(1.5px 1.5px at 37% 8%,#ffd6f5,#0000),radial-gradient(1px 1px at 51% 22%,#fff,#0000),radial-gradient(1.5px 1.5px at 66% 14%,#c9fbff,#0000),radial-gradient(1px 1px at 79% 31%,#fff,#0000),radial-gradient(1.5px 1.5px at 91% 9%,#fff,#0000),radial-gradient(1px 1px at 15% 58%,#fff,#0000),radial-gradient(1px 1px at 44% 66%,#ffd6f5,#0000),radial-gradient(1.5px 1.5px at 72% 52%,#fff,#0000),radial-gradient(1px 1px at 88% 74%,#c9fbff,#0000),radial-gradient(1px 1px at 30% 88%,#fff,#0000),linear-gradient(#0d0221,#1a0b2e 45%,#2b0f54);background-attachment:fixed}[data-theme=synthwave] .hero-decor{background:linear-gradient(#0000 73.2%,#f92aade6 73.7%,#0000 74%),radial-gradient(circle at 50% 62%,#f92aad59,#0000 45%)}[data-theme=synthwave] .synth-sun{aspect-ratio:1;opacity:.45;background:linear-gradient(#fede5d,#ff8b39 45%,#f92aad 80%,#b967ff);border-radius:50%;width:min(70vw,420px);display:block;position:absolute;bottom:26.5%;left:50%;translate:-50%;-webkit-mask-image:linear-gradient(#000 0 50%,#0000 50% 53%,#000 53% 61%,#0000 61% 65%,#000 65% 72%,#0000 72% 77%,#000 77% 83%,#0000 83% 89%,#000 89% 94%,#0000 94%);mask-image:linear-gradient(#000 0 50%,#0000 50% 53%,#000 53% 61%,#0000 61% 65%,#000 65% 72%,#0000 72% 77%,#000 77% 83%,#0000 83% 89%,#000 89% 94%,#0000 94%)}[data-theme=synthwave] .synth-grid{opacity:.6;transform-origin:bottom;background-image:linear-gradient(0deg,#f92aad 2px,#0000 0),linear-gradient(90deg,#f92aad 2px,#0000 0);background-size:80px 80px;width:200%;height:100%;animation:synth-grid 1.4s linear infinite;display:block;position:absolute;bottom:0;left:-50%;transform:perspective(100vh)rotateX(60deg);-webkit-mask-image:linear-gradient(#0000,#000 55%);mask-image:linear-gradient(#0000,#000 55%)}@keyframes synth-grid{0%{background-position:0 0}to{background-position:0 80px}}@media (min-width:1024px){[data-theme=synthwave] .hero-decor{background:linear-gradient(#0000 73.2%,#f92aade6 73.7%,#0000 74%),radial-gradient(circle at 72% 58%,#f92aad61,#0000 40%)}[data-theme=synthwave] .synth-sun{opacity:1;left:auto;right:8%;translate:none}}[data-theme=synthwave] .hero-name{color:#0000;letter-spacing:.04em;text-transform:uppercase;filter:drop-shadow(0 0 14px #f92aad8c);background:linear-gradient(#fff,#d9f6ff 38%,#36f9f6 48%,#b967ff 52%,#f92aad 75%,#ff8b39);-webkit-background-clip:text;background-clip:text;font-style:italic;font-weight:900}[data-theme=synthwave] .hero-role{color:#ff2a6d;font-family:var(--font-dafoe),cursive;text-shadow:0 0 6px #ff2a6d,0 0 18px #ff2a6dcc;margin-top:-.25rem;font-size:clamp(2.25rem,4vw,3.25rem);font-weight:400;rotate:-4deg}[data-theme=synthwave] section:not(.hero) h2{color:#fff;letter-spacing:.12em;text-transform:uppercase;text-shadow:0 0 6px #f92aad,0 0 20px #f92aadb3}[data-theme=synthwave] .card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(160deg,#341660cc,#1e0c3acc);border:1px solid #f92aad73;transition:box-shadow .3s,border-color .3s;box-shadow:0 0 0 1px #36f9f614,0 0 22px #b967ff40,inset 0 0 24px #36f9f60f}[data-theme=synthwave] main .card:hover{border-color:#36f9f6b3;box-shadow:0 0 28px #36f9f659,inset 0 0 24px #36f9f61a}[data-theme=synthwave] .btn-primary,[data-theme=synthwave] .btn-secondary{font-family:var(--font-heading);letter-spacing:.1em;text-transform:uppercase;background:0 0;transition:background .2s,color .2s,box-shadow .2s}[data-theme=synthwave] .btn-primary{color:#36f9f6;text-shadow:0 0 8px #36f9f6cc;background:#36f9f614;border:2px solid #36f9f6;box-shadow:0 0 12px #36f9f673,inset 0 0 12px #36f9f633}[data-theme=synthwave] .btn-primary:hover{color:#1a0b2e;text-shadow:none;background:#36f9f6;box-shadow:0 0 24px #36f9f6}[data-theme=synthwave] .btn-secondary{color:#ff7edb;text-shadow:0 0 8px #f92aadcc;border:2px solid #f92aad;box-shadow:0 0 12px #f92aad66,inset 0 0 12px #f92aad26}[data-theme=synthwave] .btn-secondary:hover{color:#1a0b2e;text-shadow:none;background:#f92aad;box-shadow:0 0 24px #f92aad}[data-theme=synthwave] .chip{--muted-foreground:#9ffcfa;--secondary-foreground:#9ffcfa;background:#36f9f60f;border:1px solid #36f9f680;box-shadow:0 0 8px #36f9f633}[data-theme=synthwave] .field{color:#fff;background:#0d022199;border:1px solid #36f9f659}[data-theme=synthwave] .field:focus{border-color:#36f9f6;box-shadow:0 0 12px #36f9f680}[data-theme=synthwave] .heading-bar{background:linear-gradient(90deg,#f92aad,#36f9f6);width:120px;height:3px;box-shadow:0 0 10px #f92aad,0 0 20px #36f9f680}[data-theme=synthwave] .skill-fill{background-image:linear-gradient(90deg,#fff0,#ffffff59);box-shadow:0 0 10px #ffffff4d}[data-theme=synthwave] .site-nav{background:#0d0221c7;border-bottom:1px solid #0000;border-image:linear-gradient(90deg,#f92aad,#36f9f6) 1;box-shadow:0 1px 16px #f92aad4d}[data-theme=synthwave] .site-logo{color:#36f9f6;font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;text-shadow:0 0 10px #36f9f6cc}[data-theme=synthwave] .code-window{background:#0d0221d1;border:1px solid #36f9f666;box-shadow:0 0 30px #b967ff59}[data-theme=synthwave] .theme-menu.card{-webkit-backdrop-filter:none;backdrop-filter:none;background:#1f0d3d}:root[data-theme=terminal]{color-scheme:dark;--background:#050a05;--foreground:#41ff6e;--card:#071108;--card-foreground:#41ff6e;--popover:#050a05;--popover-foreground:#41ff6e;--primary:#41ff6e;--primary-foreground:#031b09;--secondary:#0d2611;--secondary-foreground:#41ff6e;--muted:#0a1a0c;--muted-foreground:#2fbf55;--accent:#b6ffc7;--accent-foreground:#031b09;--destructive:#ffb000;--border:#41ff6e59;--input:#41ff6e80;--ring:#41ff6e;--radius:0px;--font-body:var(--font-code);--font-heading:var(--font-vt323),var(--font-code);--syntax-keyword:#b6ffc7;--syntax-string:#41ff6e;--tech-typescript:#7dffa0;--tech-react:#41ff6e;--tech-svelte:#b6ffc7;--tech-solid:#7dffa0;--tech-electron:#41ff6e;--tech-nodejs:#b6ffc7;--skill-1:#41ff6e;--skill-1-alt:#41ff6e;--skill-2:#41ff6e;--skill-3:#41ff6e;--skill-track:#0d2611}[data-theme=terminal] body{text-shadow:0 0 2px #41ff6e8c,0 0 10px #41ff6e40}[data-theme=terminal] ::selection{color:#050a05;text-shadow:none;background:#41ff6e}[data-theme=terminal] h1,[data-theme=terminal] h2,[data-theme=terminal] h3,[data-theme=terminal] h4{font-size-adjust:.5;font-weight:400}[data-theme=terminal] .theme-overlay{z-index:60;pointer-events:none;background:repeating-linear-gradient(#0000 0 2px,#00000047 2px 3px),radial-gradient(#0000 55%,#0000008c);animation:crt-flicker 6s infinite;display:block;position:fixed;inset:0}[data-theme=terminal] .theme-overlay:after{content:"";background:linear-gradient(#0000,#41ff6e0d,#0000);height:140px;animation:crt-roll 8s linear infinite;position:absolute;left:0;right:0}@keyframes crt-flicker{0%,to{opacity:1}48%{opacity:.94}50%{opacity:1}}@keyframes crt-roll{0%{top:-140px}to{top:100%}}[data-theme=terminal] .hero-name:before{content:"jacob@portfolio:~$ whoami";color:var(--muted-foreground);font-family:var(--font-code);font-size-adjust:none;margin-bottom:.5rem;font-size:1rem;display:block}[data-theme=terminal] .hero-name:after{content:"█";margin-left:.15em;animation:blink 1s step-end infinite}[data-theme=terminal] section:not(.hero) h2{text-transform:uppercase}[data-theme=terminal] section:not(.hero) h2:before{content:"> "}[data-theme=terminal] .card h3:before{content:"# ";color:var(--muted-foreground)}[data-theme=terminal] .card{background:#41ff6e08;border:1px solid #41ff6e73;box-shadow:inset 0 0 18px #41ff6e0f}[data-theme=terminal] .theme-menu.card{background:#050a05}[data-theme=terminal] .btn-primary,[data-theme=terminal] .btn-secondary{text-shadow:none;border:1px solid #41ff6e}[data-theme=terminal] .btn-primary{color:#050a05;background:#41ff6e;box-shadow:0 0 12px #41ff6e73}[data-theme=terminal] .btn-primary:hover,[data-theme=terminal] .btn-secondary{color:#41ff6e;background:0 0}[data-theme=terminal] .btn-secondary:hover{color:#050a05;background:#41ff6e}[data-theme=terminal] .btn-primary:before,[data-theme=terminal] .btn-secondary:before{content:"[";margin-right:.35em}[data-theme=terminal] .btn-primary:after,[data-theme=terminal] .btn-secondary:after{content:"]";margin-left:.35em}[data-theme=terminal] .chip{--muted-foreground:#41ff6e;--secondary-foreground:#41ff6e;background:0 0;border:1px solid #41ff6e80}[data-theme=terminal] .field{color:#41ff6e;caret-color:#41ff6e;background:#000;border:1px solid #41ff6e80}[data-theme=terminal] .field:focus{border-color:#41ff6e;box-shadow:0 0 8px #41ff6e80}[data-theme=terminal] .field::placeholder{color:#41ff6e66}[data-theme=terminal] .heading-bar{background:repeating-linear-gradient(90deg,#41ff6e 0 8px,#0000 8px 12px);width:160px;height:2px;box-shadow:0 0 6px #41ff6e}[data-theme=terminal] .skill-track{background:0 0;border:1px solid #41ff6e80;height:12px;padding:2px}[data-theme=terminal] .skill-fill{background:repeating-linear-gradient(90deg,#41ff6e 0 6px,#0000 6px 8px);height:100%}[data-theme=terminal] .site-nav{-webkit-backdrop-filter:none;backdrop-filter:none;background:#050a05f0;border-bottom:1px dashed #41ff6e80}[data-theme=terminal] .site-logo:before{content:"$ ";color:var(--muted-foreground)}[data-theme=terminal] .code-window{-webkit-backdrop-filter:none;backdrop-filter:none;background:#000;border:1px solid #41ff6e80}[data-theme=terminal] .code-window-dots,[data-theme=terminal] .hero-glow{display:none}[data-theme=terminal] .code-window-title{color:#41ff6e}[data-theme=terminal] .code-window-title:before{content:"$ cat "}[data-theme=terminal] .code-cursor{display:inline}[data-theme=terminal] .code-cursor:after{content:"█";margin-left:.25em;animation:blink 1s step-end infinite}:root[data-theme=blueprint]{color-scheme:dark;--background:#174a82;--foreground:#f4f8ff;--card:#174a8299;--card-foreground:#f4f8ff;--popover:#1b5291;--popover-foreground:#f4f8ff;--primary:#fff;--primary-foreground:#174a82;--secondary:#ffffff1a;--secondary-foreground:#f4f8ff;--muted:#ffffff0f;--muted-foreground:#c9dcf4;--accent:#ffcf5c;--accent-foreground:#174a82;--destructive:#ff8a80;--border:#ffffff8c;--input:#fff9;--ring:#ffcf5c;--radius:0px;--font-heading:var(--font-architects),var(--font-body);--syntax-keyword:#ffcf5c;--syntax-string:#fff;--tech-typescript:#bfe1ff;--tech-react:#8fd3ff;--tech-svelte:#ffcf5c;--tech-solid:#d6e8ff;--tech-electron:#8fd3ff;--tech-nodejs:#c8f7c5;--skill-1:#fff;--skill-1-alt:#bfe1ff;--skill-2:#fff;--skill-3:#ffcf5c;--skill-track:transparent}[data-theme=blueprint] body{background-color:#174a82;background-image:linear-gradient(#ffffff29 1px,#0000 0),linear-gradient(90deg,#ffffff29 1px,#0000 0),linear-gradient(#ffffff0f 1px,#0000 0),linear-gradient(90deg,#ffffff0f 1px,#0000 0);background-position:-1px -1px;background-size:100px 100px,100px 100px,20px 20px,20px 20px}[data-theme=blueprint] .hero-role{color:#ffcf5c;font-family:var(--font-heading);letter-spacing:.2em;text-transform:uppercase;font-size:1.1rem}[data-theme=blueprint] section:not(.hero) h2{letter-spacing:.12em;text-transform:uppercase}[data-theme=blueprint] main{counter-reset:fig}[data-theme=blueprint] main .card{counter-increment:fig;box-shadow:none;background:#174a8299;border:1.5px solid #ffffffd9;position:relative}[data-theme=blueprint] main .card:before{content:"";pointer-events:none;border:1px dashed #ffffff59;position:absolute;inset:-7px}[data-theme=blueprint] main .card:after{content:"FIG. " counter(fig);color:#ffcf5c;font:400 .75rem/1.2 var(--font-architects),monospace;letter-spacing:.15em;background:#174a82;padding:0 .5rem;position:absolute;top:-.7rem;right:1rem}[data-theme=blueprint] .heading-bar{background:#fff;width:180px;height:1px;position:relative}[data-theme=blueprint] .heading-bar:after,[data-theme=blueprint] .heading-bar:before{content:"";background:#fff;width:1px;height:13px;position:absolute;top:-6px}[data-theme=blueprint] .heading-bar:before{left:0}[data-theme=blueprint] .heading-bar:after{right:0}[data-theme=blueprint] .btn-primary,[data-theme=blueprint] .btn-secondary{font-family:var(--font-heading);letter-spacing:.12em;text-transform:uppercase}[data-theme=blueprint] .btn-primary{color:#174a82;background:#fff;border:1.5px solid #fff}[data-theme=blueprint] .btn-primary:hover{color:#fff;background:0 0}[data-theme=blueprint] .btn-secondary{color:#fff;background:0 0;border:1.5px dashed #fff}[data-theme=blueprint] .btn-secondary:hover{background:#ffffff1a;border-style:solid}[data-theme=blueprint] .chip{--muted-foreground:#fff;--secondary-foreground:#fff;--primary:#ffcf5c;font-family:var(--font-heading);background:0 0;border:1px dashed #ffffffb3}[data-theme=blueprint] .field{color:#fff;background:0 0;border:0;border-bottom:1.5px solid #ffffffb3}[data-theme=blueprint] .field:focus{box-shadow:none;border-bottom-color:#ffcf5c}[data-theme=blueprint] .field::placeholder{color:#ffffff73}[data-theme=blueprint] .skill-track{border:1px solid #ffffffb3;height:12px}[data-theme=blueprint] .skill-fill{background-image:repeating-linear-gradient(45deg,#174a82 0 3px,#0000 3px 7px);height:100%}[data-theme=blueprint] .site-nav{-webkit-backdrop-filter:none;backdrop-filter:none;background:#174a82f0;border-bottom:3px double #fffc}[data-theme=blueprint] .site-logo{font-family:var(--font-heading);letter-spacing:.08em}[data-theme=blueprint] .code-window{-webkit-backdrop-filter:none;backdrop-filter:none;background:#174a82b3;border:1.5px solid #fff;padding-bottom:3.5rem}[data-theme=blueprint] .code-window:after{content:"DWG. NO. JC-001  · SCALE 1:1  · REV. 2026";color:#fff;font:.7rem var(--font-architects);letter-spacing:.12em;background:#174a82;border:1.5px solid #fff;padding:.35rem .75rem;position:absolute;bottom:-1.5px;right:-1.5px}[data-theme=blueprint] .code-window-dots,[data-theme=blueprint] .hero-glow{display:none}[data-theme=blueprint] .code-window-title{color:#fff;font-family:var(--font-heading);letter-spacing:.1em;text-transform:uppercase}[data-theme=blueprint] .bp-circle{aspect-ratio:1;background:linear-gradient(#ffffff38,#ffffff38) 50%/1px 100% no-repeat,linear-gradient(90deg,#ffffff38,#ffffff38) 50%/100% 1px no-repeat;border:1px dashed #ffffff4d;border-radius:50%;width:min(70vw,560px);display:block;position:absolute;top:50%;right:4%;translate:0 -50%}[data-theme=blueprint] .bp-circle:before{content:"";border:1px solid #fff3;border-radius:50%;position:absolute;inset:18%}:root[data-theme=notebook]{color-scheme:light;--background:#fdfcf7;--foreground:#2b2d42;--card:#fff6a9;--card-foreground:#2b2d42;--popover:#fffdf2;--popover-foreground:#2b2d42;--primary:#2f5ec4;--primary-foreground:#fff;--secondary:#efeadb;--secondary-foreground:#2b2d42;--muted:#efe9d8;--muted-foreground:#4a4e69;--accent:#e63946;--accent-foreground:#fff;--destructive:#d62828;--border:#2b2d42;--input:#2b2d42;--ring:#2f5ec4;--radius:4px;--font-body:var(--font-patrick),"Comic Sans MS",system-ui,sans-serif;--font-heading:var(--font-caveat),cursive;--syntax-keyword:#2f5ec4;--syntax-string:#e63946;--tech-typescript:#2f5ec4;--tech-react:#1d7f8c;--tech-svelte:#e76f51;--tech-solid:#3a5a9c;--tech-electron:#1d7f8c;--tech-nodejs:#2a9d4b;--skill-1:#2a9d4b;--skill-1-alt:#2f5ec4;--skill-2:#7b2cbf;--skill-3:#e76f51;--skill-track:transparent;--nb-sketch:255px 15px 225px 15px/15px 225px 15px 255px;--nb-margin:.75rem}@media (min-width:768px){:root[data-theme=notebook]{--nb-margin:3rem}}[data-theme=notebook] body{background-color:#fdfcf7;background-image:linear-gradient(90deg,transparent 0 calc(var(--nb-margin) - 1px),#e6394673 calc(var(--nb-margin) - 1px)calc(var(--nb-margin) + 1px),transparent calc(var(--nb-margin) + 1px)),repeating-linear-gradient(to bottom,transparent 0 31px,#cfe0f5 31px 32px);font-size:1.05rem}[data-theme=notebook] .hero-name{font-size:clamp(3.75rem,9vw,6.5rem);line-height:1}[data-theme=notebook] .hero-role{color:#e63946;font-size:2rem;rotate:-1.5deg}[data-theme=notebook] .nb-doodle{color:#e63946;font-family:var(--font-caveat),cursive;pointer-events:none;font-size:1.75rem;display:block;position:absolute;top:-2.6rem;left:.25rem;rotate:-5deg}[data-theme=notebook] .nb-doodle:after{content:" ⤵"}[data-theme=notebook] section:not(.hero) h2{background:linear-gradient(#0000 55%,#ffe066d9 55% 88%,#0000 88%);padding:0 .35em;font-size:clamp(2.5rem,5vw,3.25rem);display:inline-block;rotate:-1deg}[data-theme=notebook] .heading-bar{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='12' viewBox='0 0 24 12'%3E%3Cpath d='M0 6 Q6 0 12 6 T24 6' fill='none' stroke='%23e63946' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") 50%/24px 12px repeat-x;width:150px;height:12px}[data-theme=notebook] main .card{background:#fff6a9;border:none;border-radius:2px;transition:rotate .25s,scale .25s;position:relative;rotate:-.6deg;box-shadow:0 1px 1px #00000014,0 10px 18px -8px #00000040}[data-theme=notebook] main .card:nth-child(2n){background:#ffd6e0;rotate:.7deg}[data-theme=notebook] main .card:nth-child(3n){background:#d4f1ff;rotate:-.3deg}[data-theme=notebook] main .card:hover{rotate:none;scale:1.01}[data-theme=notebook] main .card:before{content:"";background:#fff9;border:1px solid #0000000f;width:96px;height:26px;position:absolute;top:-12px;left:50%;translate:-50%;rotate:-2deg;box-shadow:0 1px 2px #0000001a}[data-theme=notebook] .btn-primary,[data-theme=notebook] .btn-secondary{font-family:var(--font-caveat),cursive;border-radius:var(--nb-sketch);border:2px solid #2b2d42;font-size:1.35rem;font-weight:700;line-height:1.2;transition:translate .15s,box-shadow .15s;box-shadow:2px 3px #2b2d42}[data-theme=notebook] .btn-primary{color:#fff;background:#2f5ec4}[data-theme=notebook] .btn-secondary{color:#2b2d42;background:#fff}[data-theme=notebook] .btn-primary:hover,[data-theme=notebook] .btn-secondary:hover{translate:-1px -1px;box-shadow:3px 4px #2b2d42}[data-theme=notebook] .btn-primary:active,[data-theme=notebook] .btn-secondary:active{translate:1px 2px;box-shadow:0 0 #2b2d42}[data-theme=notebook] .chip{--muted-foreground:#2b2d42;--secondary-foreground:#2b2d42;border-radius:var(--nb-sketch);background:0 0;border:1.5px solid #2b2d42}[data-theme=notebook] .field{background:#ffffff8c;border:1.5px solid #2b2d42;border-radius:255px 8px 225px/8px 225px 8px 255px}[data-theme=notebook] .field:focus{box-shadow:2px 2px #2f5ec4}[data-theme=notebook] .skill-track{border-radius:var(--nb-sketch);border:1.5px solid #2b2d42;height:12px;padding:1px}[data-theme=notebook] .skill-fill{border-radius:var(--nb-sketch);background-image:repeating-linear-gradient(-45deg,#ffffff8c 0 2px,#0000 2px 6px);height:100%}[data-theme=notebook] .site-nav{background:#fdfcf7eb;border-bottom:2px solid #2b2d42}[data-theme=notebook] .site-logo{color:#2f5ec4;font-family:var(--font-caveat),cursive;font-size:1.75rem;line-height:1}[data-theme=notebook] .code-window{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff linear-gradient(#0000 0 2.9rem,#e639468c 2.9rem calc(2.9rem + 2px),#0000 0);border:none;border-radius:2px;rotate:1.2deg;box-shadow:0 12px 22px -8px #00000047}[data-theme=notebook] .code-window-dots,[data-theme=notebook] .hero-glow{display:none}[data-theme=notebook] .code-window-title{color:#e63946;font-family:var(--font-caveat),cursive;font-size:1.5rem}[data-theme=notebook] .code-window-body{font-family:var(--font-patrick),cursive;font-size:1.05rem}:root[data-theme=xp]{color-scheme:light;--background:#3a7bd5;--foreground:#fff;--card:#ece9d8;--card-foreground:#000;--popover:#ece9d8;--popover-foreground:#000;--primary:#fff;--primary-foreground:#0a246a;--secondary:#ffffff40;--secondary-foreground:#fff;--muted:#fff3;--muted-foreground:#eef4ff;--accent:#ffd200;--accent-foreground:#000;--destructive:#c00;--border:#ffffff80;--input:#7f9db9;--ring:#316ac5;--radius:3px;--font-body:Tahoma,Verdana,"Segoe UI",sans-serif;--font-heading:"Trebuchet MS",Tahoma,sans-serif;--font-code:"Lucida Console","Courier New",monospace;--syntax-keyword:#fff;--syntax-string:silver;--tech-typescript:#215dc6;--tech-react:#0b7a9b;--tech-svelte:#c8410b;--tech-solid:#2b4b9b;--tech-electron:#0b7a9b;--tech-nodejs:#2e7d32;--skill-1:#2ed330;--skill-1-alt:#2ed330;--skill-2:#2ed330;--skill-3:#2ed330;--skill-track:#fff}[data-theme=xp] body{text-shadow:0 1px 2px #0000008c;background-color:#3a7bd5;background-image:radial-gradient(18% 7% at 22% 16%,#ffffff80,#0000 70%),radial-gradient(12% 5% at 31% 20%,#ffffff59,#0000 70%),radial-gradient(22% 8% at 74% 12%,#fff6,#0000 70%),radial-gradient(120% 55% at 30% 118%,#7cc444 0 30%,#4f9e2c 58%,#0000 58.5%),radial-gradient(110% 50% at 95% 124%,#5aa832 0 30%,#3d8a20 58%,#0000 58.5%),linear-gradient(#1f5fc8,#3f86e0 35%,#8cc1f2 70%,#cfe7fb);background-attachment:fixed}[data-theme=xp] section h2{text-shadow:1px 2px 3px #0009}[data-theme=xp] .hero-glow{display:none}[data-theme=xp] .card{--foreground:#000;--muted-foreground:#3b3b3b;--primary:#215dc6;--muted:#f4f3ee;--secondary:#f4f3ee;--secondary-foreground:#000;--border:#aca899;color:var(--foreground);text-shadow:none;background:linear-gradient(#0a5de8,#3b8cf7 3px,#2c78f0 10px,#0b5be0 22px,#0750d0 28px) top/100% 28px no-repeat,#ece9d8;border:3px solid #0b5be0;border-top:0;border-radius:8px 8px 0 0;padding-top:calc(28px + 1.25rem);position:relative;box-shadow:2px 3px 8px #00000059}[data-theme=xp] main .card:after{content:"✕";color:#fff;background:linear-gradient(#e8794d,#d45a2c 50%,#c44116);border:1px solid #fff;border-radius:3px;place-items:center;width:21px;height:21px;font:700 12px/1 Tahoma,sans-serif;display:grid;position:absolute;top:4px;right:5px}[data-theme=xp] .site-nav{-webkit-backdrop-filter:none;backdrop-filter:none;background:linear-gradient(#3168d5,#4993e6 4%,#2f6fd8 10%,#2157d7 50%,#245edb 88%,#1941a5);border-bottom:1px solid #0c2f7a;box-shadow:0 2px 6px #0000004d}[data-theme=xp] .btn-primary,[data-theme=xp] .site-logo{color:#fff;text-shadow:1px 1px 1px #1a4a1a;background:linear-gradient(#4ec04e,#379a37 15%,#3fa63f 40%,#2f8a2f 85%,#2a7d2a);border:1px solid #1f5a1f;border-radius:4px 14px 14px 4px;font-family:Trebuchet MS,Tahoma,sans-serif;font-style:italic;font-weight:700;box-shadow:inset 0 1px 1px #ffffff8c,inset 0 -2px 3px #00000040,1px 2px 4px #00000059}[data-theme=xp] .site-logo{padding:.15rem 1.1rem .15rem .8rem}[data-theme=xp] .btn-primary:hover{filter:brightness(1.08)}[data-theme=xp] .btn-primary:active{filter:brightness(.92)}[data-theme=xp] .btn-secondary{color:#000;text-shadow:none;background:linear-gradient(#fff,#f3f3ef 50%,#ecebe6 80%,#d6d0c5);border:1px solid #003c74;border-radius:3px}[data-theme=xp] .btn-secondary:hover{box-shadow:inset 0 2px #ffe7a2,inset 0 -2px #f9b33b,inset 2px 0 #fbd77c,inset -2px 0 #fbd77c}@media (min-width:1024px){[data-theme=xp] .hero-sticker{color:#000;width:16rem;text-shadow:none;background:#ffffe1;border:1px solid #000;border-radius:8px;padding:.6rem .8rem;font:12px/1.45 Tahoma,sans-serif;display:block;position:absolute;bottom:calc(100% + 1rem);right:0;box-shadow:2px 3px 6px #0000004d}[data-theme=xp] .hero-sticker:before{content:"ⓘ Welcome to Jacob’s portfolio";margin-bottom:.2rem;font-weight:700;display:block}[data-theme=xp] .hero-sticker:after{content:"Click Get In Touch to say hi, or scroll down to see what I’ve been building."}}[data-theme=xp] .chip{--muted-foreground:#000;--secondary-foreground:#000;--primary:#215dc6;text-shadow:none;background:#fff;border:1px solid #7f9db9;border-radius:2px}[data-theme=xp] .field{color:#000;background:#fff;border:1px solid #7f9db9;border-radius:0}[data-theme=xp] .field:focus{box-shadow:none;border-color:#316ac5}[data-theme=xp] .heading-bar{background:repeating-linear-gradient(90deg,#0000 0 8px,#fff 8px 10px) content-box content-box,linear-gradient(#acedad,#2ed330 50%,#8fe791) 0 0/70% 100% no-repeat content-box content-box,#fff;width:150px}[data-theme=xp] .heading-bar,[data-theme=xp] .skill-track{border:1px solid #686868;border-radius:3px;height:16px;padding:2px;box-shadow:inset 0 1px 2px #0003}[data-theme=xp] .skill-track{background:#fff}[data-theme=xp] .skill-fill{background:repeating-linear-gradient(90deg,#0000 0 8px,#fff 8px 10px),linear-gradient(#acedad,#7be47d 15%,#4cda50 30%,#2ed330 50%,#42d845 70%,#76e275 85%,#8fe791);border-radius:0;height:100%}[data-theme=xp] .code-window{-webkit-backdrop-filter:none;backdrop-filter:none;background:#000;border:3px solid #0b5be0;border-top:0;border-radius:8px 8px 0 0;padding:0;overflow:hidden;box-shadow:3px 4px 12px #00000073}[data-theme=xp] .code-window-bar{background:linear-gradient(#0a5de8,#3b8cf7 10%,#2c78f0 35%,#0b5be0 80%,#0750d0);height:30px;margin-block-end:0;padding:0 5px 0 8px}[data-theme=xp] .code-window-dots{display:none}[data-theme=xp] .code-window-title{color:#fff;text-shadow:1px 1px #0a1e5a;font:700 13px Trebuchet MS,Tahoma,sans-serif}[data-theme=xp] .code-window-title:before{content:"Command Prompt - "}[data-theme=xp] .win-controls{gap:2px;margin-left:auto;display:flex}[data-theme=xp] .win-controls>span{color:#fff;background:linear-gradient(#3c80f6,#2663e0 60%,#1d55d0);border:1px solid #fff;border-radius:3px;place-items:center;width:21px;height:21px;font:700 11px/1 Tahoma,sans-serif;display:grid}[data-theme=xp] .win-controls>.win-close{background:linear-gradient(#e8794d,#d45a2c 50%,#c44116)}[data-theme=xp] .win-min:before{content:"_"}[data-theme=xp] .win-max:before{content:"□"}[data-theme=xp] .win-close:before{content:"✕"}[data-theme=xp] .code-window-body{--muted-foreground:silver;--tech-typescript:silver;--tech-react:silver;--tech-svelte:silver;--tech-solid:silver;--tech-nodejs:silver;color:silver;text-shadow:none;background:#000;padding:1rem 1.25rem 1.5rem}[data-theme=xp] .code-window-body:before{content:"C:\\Documents and Settings\\Jacob> type developer.ts";margin-bottom:.75rem;display:block}@property --pac-mouth{syntax:"<angle>";inherits:false;initial-value:35deg}:root[data-theme=arcade]{color-scheme:dark;--background:#000;--foreground:#fff;--card:#000;--card-foreground:#fff;--popover:#000;--popover-foreground:#fff;--primary:#ffd800;--primary-foreground:#000;--secondary:#113;--secondary-foreground:#fff;--muted:#0a0a1f;--muted-foreground:#c9c9f5;--accent:#2121de;--accent-foreground:#fff;--destructive:#ff3b3b;--border:#2121de;--input:#2121de;--ring:#ffd800;--radius:10px;--syntax-keyword:#ffb8ff;--syntax-string:#ffd800;--tech-typescript:#0ff;--tech-react:#0ff;--tech-svelte:#ffb852;--tech-solid:#ffb8ff;--tech-electron:#0ff;--tech-nodejs:#ff3b3b;--skill-1:#ff2a2a;--skill-1-alt:#ffb8ff;--skill-2:#0ff;--skill-3:#ffb852;--skill-track:#0a0a1f}[data-theme=arcade] .site-logo,[data-theme=arcade] h1,[data-theme=arcade] h2{font-family:var(--font-press-start),monospace;font-weight:400;line-height:1.4}[data-theme=arcade] .hero-name{color:#ffd800;text-shadow:4px 4px #2121de;font-size:clamp(2rem,5vw,3.5rem)}[data-theme=arcade] .hero-role{color:#0ff;font-size:clamp(.8rem,1.6vw,1rem)}[data-theme=arcade] section:not(.hero) h2{font-size:clamp(1.1rem,3vw,1.6rem)}[data-theme=arcade] .card h3{letter-spacing:.04em;text-transform:uppercase}[data-theme=arcade] .hero-glow{display:none}[data-theme=arcade] .hero-sticker{color:#ff3b3b;font:.75rem/1 var(--font-press-start),monospace;letter-spacing:.1em;animation:blink 1.2s step-end infinite;display:block;position:absolute;bottom:calc(100% + .75rem);left:0}[data-theme=arcade] .hero-sticker:before{content:"INSERT COIN"}[data-theme=arcade] .card{background:#000;border:4px double #2121de;border-radius:12px;box-shadow:0 0 12px #2121de8c,inset 0 0 12px #2121de59}[data-theme=arcade] .heading-bar{background:radial-gradient(circle,#ffb8ae 0 3px,#0000 3.5px) 0/22px 22px repeat-x;border-radius:0;width:220px;height:22px;position:relative}[data-theme=arcade] .heading-bar:before{content:"";background:#000;width:0;animation:pac-eat 4s linear infinite;position:absolute;top:0;bottom:0;left:0}[data-theme=arcade] .heading-bar:after{content:"";background:conic-gradient(#ffd800 0deg calc(90deg - var(--pac-mouth)),transparent 0deg calc(90deg + var(--pac-mouth)),#ffd800 0deg);border-radius:50%;width:22px;height:22px;animation:pac-move 4s linear infinite,pac-chomp .25s ease-in-out infinite alternate;position:absolute;top:0;left:0}@keyframes pac-move{0%{left:0}to{left:calc(100% - 22px)}}@keyframes pac-eat{0%{width:0}to{width:calc(100% - 11px)}}@keyframes pac-chomp{0%{--pac-mouth:40deg}to{--pac-mouth:2deg}}[data-theme=arcade] .btn-primary,[data-theme=arcade] .btn-secondary{font-family:var(--font-press-start),monospace;letter-spacing:.05em;text-transform:uppercase;border-radius:4px;font-size:.75rem;line-height:1.4}[data-theme=arcade] .btn-primary{color:#000;background:#ffd800;border:2px solid #ffd800;box-shadow:4px 4px #2121de}[data-theme=arcade] .btn-primary:hover{background:#fff;border-color:#fff}[data-theme=arcade] .btn-primary:active{translate:2px 2px;box-shadow:2px 2px #2121de}[data-theme=arcade] .btn-secondary{color:#fff;background:#000;border:2px solid #2121de}[data-theme=arcade] .btn-secondary:hover{color:#0ff;border-color:#0ff}[data-theme=arcade] .chip{--muted-foreground:#fff;--secondary-foreground:#fff}[data-theme=arcade] .chip,[data-theme=arcade] .field{background:#000;border:2px solid #2121de;border-radius:6px}[data-theme=arcade] .field{color:#fff}[data-theme=arcade] .field:focus{box-shadow:none;border-color:#ffd800}[data-theme=arcade] .field::placeholder{color:#6b6bb0}[data-theme=arcade] .skill-track{background:#0a0a1f;border:2px solid #2121de;border-radius:6px;height:12px;overflow:hidden}[data-theme=arcade] .skill-fill{background-image:radial-gradient(circle,#0000008c 0 1.5px,#0000 2px);background-position:0;background-repeat:repeat-x;background-size:8px 8px;border-radius:0;height:100%}[data-theme=arcade] .site-nav{-webkit-backdrop-filter:none;backdrop-filter:none;background:#000;border-bottom:4px double #2121de}[data-theme=arcade] .site-logo{color:#ffd800;font-size:.8rem}[data-theme=arcade] .code-window{-webkit-backdrop-filter:none;backdrop-filter:none;background:#000;border:4px double #2121de;border-radius:14px;box-shadow:0 0 16px #2121de80}[data-theme=arcade] .code-window-dots{display:none}[data-theme=arcade] .code-window-title{color:#ffd800;font-family:var(--font-press-start),monospace;font-size:.6rem}[data-theme=arcade] .code-window-title:before{content:"1UP · "}:root[data-theme=comic]{color-scheme:dark;--background:#0f1f4f;--foreground:#f2f5ff;--card:#fff;--card-foreground:#111;--popover:#fff;--popover-foreground:#111;--primary:#ff3b47;--primary-foreground:#fff;--secondary:#1b3d91;--secondary-foreground:#fff;--muted:#0b173d;--muted-foreground:#c8d0ec;--accent:#1b3d91;--accent-foreground:#fff;--destructive:#ff3b47;--border:#000;--input:#111;--ring:#df1f2d;--radius:4px;--font-heading:var(--font-bangers),Impact,sans-serif;--syntax-keyword:#c8102e;--syntax-string:#1b3d91;--tech-typescript:#1b3d91;--tech-react:#0e7490;--tech-svelte:#c2410c;--tech-solid:#1d4ed8;--tech-electron:#0e7490;--tech-nodejs:#15803d;--skill-1:#df1f2d;--skill-1-alt:#1b3d91;--skill-2:#1b3d91;--skill-3:#df1f2d;--skill-track:#fff}[data-theme=comic] body{background-color:#0f1f4f;background-image:radial-gradient(#ffffff12 1.5px,#0000 2px),linear-gradient(#0b173d,#142a6b 60%,#0f1f4f);background-size:12px 12px,100% 100%;background-attachment:fixed}[data-theme=comic] .hero-decor{background:repeating-conic-gradient(at 72% 22%,#ffffff12 0deg 3deg,#0000 3deg 11deg)}[data-theme=comic] .hero-glow{display:none}[data-theme=comic] h1,[data-theme=comic] h2,[data-theme=comic] h3{letter-spacing:.04em;font-weight:400}[data-theme=comic] .hero-name{color:#df1f2d;-webkit-text-stroke:3px #000;paint-order:stroke fill;text-shadow:6px 6px #000;font-size:clamp(3.75rem,9vw,6.5rem);line-height:.95}[data-theme=comic] .hero-role{color:#111;font-family:var(--font-heading);letter-spacing:.06em;background:#ffe14d;border:3px solid #000;padding:.15em .6em;font-size:1.6rem;display:inline-block;rotate:-1.5deg;box-shadow:4px 4px #000}[data-theme=comic] section:not(.hero) h2{color:#fff;text-shadow:3px 3px #df1f2d,6px 6px #000;font-size:clamp(2.5rem,6vw,3.5rem);rotate:-2deg}[data-theme=comic] .hero-sticker{--burst:polygon(50% 0%,61% 18%,82% 8%,78% 30%,100% 35%,83% 50%,100% 66%,78% 70%,84% 92%,62% 82%,50% 100%,38% 82%,16% 92%,22% 70%,0% 66%,17% 50%,0% 35%,22% 30%,18% 8%,39% 18%);aspect-ratio:1;pointer-events:none;width:8.5rem;display:block;position:absolute;top:-2rem;right:0;rotate:12deg}[data-theme=comic] .hero-sticker:after,[data-theme=comic] .hero-sticker:before{clip-path:var(--burst);position:absolute}[data-theme=comic] .hero-sticker:before{content:"";background:#000;inset:0}[data-theme=comic] .hero-sticker:after{content:attr(data-sfx);color:#df1f2d;font:1.6rem var(--font-bangers);letter-spacing:.04em;-webkit-text-stroke:1px #000;background:#ffe14d;place-items:center;display:grid;inset:7px}[data-theme=comic] .card{--foreground:#111;--muted-foreground:#333;--primary:#c8102e;--muted:#eef1fb;--secondary:#eef1fb;--secondary-foreground:#111;--border:#111;color:var(--foreground);background:#fff;border:3px solid #000;border-radius:4px;box-shadow:6px 6px #000}[data-theme=comic] main .card:nth-child(3n){box-shadow:6px 6px #df1f2d}[data-theme=comic] .btn-primary,[data-theme=comic] .btn-secondary{color:#fff;font-family:var(--font-heading);letter-spacing:.08em;text-shadow:2px 2px #000;border:3px solid #000;border-radius:4px;font-size:1.25rem;font-weight:400;transition:translate .12s,box-shadow .12s;box-shadow:4px 4px #000}[data-theme=comic] .btn-primary{background:#df1f2d}[data-theme=comic] .btn-secondary{background:#1b3d91}[data-theme=comic] .btn-primary:hover,[data-theme=comic] .btn-secondary:hover{translate:-2px -2px;box-shadow:6px 6px #000}[data-theme=comic] .btn-primary:active,[data-theme=comic] .btn-secondary:active{translate:2px 2px;box-shadow:1px 1px #000}[data-theme=comic] .chip{--muted-foreground:#111;--secondary-foreground:#111;font-weight:700}[data-theme=comic] .chip,[data-theme=comic] .field{background:#fff;border:2px solid #000;border-radius:3px}[data-theme=comic] .field{color:#111}[data-theme=comic] .field:focus{box-shadow:3px 3px #df1f2d}[data-theme=comic] .heading-bar{background:linear-gradient(90deg,#df1f2d 50%,#1b3d91 0);border:2px solid #000;border-radius:0;width:130px;height:10px;transform:skew(-20deg)}[data-theme=comic] .skill-track{background:#fff;border:2px solid #000;border-radius:3px;height:14px}[data-theme=comic] .skill-fill{background-image:repeating-linear-gradient(45deg,#00000059 0 1px,#0000 1px 7px),repeating-linear-gradient(-45deg,#00000059 0 1px,#0000 1px 7px);border-radius:0;height:100%}[data-theme=comic] .site-nav{background:#0b173deb;border-bottom:3px solid #df1f2d}[data-theme=comic] .site-logo{color:#ff3b47;font-family:var(--font-heading);letter-spacing:.05em;text-shadow:2px 2px #000;font-size:1.6rem;font-weight:400}[data-theme=comic] .code-window{--muted-foreground:#222;color:#111;-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff;border:3px solid #000;border-radius:28px;box-shadow:6px 6px #000}[data-theme=comic] .code-window:after,[data-theme=comic] .code-window:before{content:"";clip-path:polygon(0 0,100% 0,8% 100%);position:absolute}[data-theme=comic] .code-window:before{background:#000;width:46px;height:36px;bottom:-34px;left:56px}[data-theme=comic] .code-window:after{background:#fff;width:34px;height:29px;bottom:-26px;left:61px}[data-theme=comic] .code-window-dots{display:none}[data-theme=comic] .code-window-title{color:#df1f2d;font-family:var(--font-heading);letter-spacing:.05em;font-size:1.3rem}:root[data-theme=tacoma]{color-scheme:dark;--background:#141210;--foreground:#f3eee8;--card:#1d1a17;--card-foreground:#f3eee8;--popover:#1d1a17;--popover-foreground:#f3eee8;--primary:#d23a4c;--primary-foreground:#fff;--secondary:#26221e;--secondary-foreground:#f3eee8;--muted:#191613;--muted-foreground:#bdb3a8;--accent:#c9ccd1;--accent-foreground:#141210;--destructive:#ff6b6b;--border:#332d27;--input:#3a332c;--ring:#d23a4c;--radius:6px;--font-heading:var(--font-saira),"Arial Narrow",sans-serif;--syntax-keyword:#ff6b7a;--syntax-string:#e9dccb;--tech-typescript:#ff8a96;--tech-react:#c9ccd1;--tech-svelte:#ff6b7a;--tech-solid:#c9ccd1;--tech-electron:#c9ccd1;--tech-nodejs:#e9dccb;--skill-1:#8f1d2c;--skill-1-alt:#8f1d2c;--skill-2:#8f1d2c;--skill-3:#8f1d2c;--skill-track:#0e0c0b;--paint:linear-gradient(180deg,#b02436,#7e1424 40%,#5a0c17 80%,#3d070f);--chrome:linear-gradient(180deg,#f1f2f4,#b9bcc1 50%,#d7d9dc)}[data-theme=tacoma] body{background-color:#141210;background-image:radial-gradient(circle at 12% 18%,#5a433059 0 3px,#0000 4px),radial-gradient(circle at 15% 22%,#5a43304d 0 2px,#0000 3px),radial-gradient(circle at 84% 64%,#5a433059 0 4px,#0000 5px),radial-gradient(circle at 88% 60%,#5a433040 0 2px,#0000 3px),radial-gradient(circle at 46% 86%,#5a43304d 0 3px,#0000 4px),radial-gradient(at 50% 0,#211c18,#0000 60%);background-attachment:fixed}[data-theme=tacoma] .hero-decor{background:linear-gradient(0deg,#2a221b 0 5%,#3b3027 5% 6%,#0000 6%),url(/themes/tacoma-ridges.svg) 50% bottom 5%/100% no-repeat}[data-theme=tacoma] .hero-decor:before{content:"";opacity:.7;background:url(/themes/speed.svg) 0 0/600px 240px;animation:tacoma-dust .7s linear infinite;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000 55%,#000 90%);mask-image:linear-gradient(#0000 55%,#000 90%)}[data-theme=tacoma] .hero-truck{aspect-ratio:340/160;background:url(/themes/tacoma-body.svg) 50%/contain no-repeat;width:clamp(200px,24vw,340px);animation:tacoma-bounce .9s ease-in-out infinite;display:block;position:absolute;bottom:4.5%;right:6%}[data-theme=tacoma] .hero-wheel{aspect-ratio:1;background:url(/themes/tacoma-tire.svg) 50%/contain no-repeat;width:18.2353%;animation:tacoma-spin .55s linear infinite;position:absolute;top:79.375%;left:26.1765%;translate:-50% -50%}[data-theme=tacoma] .hero-wheel+.hero-wheel{left:79.1177%}@keyframes tacoma-spin{to{rotate:1turn}}@media (max-width:1023px){[data-theme=tacoma] .hero-truck{display:none}}@keyframes tacoma-dust{to{background-position:-600px 0}}@keyframes tacoma-bounce{0%,to{translate:0}30%{translate:0 -2px}60%{translate:0 1px}}[data-theme=tacoma] h1,[data-theme=tacoma] h2,[data-theme=tacoma] h3{text-transform:uppercase;font-style:italic;font-weight:800}[data-theme=tacoma] .hero-name{color:#fff;font-size:clamp(3.5rem,8vw,6rem);line-height:.95}[data-theme=tacoma] .hero-name:after{content:"";background:linear-gradient(90deg,#c9ccd1 0 50%,#0000 50% 56%,#6b6e74 56% 76%,#0000 76% 82%,#2b2b2f 82%);width:7rem;height:7px;margin-top:.75rem;display:block;transform:skew(-35deg)}[data-theme=tacoma] .hero-role{color:var(--primary);font-family:var(--font-heading);letter-spacing:.25em;text-transform:uppercase;font-size:1.1rem;font-style:normal;font-weight:600}[data-theme=tacoma] section:not(.hero) h2{font-size:clamp(2.25rem,5vw,3rem)}[data-theme=tacoma] .hero-glow{display:none}[data-theme=tacoma] .hero-sticker{color:#f1f2f4;font:italic 800 1.6rem/1 var(--font-saira),sans-serif;background:var(--paint);border:2px solid #c9ccd1;border-radius:6px;place-items:center;padding:.2rem .9rem;display:grid;position:absolute;top:-3.75rem;right:0;rotate:-4deg}[data-theme=tacoma] .hero-sticker:before{content:"4×4"}@media (min-width:1024px){[data-theme=tacoma] .hero-sticker{font-size:2.25rem;top:-.5rem}}[data-theme=tacoma] .card{background:linear-gradient(#211d19,#1a1714);border:1px solid #332d27;border-top:4px solid #7e1424;box-shadow:0 10px 24px -12px #000000b3}[data-theme=tacoma] .heading-bar{background:url(/themes/bar-tread.svg) 50%/contain no-repeat;width:160px;height:16px}[data-theme=tacoma] .btn-primary,[data-theme=tacoma] .btn-secondary{font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;border-radius:6px;font-style:italic;font-weight:800}[data-theme=tacoma] .btn-primary{color:#fff;background:var(--paint);text-shadow:0 1px 1px #00000080;border:1px solid #3d070f;box-shadow:inset 0 1px #ffffff40,0 2px #2a050a}[data-theme=tacoma] .btn-primary:hover{filter:brightness(1.15)}[data-theme=tacoma] .btn-secondary{color:#1a1a1a;background:var(--chrome);border:1px solid #8c9096}[data-theme=tacoma] .btn-secondary:hover{filter:brightness(1.05)}[data-theme=tacoma] .chip{--muted-foreground:#e9dccb;--secondary-foreground:#e9dccb;background:#26221e;border:1px solid #3a332c}[data-theme=tacoma] .field{color:#f3eee8;background:#0f0d0c;border:1px solid #3a332c}[data-theme=tacoma] .field:focus{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}[data-theme=tacoma] .skill-track{background:#0e0c0b;border:1px solid #332d27;height:12px}[data-theme=tacoma] .skill-fill{background:repeating-linear-gradient(135deg,#00000059 0 3px,transparent 3px 8px),var(--paint);height:100%}[data-theme=tacoma] .site-nav{background:#0f0d0ceb;border-bottom:2px solid #7e1424}[data-theme=tacoma] .site-logo{color:#fff;font-family:var(--font-heading);text-transform:uppercase;align-items:center;gap:.6rem;font-style:italic;font-weight:800;display:inline-flex}[data-theme=tacoma] .site-logo:before{content:"";background:url(/themes/tacoma.svg) 50%/contain no-repeat;width:44px;height:18px}[data-theme=tacoma] .code-window{-webkit-backdrop-filter:none;backdrop-filter:none;background:linear-gradient(#121010,#0b0a09);border:1px solid #332d27;border-top:4px solid #7e1424}[data-theme=tacoma] .code-window-dots{display:none}[data-theme=tacoma] .code-window-title{color:#bdb3a8;font-family:var(--font-heading);letter-spacing:.15em;text-transform:uppercase;font-weight:600}[data-theme=tacoma] .code-window-title:before{content:"● 4WD HI   ";color:#6ee06e;text-shadow:0 0 6px #6ee06e}:root[data-theme-group=nature]{--font-heading:var(--font-fraunces),Georgia,serif;--radius:14px;--card-foreground:var(--foreground);--popover:var(--background);--popover-foreground:var(--foreground);--secondary-foreground:var(--foreground);--accent-foreground:#fff;--destructive:#c0392b;--input:var(--border);--ring:var(--primary);--syntax-keyword:var(--primary);--syntax-string:var(--accent);--tech-typescript:var(--primary);--tech-react:var(--accent);--tech-svelte:var(--accent);--tech-solid:var(--primary);--tech-electron:var(--accent);--tech-nodejs:var(--primary);--skill-1:var(--primary);--skill-1-alt:var(--accent);--skill-2:var(--accent);--skill-3:var(--primary);--skill-track:var(--secondary);--page-bg:var(--background);--scene:none;--p1:none;--p1-inset:0;--p1-height:auto;--p1-anim:none;--p1-opacity:1;--p1-filter:none;--p2:none;--p2-inset:0;--p2-height:auto;--p2-anim:none;--p2-opacity:1;--scene-opacity:1;--logo-icon:url(/themes/icon-pine.svg);--heading-bar:url(/themes/bar-vine.svg);--skill-tip:url(/themes/icon-leaf.svg);--card-radius:22px 6px 22px 6px;--card-shadow:0 10px 24px -14px #00000073;--field-bg:var(--background);--wood:#8b5a2b,#9a6634 40%,#85552a;--wood-edge:#5a3a1c;--sign-text:#f6ecd6;--sign-keyword:#c9e89a;--sign-string:#ffd28a;--sign-type:#bfe0ff}:root:is([data-theme=appalachia-night],[data-theme=chattahoochee-night],[data-theme=rainforest],[data-theme=aurora],[data-theme=okefenokee]){--wood:#4a3220,#56392a 40%,#3f2a1b;--wood-edge:#24170c;--sign-text:#eadfc6}[data-theme-group=nature] body{background:var(--page-bg);background-attachment:fixed}[data-theme-group=nature] .hero-decor{opacity:var(--scene-opacity);background:var(--scene)}[data-theme-group=nature] .hero-decor:after,[data-theme-group=nature] .hero-decor:before{content:"";pointer-events:none;position:absolute}[data-theme-group=nature] .hero-decor:before{inset:var(--p1-inset);height:var(--p1-height);opacity:var(--p1-opacity);filter:var(--p1-filter);background:var(--p1);animation:var(--p1-anim)}[data-theme-group=nature] .hero-decor:after{inset:var(--p2-inset);height:var(--p2-height);opacity:var(--p2-opacity);background:var(--p2);animation:var(--p2-anim)}[data-theme-group=nature] .hero-name{color:var(--hero-name,var(--foreground));letter-spacing:-.02em;font-variation-settings:"SOFT" 100,"WONK" 1;font-weight:800}[data-theme-group=nature] .hero-role{color:var(--accent);font-family:var(--font-heading);font-style:italic}[data-theme-group=nature] .hero-glow{display:none}[data-theme-group=nature] .site-nav{background:var(--background)}@supports (color:color-mix(in lab,red,red)){[data-theme-group=nature] .site-nav{background:color-mix(in srgb,var(--background)88%,transparent)}}[data-theme-group=nature] .site-nav{border-bottom:1px solid var(--border)}[data-theme-group=nature] .site-logo{font-family:var(--font-heading);align-items:center;gap:.5rem;display:inline-flex}[data-theme-group=nature] .site-logo:before{content:"";background:var(--logo-icon)center/contain no-repeat;width:22px;height:22px}[data-theme-group=nature] .card{background:var(--card);border:1px solid var(--border);border-radius:var(--card-radius);box-shadow:var(--card-shadow)}[data-theme-group=nature] .theme-menu.card{background:var(--popover)}[data-theme-group=nature] .heading-bar{background:var(--heading-bar)center/contain no-repeat;border-radius:0;width:150px;height:22px}[data-theme-group=nature] .btn-primary,[data-theme-group=nature] .btn-secondary{border-radius:999px}[data-theme-group=nature] .btn-primary{color:var(--primary-foreground);background:var(--primary);box-shadow:0 6px 14px -6px var(--primary)}@supports (color:color-mix(in lab,red,red)){[data-theme-group=nature] .btn-primary{box-shadow:0 6px 14px -6px color-mix(in srgb,var(--primary)70%,transparent)}}[data-theme-group=nature] .btn-primary:hover{filter:brightness(1.1)}[data-theme-group=nature] .btn-secondary{color:var(--primary);background:var(--card)}@supports (color:color-mix(in lab,red,red)){[data-theme-group=nature] .btn-secondary{background:color-mix(in srgb,var(--card)70%,transparent)}}[data-theme-group=nature] .btn-secondary{border:1.5px solid var(--primary)}[data-theme-group=nature] .btn-secondary:hover{background:var(--secondary)}[data-theme-group=nature] .chip{--muted-foreground:var(--foreground);background:var(--secondary);border:1px solid var(--border)}[data-theme-group=nature] .field{background:var(--field-bg);border:1px solid var(--border);border-radius:12px}[data-theme-group=nature] .field:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary)}@supports (color:color-mix(in lab,red,red)){[data-theme-group=nature] .field:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--primary)25%,transparent)}}[data-theme-group=nature] .skill-fill{position:relative}[data-theme-group=nature] .skill-fill:after{content:"";background:var(--skill-tip)center/contain no-repeat;width:16px;height:16px;position:absolute;top:50%;right:-7px;translate:0 -50%}[data-theme-group=nature] .code-window{--muted-foreground:var(--sign-text);--syntax-keyword:var(--sign-keyword);--syntax-string:var(--sign-string);--tech-typescript:var(--sign-type);--tech-react:var(--sign-type);--tech-svelte:var(--sign-string);--tech-solid:var(--sign-type);--tech-nodejs:var(--sign-keyword);color:var(--sign-text);text-shadow:0 1px #00000059;background:radial-gradient(circle at 14px 14px,#d8d2c4 0 3px,#5c544a 3.5px 4.5px,transparent 5px),radial-gradient(circle at calc(100% - 14px)14px,#d8d2c4 0 3px,#5c544a 3.5px 4.5px,transparent 5px),radial-gradient(circle at 14px calc(100% - 14px),#d8d2c4 0 3px,#5c544a 3.5px 4.5px,transparent 5px),radial-gradient(circle at calc(100% - 14px)calc(100% - 14px),#d8d2c4 0 3px,#5c544a 3.5px 4.5px,transparent 5px),repeating-linear-gradient(0deg,transparent 0 54px,#1e0f0573 54px 56px),repeating-linear-gradient(0deg,#ffffff08 0 3px,#0000000d 3px 7px),linear-gradient(90deg,var(--wood));border:6px solid var(--wood-edge);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:10px;box-shadow:0 14px 28px -10px #140c0599,inset 0 0 0 1px #ffffff14}[data-theme-group=nature] .code-window-dots{display:none}[data-theme-group=nature] .code-window-title{color:var(--sign-text);font-family:var(--font-heading);font-size:.95rem;font-style:italic}@keyframes nb-fall-leaves{0%{transform:translate(0)}25%{transform:translate(24px,320px)}50%{transform:translate(-12px,640px)}75%{transform:translate(18px,960px)}to{transform:translateY(1280px)}}@keyframes nb-fall-leaves-far{50%{transform:translate(-16px,448px)}to{transform:translateY(896px)}}@keyframes nb-snow{50%{transform:translate(14px,300px)}to{transform:translateY(600px)}}@keyframes nb-rain{to{transform:translateY(300px)}}@keyframes nb-rain-far{to{transform:translateY(200px)}}@keyframes nb-drift{to{transform:translate(-1440px)}}@keyframes nb-flow{to{background-position:-360px 0}}@keyframes nb-float{0%,to{transform:translate(0)}50%{transform:translate(12px,-16px)}}@keyframes nb-aurora{0%{opacity:.7;transform:translate(0)skew(0deg)scaleY(1)}to{opacity:1;transform:translate(-5%)skew(-10deg)scaleY(1.25)}}:root[data-theme=autumn]{color-scheme:light;--background:#f4f1e6;--foreground:#1f2d1f;--card:#fbfaf4;--primary:#2f6b3a;--primary-foreground:#f4f1e6;--secondary:#e3e8d6;--muted:#e9e6d6;--muted-foreground:#4f5d4a;--accent:#c26a2e;--border:#cfd5bf;--hero-name:#1f3d24;--tech-typescript:#2f6b8a;--tech-react:#2f7f7f;--tech-svelte:#b5562a;--tech-solid:#4a6b8a;--tech-electron:#2f7f7f;--tech-nodejs:#4f7a2e;--skill-1:#4f7a2e;--skill-1-alt:#2f6b8a;--skill-2:#8a5a2e;--skill-3:#c28a2e;--skill-track:#e3e0cf;--field-bg:#fffef9;--page-bg:#f4f1e6 url(/themes/topo.svg) center/cover no-repeat;--scene:url(/themes/mountains.svg) bottom center/100% auto no-repeat,radial-gradient(circle at 78% 34%,#ffd2828c,transparent 22%);--p1:url(/themes/leaves.svg) 0 0/840px 1280px repeat;--p1-inset:-1280px 0 0 0;--p1-anim:nb-fall-leaves 48s linear infinite;--p2:url(/themes/leaves.svg) 280px 0/588px 896px repeat;--p2-inset:-896px 0 0 0;--p2-anim:nb-fall-leaves-far 40s linear infinite;--p2-opacity:.5}:root[data-theme=appalachia-day]{color-scheme:light;--background:#f3f7ef;--foreground:#1d2b1f;--card:#ffffffe6;--primary:#2f6b3a;--primary-foreground:#fff;--secondary:#e1ebdc;--muted:#e6ede1;--muted-foreground:#4d5f50;--accent:#3b82c4;--border:#cdd9c8;--hero-name:#1f4a29;--skill-1-alt:#4f845c;--skill-3:#6f9f7c;--field-bg:#fbfdf9;--page-bg:linear-gradient(180deg,#cfe6f7 0%,#e8f2f8 35%,#f3f7ef 70%);--scene:url(/themes/appalachia-day.svg) bottom center/100% auto no-repeat,radial-gradient(circle at 82% 18%,#ffecaaf2 0 3.5%,#ffecaa59 7%,transparent 18%);--p1:url(/themes/clouds.svg) 0 4%/1440px 260px repeat-x;--p1-inset:0 -1440px 0 0;--p1-anim:nb-drift 90s linear infinite;--p1-opacity:.85;--logo-icon:url(/themes/icon-ridge-day.svg);--heading-bar:url(/themes/bar-blaze.svg)}:root[data-theme=appalachia-night]{color-scheme:dark;--background:#0b1220;--foreground:#e7ecf5;--card:#16213adb;--primary:#f2d46b;--primary-foreground:#1a1405;--secondary:#1c2a46;--muted:#121c33;--muted-foreground:#a9b6cc;--accent:#a6e36b;--accent-foreground:#0f1a05;--border:#26355a;--destructive:#ff7a7a;--skill-track:#1c2a46;--field-bg:#0e172a;--card-shadow:0 12px 28px -14px #000c;--page-bg:url(/themes/stars.svg) 0 0/500px 500px,linear-gradient(180deg,#050a16 0%,#0b1220 50%,#101a30);--scene:url(/themes/appalachia-night.svg) bottom center/100% auto no-repeat,radial-gradient(circle at 80% 22%,#fdf6d8 0 2.6%,#fdf6d840 4%,transparent 14%);--p1:url(/themes/fireflies.svg) 0 0/900px 600px repeat;--p1-inset:40% 0 0 0;--logo-icon:url(/themes/icon-ridge-night.svg);--heading-bar:url(/themes/bar-blaze-night.svg)}:is([data-theme=appalachia-day],[data-theme=appalachia-night],[data-theme=chattahoochee-day],[data-theme=chattahoochee-night]) .hero-sticker{aspect-ratio:1;filter:drop-shadow(0 4px 6px #0000004d);background:url(/themes/summit-marker.svg) 50%/contain no-repeat;width:5rem;display:block;position:absolute;bottom:calc(100% + .5rem);right:0;rotate:-8deg}@media (min-width:1024px){:is([data-theme=appalachia-day],[data-theme=appalachia-night],[data-theme=chattahoochee-day],[data-theme=chattahoochee-night]) .hero-sticker{width:6.5rem}}:root:is([data-theme=chattahoochee-day],[data-theme=chattahoochee-night]){--p1:url(/themes/speed.svg) 0 0/360px 72px repeat;--p1-inset:auto 0 0 0;--p1-height:calc(100vw*80/1440);--p1-anim:nb-flow 3s linear infinite;--p1-opacity:.6}:root[data-theme=chattahoochee-day]{color-scheme:light;--background:#f1f5ea;--foreground:#1c2b20;--card:#ffffffe6;--primary:#2e6b45;--primary-foreground:#fff;--secondary:#dfe9d8;--muted:#e4ecdd;--muted-foreground:#4b5e4f;--accent:#c2507e;--border:#cbd8c4;--hero-name:#1f4a30;--field-bg:#fbfdf9;--page-bg:linear-gradient(180deg,#e3efd9,#f1f5ea 50%);--scene:url(/themes/chattahoochee-day.svg) bottom center/100% auto no-repeat,repeating-linear-gradient(105deg,#fff4c838 0 50px,transparent 50px 170px);--p1-opacity:.7}:root[data-theme=chattahoochee-night]{color-scheme:dark;--background:#070f0c;--foreground:#e0ece6;--card:#0f1c17e0;--primary:#6ff2d0;--primary-foreground:#04120d;--secondary:#12241d;--muted:#0c1813;--muted-foreground:#9fb8ad;--accent:#f2d46b;--accent-foreground:#1a1405;--border:#1d3229;--skill-track:#12241d;--field-bg:#091410;--card-shadow:0 12px 28px -14px #000000d9;--page-bg:url(/themes/stars.svg) 0 0/500px 500px,linear-gradient(180deg,#04090a,#070f0c 60%);--scene:url(/themes/chattahoochee-night.svg) bottom center/100% auto no-repeat,radial-gradient(ellipse 7% 1.6% at 20% 93%,#f4f1dc66,transparent),radial-gradient(circle at 20% 20%,#f4f1dc 0 2.4%,#f4f1dc33 4%,transparent 12%);--p1-opacity:.35;--p2:url(/themes/foxfire.svg) 0 100%/700px 220px repeat-x;--p2-inset:auto 0 10% 0;--p2-height:220px;--logo-icon:url(/themes/icon-pine-night.svg);--heading-bar:url(/themes/bar-vine-night.svg)}:root[data-theme=woods]{color-scheme:light;--background:#eceee2;--foreground:#232a1c;--card:#fbfbf5f0;--primary:#4a6b2f;--primary-foreground:#fff;--secondary:#dfe3d0;--muted:#e3e6d6;--muted-foreground:#4f5843;--accent:#b5452a;--border:#cdd2bb;--hero-name:#2d3a1f;--skill-3:#7a5a3a;--field-bg:#fafaf3;--page-bg:linear-gradient(180deg,#e4e8d6,#eceee2);--scene:url(/themes/woods.svg) bottom center/100% auto no-repeat,repeating-linear-gradient(110deg,#fff8d266 0 40px,transparent 40px 160px);--scene-opacity:.55;--p1:url(/themes/fireflies.svg) 0 0/900px 600px repeat;--p1-anim:nb-float 14s ease-in-out infinite;--p1-opacity:.45;--logo-icon:url(/themes/icon-mushroom.svg)}:root[data-theme=rockies]{color-scheme:light;--background:#f1f5f9;--foreground:#1b2a3a;--card:#ffffffe6;--primary:#2f5d8a;--primary-foreground:#fff;--secondary:#dde6ef;--muted:#e3eaf1;--muted-foreground:#4d5d6e;--accent:#b8860b;--border:#c9d5e1;--hero-name:#1f3c5c;--skill-1-alt:#4f86b8;--skill-2:#d9a21b;--field-bg:#fafcfd;--page-bg:linear-gradient(180deg,#cfe1f2,#eaf1f8 45%,#f1f5f9);--scene:url(/themes/rockies.svg) bottom center/100% auto no-repeat,radial-gradient(circle at 15% 15%,#ffffffb3,transparent 25%);--p1:url(/themes/leaves.svg) 0 0/840px 1280px repeat;--p1-inset:-1280px 0 0 0;--p1-anim:nb-fall-leaves 52s linear infinite;--p1-opacity:.6;--logo-icon:url(/themes/icon-peak.svg);--heading-bar:url(/themes/bar-peaks.svg)}:root[data-theme=desert]{color-scheme:light;--background:#fbf1e4;--foreground:#3b2418;--card:#fffaf3eb;--primary:#b4502a;--primary-foreground:#fff;--secondary:#f3e2cf;--muted:#f5e6d4;--muted-foreground:#6e4c3a;--accent:#2a7d78;--border:#e6cdb3;--hero-name:#6b2e14;--skill-1-alt:#d9822b;--skill-3:#8f3f1e;--field-bg:#fffcf7;--page-bg:linear-gradient(180deg,#f9d8a8 0%,#fbe6cb 30%,#fbf1e4 60%);--scene:url(/themes/desert.svg) bottom center/100% auto no-repeat,radial-gradient(circle at 40% 80%,#ffd27a 0 5%,#ffb46480 9%,transparent 24%),linear-gradient(180deg,transparent 30%,#f58b5440 75%);--logo-icon:url(/themes/icon-saguaro.svg);--heading-bar:url(/themes/bar-zigzag.svg);--wood:#9a7b5f,#a8896c 40%,#8a6d53;--wood-edge:#6b5340}:root[data-theme=rainforest]{color-scheme:dark;--background:#0b1d15;--foreground:#e3f2e8;--card:#12291ee0;--primary:#4fd18b;--primary-foreground:#06140d;--secondary:#163526;--muted:#102619;--muted-foreground:#a9c9b6;--accent:#ff9f43;--accent-foreground:#1a0d02;--border:#1f4532;--skill-track:#163526;--field-bg:#0a1810;--card-shadow:0 12px 28px -14px #000c;--page-bg:linear-gradient(180deg,#0f2a1d,#0b1d15);--scene:url(/themes/rainforest-canopy.svg) top center/100% auto no-repeat,url(/themes/rainforest.svg) bottom center/100% auto no-repeat,radial-gradient(ellipse at 50% 40%,#4fd18b1f,transparent 60%);--p1:url(/themes/rain.svg) 0 0/300px 300px repeat;--p1-inset:-300px 0 0 0;--p1-anim:nb-rain .6s linear infinite;--p2:url(/themes/rain.svg) 100px 0/200px 200px repeat;--p2-inset:-200px 0 0 0;--p2-anim:nb-rain-far .9s linear infinite;--p2-opacity:.6;--logo-icon:url(/themes/icon-leaf.svg);--heading-bar:url(/themes/bar-vine-night.svg)}:root[data-theme=aurora]{color-scheme:dark;--background:#050b18;--foreground:#e8f1ff;--card:#0d1830d9;--primary:#5cf2b6;--primary-foreground:#03140d;--secondary:#13223f;--muted:#0b1630;--muted-foreground:#a9b8d6;--accent:#b388ff;--accent-foreground:#12052b;--border:#1f3156;--skill-track:#13223f;--field-bg:#071024;--card-shadow:0 12px 28px -14px #000000d9;--page-bg:url(/themes/stars.svg) 0 0/500px 500px,linear-gradient(180deg,#02060f,#050b18 60%,#0a1430);--scene:url(/themes/aurora.svg) bottom center/100% auto no-repeat;--p1:repeating-linear-gradient(90deg,#ffffff0d 0 3px,transparent 3px 14px),radial-gradient(ellipse 40% 16% at 30% 28%,#5cf2b699,transparent 70%),radial-gradient(ellipse 35% 12% at 58% 20%,#5cf2b673,transparent 70%),radial-gradient(ellipse 30% 14% at 76% 32%,#b388ff73,transparent 70%);--p1-inset:0 -10% 30% -10%;--p1-filter:blur(18px);--p1-anim:nb-aurora 9s ease-in-out infinite alternate;--p2:url(/themes/snow.svg) 0 0/600px 600px repeat;--p2-inset:-600px 0 0 0;--p2-anim:nb-snow 22s linear infinite;--p2-opacity:.8;--logo-icon:url(/themes/icon-snowflake.svg);--heading-bar:url(/themes/bar-aurora.svg);--skill-tip:none}:root[data-theme=georgia-coast]{color-scheme:light;--background:#fbf5e8;--foreground:#2c2a22;--card:#fffdf7eb;--primary:#2f6f7a;--primary-foreground:#fff;--secondary:#efe6d2;--muted:#f2ead8;--muted-foreground:#5e5846;--accent:#b5762a;--border:#e1d6bd;--hero-name:#24484f;--skill-1-alt:#7fa9b8;--skill-3:#8f9a4a;--field-bg:#fffdf8;--page-bg:linear-gradient(180deg,#fde7c2 0%,#fbefd9 35%,#fbf5e8 70%);--scene:url(/themes/georgia-coast.svg) bottom center/100% auto no-repeat,radial-gradient(circle at 42% 84%,#ffd68ccc 0 4%,#ffc8784d 9%,transparent 22%);--p1:url(/themes/speed.svg) 0 0/360px 72px repeat;--p1-inset:auto 0 0 0;--p1-height:calc(100vw*48/1440);--p1-anim:nb-flow 7s linear infinite;--p1-opacity:.6;--logo-icon:url(/themes/icon-oak.svg);--heading-bar:url(/themes/bar-wave.svg);--wood:#b3a897,#c2b8a8 40%,#a39887;--wood-edge:#7d7466;--sign-text:#2c2a22;--sign-keyword:#24484f;--sign-string:#7a4a14;--sign-type:#2f5f8a}[data-theme=georgia-coast] .code-window{text-shadow:none}:root[data-theme=okefenokee]{color-scheme:dark;--background:#121a14;--foreground:#e6eadc;--card:#1b261de0;--primary:#d9b44a;--primary-foreground:#1a1404;--secondary:#1f2c22;--muted:#18221a;--muted-foreground:#b0b8a5;--accent:#7fb069;--accent-foreground:#0d1a08;--border:#2b3a2e;--skill-track:#1f2c22;--field-bg:#0f1611;--card-shadow:0 12px 28px -14px #000c;--page-bg:linear-gradient(180deg,#2a1f2e 0%,#1a1a1c 30%,#121a14 60%);--scene:url(/themes/okefenokee.svg) bottom center/100% auto no-repeat,radial-gradient(circle at 62% 58%,#ffbe7880 0 3%,transparent 14%),linear-gradient(180deg,#f0965a4d 0%,#8c5a782e 35%,transparent 60%);--p1:url(/themes/fireflies.svg) 0 0/900px 600px repeat;--p1-inset:45% 0 0 0;--p1-anim:nb-float 10s ease-in-out infinite;--p1-opacity:.8;--logo-icon:url(/themes/icon-cypress.svg);--heading-bar:url(/themes/bar-vine-night.svg)}:root{color-scheme:dark;--background:#0f131a;--foreground:#edf2f7;--card:#131720;--card-foreground:#edf2f7;--popover:#131720;--popover-foreground:#edf2f7;--primary:#16a249;--primary-foreground:#0f131a;--secondary:#2b303b;--secondary-foreground:#edf2f7;--muted:#21242c;--muted-foreground:#9aa1ac;--accent:#16a249;--accent-foreground:#0f131a;--destructive:#ef4343;--destructive-foreground:#edf2f7;--border:#2b303b;--input:#2b303b;--ring:#16a249;--radius:.5rem;--font-body:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-heading:var(--font-body);--font-code:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--syntax-keyword:var(--primary);--syntax-string:var(--accent);--tech-typescript:#5297e0;--tech-react:#60d9fb;--tech-svelte:#ff4000;--tech-solid:#0da2e7;--tech-electron:#00bdd6;--tech-nodejs:#69a064;--skill-1:oklch(76.5% .177 163.223);--skill-1-alt:oklch(74.6% .16 232.661);--skill-2:oklch(70.2% .183 293.541);--skill-3:oklch(82.8% .189 84.429);--skill-track:oklch(37.2% .044 257.287)}.dark{--background:#0f131a;--foreground:#edf2f7;--card:#131720;--card-foreground:#edf2f7;--popover:#131720;--popover-foreground:#edf2f7;--primary:#16a249;--primary-foreground:#0f131a;--secondary:#2b303b;--secondary-foreground:#edf2f7;--muted:#21242c;--muted-foreground:#9aa1ac;--accent:#16a249;--accent-foreground:#0f131a;--destructive:#ef4343;--destructive-foreground:#edf2f7;--border:#2b303b;--input:#2b303b;--ring:#16a249}.code-cursor,.hero-decor>*,.hero-sticker,.mc-splash,.nb-doodle,.theme-overlay,.win-controls{display:none}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:fadeInUp .6s ease-out forwards}.animate-delay-100{animation-delay:.1s}.animate-delay-200{animation-delay:.2s}.animate-delay-300{animation-delay:.3s}@keyframes blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes toastLeave{to{opacity:0;transform:translateY(12px)scale(.97)}}.toast-leave{animation:toastLeave .25s ease-in forwards}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@keyframes spin{to{transform:rotate(1turn)}}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}