.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}/*! tailwindcss v4.2.2 | 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)))){*,:before,:after,::backdrop{--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight: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-duration:initial}}}@layer theme{:root,:host{--font-sans:"IBM Plex Sans", system-ui, sans-serif;--font-mono:"IBM Plex Mono", "Courier New", monospace;--spacing:.25rem;--container-xl:36rem;--container-2xl:42rem;--container-5xl:64rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--leading-tight:1.25;--leading-relaxed:1.625;--leading-loose:2;--radius-md:.375rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-neon:#00d4ff;--color-neon-purple:#bf00ff;--color-neon-green:#0f8;--color-bg-dark:#050508;--color-surface-dark:#0d0d1a;--color-surface-2-dark:#12122a;--color-bg-light:#f0f4ff;--color-surface-light:#e8eeff;--color-surface-2-light:#dde5ff;--color-border-light:#1e50dc33;--color-text-primary-light:#0f1545;--color-text-muted-light:#4a558a;--color-text-muted:#89b;--font-display:"Space Grotesk", system-ui, sans-serif}}@layer base{*,:after,:before,::backdrop{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}html,:host{-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,samp,pre{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}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,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{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-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{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.-inset-\[3px\]{inset:-3px}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.top-2{top:calc(var(--spacing) * 2)}.top-5{top:calc(var(--spacing) * 5)}.right-0{right:calc(var(--spacing) * 0)}.bottom-0{bottom:calc(var(--spacing) * 0)}.bottom-2{bottom:calc(var(--spacing) * 2)}.left-0{left:calc(var(--spacing) * 0)}.left-\[7px\]{left:7px}.z-50{z-index:50}.z-\[1\]{z-index:1}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-auto{margin-inline:auto}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.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-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.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-8{height:calc(var(--spacing) * 8)}.h-\[15px\]{height:15px}.h-px{height:1px}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-2{width:calc(var(--spacing) * 2)}.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-8{width:calc(var(--spacing) * 8)}.w-\[15px\]{width:15px}.w-\[260px\]{width:260px}.w-full{width:100%}.w-px{width:1px}.max-w-2xl{max-width:var(--container-2xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-xl{max-width:var(--container-xl)}.min-w-0{min-width:calc(var(--spacing) * 0)}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.cursor-default{cursor:default}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-around{justify-content:space-around}.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-8{gap:calc(var(--spacing) * 8)}: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)))}.self-start{align-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.object-cover{object-fit:cover}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.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-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-16{padding-block:calc(var(--spacing) * 16)}.py-20{padding-block:calc(var(--spacing) * 20)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.font-display{font-family:var(--font-display)}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--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-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-loose{--tw-leading:var(--leading-loose);line-height:var(--leading-loose)}.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-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.italic{font-style:italic}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-40{opacity:.4}.ring,.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + 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)}.ring-\[rgba\(0\,212\,255\,0\.2\)\]{--tw-ring-color:#00d4ff33}.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-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.delay-100{transition-delay:.1s}.delay-200{transition-delay:.2s}.delay-300{transition-delay:.3s}.delay-400{transition-delay:.4s}.delay-500{transition-delay:.5s}.delay-600{transition-delay:.6s}.delay-700{transition-delay:.7s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}@media(hover:hover){.group-hover\:text-\[\#00d4ff\]:is(:where(.group):hover *){color:#00d4ff}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}.last\:mb-0:last-child{margin-bottom:calc(var(--spacing) * 0)}@media(hover:hover){.hover\:text-\[var\(--cyan\)\]:hover{color:var(--cyan)}}.focus\:not-sr-only:focus{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.focus\:fixed:focus{position:fixed}.focus\:top-4:focus{top:calc(var(--spacing) * 4)}.focus\:left-4:focus{left:calc(var(--spacing) * 4)}.focus\:z-\[999\]:focus{z-index:999}.focus\:rounded-md:focus{border-radius:var(--radius-md)}.focus\:px-4:focus{padding-inline:calc(var(--spacing) * 4)}.focus\:py-2:focus{padding-block:calc(var(--spacing) * 2)}.focus\:font-mono:focus{font-family:var(--font-mono)}.focus\:text-xs:focus{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}@media(min-width:48rem){.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:pl-10{padding-left:calc(var(--spacing) * 10)}}@media(min-width:64rem){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-\[1fr_280px\]{grid-template-columns:1fr 280px}.lg\:grid-cols-\[1fr_320px\]{grid-template-columns:1fr 320px}.lg\:py-0{padding-block:calc(var(--spacing) * 0)}}}:root{--text-bright:#c8d8f8;--text-body:#c8d8f8e0;--text-muted:#c8d8f8a6;--text-dim:#c8d8f88c;--cyan:#00d4ff;--cyan-mid:#00d4ffb3;--cyan-soft:#00d4ff80;--cyan-dim:#00d4ff8c;--green-pure:#0f8;--green-bright:#00ff88e6;--green-mid:#00ff88b3;--purple-bright:#bf00ffe6;--purple-mid:#bf00ff80;--bg-cyan-10:#00d4ff1a;--bg-cyan-05:#00d4ff0d;--bg-cyan-08:#00d4ff14;--bg-green-08:#00ff8814;--bg-purple-08:#bf00ff14;--bg-purple-05:#bf00ff0d;--border-cyan-40:#00d4ff66;--border-cyan-30:#00d4ff4d;--border-cyan-15:#00d4ff26;--border-cyan-10:#00d4ff1a;--border-green-30:#00ff884d;--border-green-15:#00ff8826;--border-green-10:#00ff881a;--border-purple-30:#bf00ff4d;--border-purple-15:#bf00ff26}html.light{--text-bright:#0f172a;--text-body:#1e293b;--text-muted:#475569;--text-dim:#64748b;--cyan:#0369a1;--cyan-mid:#0369a1;--cyan-soft:#0284c7;--cyan-dim:#38bdf8;--green-pure:#059669;--green-bright:#059669;--green-mid:#10b981;--purple-bright:#7c3aed;--purple-mid:#8b5cf6;--bg-cyan-10:#0369a11a;--bg-cyan-05:#0369a10d;--bg-cyan-08:#0369a112;--bg-green-08:#05966914;--bg-purple-08:#7c3aed14;--bg-purple-05:#7c3aed0d;--border-cyan-40:#0369a166;--border-cyan-30:#0369a14d;--border-cyan-15:#0369a133;--border-cyan-10:#0369a11f;--border-green-30:#05966959;--border-green-15:#05966933;--border-green-10:#0596691f;--border-purple-30:#7c3aed59;--border-purple-15:#7c3aed33}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-sans);color:#c8d8f8;background-color:#050508;min-height:100vh;overflow-x:hidden}html.light body{color:#0f1545!important;background-color:#f0f4ff!important}html.light .glitch,html.light .neon-text,html.light .animate-neon-pulse{text-shadow:none!important}html.light .terminal-window{box-shadow:0 2px 12px #00000014}html.light .neon-glow,html.light .neon-border{box-shadow:none}.font-display{font-family:var(--font-display)}.font-mono{font-family:var(--font-mono)}.terminal-window{background:var(--color-surface-dark);border:1px solid #00d4ff33;border-radius:8px;transition:border-color .3s,box-shadow .3s;overflow:hidden;box-shadow:0 0 0 1px #00d4ff0d,0 4px 30px #0006,inset 0 0 20px #00d4ff05}html.light .terminal-window{background:var(--color-surface-light);border-color:var(--color-border-light);box-shadow:0 4px 20px #00000008,inset 0 0 10px #1e50dc05}html.light .terminal-window:hover{border-color:#1e50dc4d;box-shadow:0 8px 30px #0000000f,0 0 15px #1e50dc14}.terminal-window:hover{border-color:#00d4ff66;box-shadow:0 0 0 1px #00d4ff1a,0 8px 40px #00000080,0 0 20px #00d4ff0d,inset 0 0 20px #00d4ff08}.terminal-bar{background:var(--color-surface-2-dark);font-family:var(--font-mono);color:#00d4ffb3;letter-spacing:.02em;border-bottom:1px solid #00d4ff26;align-items:center;gap:8px;padding:10px 16px;font-size:.75rem;display:flex}html.light .terminal-bar{background:var(--color-surface-2-light);border-bottom-color:var(--color-border-light);color:#0077b6}.terminal-bar:before{content:"";background:#ff5f57;border-radius:50%;flex-shrink:0;width:8px;height:8px;box-shadow:14px 0 #ffbd2e,28px 0 #28ca41}.terminal-bar span{margin-left:36px}.terminal-content{padding:20px 24px}.terminal-prompt:before{content:"$ ";color:var(--color-neon);font-family:var(--font-mono)}.neon-text{color:var(--color-neon);text-shadow:0 0 7px #00d4ffcc,0 0 15px #00d4ff80,0 0 30px #00d4ff4d}.neon-border{border:1px solid #00d4ff66;box-shadow:0 0 8px #00d4ff33,inset 0 0 8px #00d4ff0d}.neon-glow{box-shadow:0 0 20px #00d4ff4d,0 0 40px #00d4ff1a}.glitch{position:relative}.glitch:before,.glitch:after{content:attr(data-text);width:100%;height:100%;position:absolute;top:0;left:0}.glitch:before{color:var(--color-neon-purple);clip-path:inset(0 0 100%);animation:4s linear infinite glitch-1}.glitch:after{color:var(--color-neon);clip-path:inset(0 0 100%);animation:4s linear .15s infinite glitch-2}@keyframes glitch-1{0%,85%,to{clip-path:inset(0 0 100%);transform:translate(0)}86%{clip-path:inset(33% 0 40%);transform:translate(-3px,1px)}88%{clip-path:inset(70% 0 5%);transform:translate(3px,-1px)}90%{clip-path:inset(10% 0 75%);transform:translate(-2px,2px)}92%{clip-path:inset(55% 0 28%);transform:translate(2px)}94%{clip-path:inset(80% 0 10%);transform:translate(-3px,-1px)}96%{clip-path:inset(20% 0 60%);transform:translate(1px,2px)}98%{clip-path:inset(45% 0 42%);transform:translate(-1px)}}@keyframes glitch-2{0%,85%,to{clip-path:inset(0 0 100%);transform:translate(0)}87%{clip-path:inset(60% 0 20%);transform:translate(3px)}89%{clip-path:inset(15% 0 68%);transform:translate(-3px,1px)}91%{clip-path:inset(78% 0 8%);transform:translate(2px,-2px)}93%{clip-path:inset(38% 0 50%);transform:translate(-2px,1px)}95%{clip-path:inset(5% 0 88%);transform:translate(3px)}97%{clip-path:inset(62% 0 25%);transform:translate(-1px,-1px)}99%{clip-path:inset(28% 0 55%);transform:translate(2px,2px)}}.scanlines{pointer-events:none;background:repeating-linear-gradient(#0000 0 3px,#0000000a 3px 4px)}html.light .scanlines{opacity:.15;background:repeating-linear-gradient(#0000 0 3px,#1e50dc05 3px 4px)}@keyframes neon-pulse{0%,to{opacity:1;text-shadow:0 0 7px #00d4ffcc,0 0 15px #00d4ff80}50%{opacity:.85;text-shadow:0 0 4px #00d4ff99,0 0 10px #00d4ff4d}}@keyframes blink-cursor{0%,to{opacity:1}50%{opacity:0}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-in-left{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes border-glow-pulse{0%,to{border-color:#00d4ff33}50%{border-color:#00d4ff80}}.animate-fade-in-up{opacity:0;animation:.6s cubic-bezier(.16,1,.3,1) forwards fade-in-up}.animate-slide-in-left{opacity:0;animation:.5s cubic-bezier(.16,1,.3,1) forwards slide-in-left}.animate-neon-pulse{animation:3s ease-in-out infinite neon-pulse}.cursor-blink:after{content:"▋";color:var(--color-neon);margin-left:2px;animation:1.2s step-end infinite blink-cursor}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.delay-600{animation-delay:.6s}.delay-700{animation-delay:.7s}@keyframes spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.avatar-glow-ring{background:conic-gradient(#00d4ffcc,#bf00ff99,#00d4ffcc);border-radius:50%;animation:4s linear infinite spin-slow}html.light .avatar-glow-ring{background:conic-gradient(#0369a1b3,#7c3aed80,#0369a1b3)}@media(prefers-reduced-motion:reduce){.avatar-glow-ring{background:#00d4ff66;animation:none}}.skill-tag{font-family:var(--font-mono);color:#00d4ffd9;letter-spacing:.03em;background:#00d4ff0d;border:1px solid #00d4ff40;border-radius:4px;align-items:center;padding:4px 12px;font-size:.7rem;font-weight:500;transition:all .2s;display:inline-flex}html.light .skill-tag{color:#0077b6;background:#0077b614;border-color:#0077b64d}.skill-tag:hover{color:var(--color-neon);background:#00d4ff1f;border-color:#00d4ff99;box-shadow:0 0 8px #00d4ff33}html.light .skill-tag:hover{color:#005f99;background:#0077b626;border-color:#0077b680;box-shadow:0 0 8px #0077b626}.skill-tag-purple{color:#bf00ffd9;background:#bf00ff0d;border-color:#bf00ff40}html.light .skill-tag-purple{color:#9600cc;background:#9600cc14;border-color:#9600cc4d}.skill-tag-purple:hover{color:var(--color-neon-purple);background:#bf00ff1f;border-color:#bf00ff99;box-shadow:0 0 8px #bf00ff33}html.light .skill-tag-purple:hover{color:#7a00a3;background:#9600cc26;border-color:#9600cc80;box-shadow:0 0 8px #9600cc26}.skill-tag-green{color:#00ff88d9;background:#00ff880d;border-color:#00ff8840}html.light .skill-tag-green{color:#00b35f;background:#00b35f14;border-color:#00b35f4d}.skill-tag-green:hover{color:var(--color-neon-green);background:#00ff881f;border-color:#0f89;box-shadow:0 0 8px #0f83}html.light .skill-tag-green:hover{color:#008f4c;background:#00b35f26;border-color:#00b35f80;box-shadow:0 0 8px #00b35f26}.skill-tag-amber{color:#ffaa00d9;background:#ffaa000d;border-color:#ffaa0040}html.light .skill-tag-amber{color:#c80;background:#cc880014;border-color:#cc88004d}.skill-tag-amber:hover{color:#fa0;background:#ffaa001f;border-color:#fa09;box-shadow:0 0 8px #fa03}html.light .skill-tag-amber:hover{color:#a36d00;background:#cc880026;border-color:#cc880080;box-shadow:0 0 8px #cc880026}.sidebar-link{font-family:var(--font-mono);color:var(--color-text-muted);letter-spacing:.03em;border:1px solid #0000;border-radius:6px;align-items:center;gap:10px;padding:8px 12px;font-size:.78rem;text-decoration:none;transition:all .2s;display:flex}.sidebar-link:hover,.sidebar-link.active,.sidebar-link:focus-visible{color:var(--color-neon);text-shadow:0 0 8px #00d4ff80;outline-offset:2px;background:#00d4ff0d;border-color:#00d4ff26;outline:2px solid #00d4ff80}.sidebar-link:before{content:">";opacity:0;color:var(--color-neon);font-size:.7rem;transition:opacity .2s}.sidebar-link:hover:before,.sidebar-link.active:before{opacity:1}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--color-bg-dark)}::-webkit-scrollbar-thumb{background:#00d4ff4d;border-radius:2px}::-webkit-scrollbar-thumb:hover{background:#00d4ff99}.theme-btn-icon{flex-shrink:0;width:1rem;height:1rem;position:relative}.theme-sun,.theme-moon{width:100%;height:100%;transition:opacity .2s cubic-bezier(.16,1,.3,1);position:absolute;inset:0}html.dark .theme-sun{opacity:1}html.dark .theme-moon{opacity:0}html.dark .theme-to-light{display:inline}html.dark .theme-to-dark{display:none}html.light .theme-sun{opacity:0}html.light .theme-moon{opacity:1}html.light .theme-to-light{display:none}html.light .theme-to-dark{display:inline}@media(prefers-reduced-motion:reduce){.theme-sun,.theme-moon{transition:none}}.mobile-nav-item{border-radius:10px;flex:1;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:4px;text-decoration:none;transition:color .2s,background .2s;display:flex}.mobile-nav-item:hover,.mobile-nav-item.active{background:#00d4ff14;color:#00d4ff!important}.mobile-nav-item:focus-visible{outline-offset:2px;outline:2px solid #00d4ff99}.mobile-util-pill{z-index:60;-webkit-backdrop-filter:blur(8px);background:#0d0d1ad9;border:1px solid #00d4ff26;border-radius:20px;align-items:center;gap:2px;padding:4px 6px;display:flex;position:fixed;top:12px;right:12px}html.light .mobile-util-pill{background:#e6ecffe6;border-color:#0369a133}.mobile-util-btn{color:#00d4ffcc;border-radius:14px;justify-content:center;align-items:center;min-width:32px;min-height:32px;padding:4px;text-decoration:none;transition:background .2s;display:flex}.mobile-util-btn:hover{background:#00d4ff1a}.mobile-util-btn:focus-visible{outline-offset:1px;outline:2px solid #00d4ff99}@media(max-width:768px){.sidebar-desktop{display:none}.mobile-nav{padding:0 8px;padding-bottom:env(safe-area-inset-bottom,0px);height:calc(60px + env(safe-area-inset-bottom,0px));display:flex}.main-content{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px));margin-left:0!important}}@media(min-width:769px){.mobile-util-pill,.mobile-nav{display:none}.main-content{margin-left:260px}}::selection{color:var(--color-neon);background:#00d4ff40}html.light aside{background:var(--color-surface-2-light)!important;border-right-color:var(--color-border-light)!important}html.light nav.mobile-nav{background:var(--color-surface-2-light)!important;border-top-color:var(--color-border-light)!important}html.light .sidebar-link{color:var(--color-text-muted-light)}html.light .sidebar-link:hover,html.light .sidebar-link.active{color:#05a;text-shadow:none;background:#0077b614;border-color:#0077b633}html.light .terminal-content p,html.light .terminal-content blockquote{color:var(--color-text-primary-light)!important}html.light .font-sans{color:var(--color-text-primary-light)}html.light ::-webkit-scrollbar-track{background:var(--color-bg-light)}html.light ::-webkit-scrollbar-thumb{background:#0077b64d}html.light ::-webkit-scrollbar-thumb:hover{background:#0077b699}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.cta-btn-cyan{background:var(--bg-cyan-10);border:1px solid var(--border-cyan-40);color:var(--cyan)}.cta-btn-cyan:hover,.cta-btn-cyan:focus-visible{background:var(--bg-cyan-08);border-color:var(--cyan-soft);outline:2px solid var(--cyan-dim);outline-offset:2px}.cta-btn-purple{background:var(--bg-purple-08);border:1px solid var(--border-purple-30);color:var(--purple-bright)}.cta-btn-purple:hover,.cta-btn-purple:focus-visible{background:var(--bg-purple-05);border-color:var(--purple-bright);outline:2px solid var(--purple-mid);outline-offset:2px}.contact-link{border:1px solid var(--border-cyan-10)}.contact-link:hover,.contact-link:focus-visible{background:var(--bg-cyan-05);border-color:var(--border-cyan-30);outline:2px solid var(--cyan-dim);outline-offset:2px}.terminal-content{overflow-wrap:break-word;word-break:break-word}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{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-duration{syntax:"*";inherits:false}
