:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--brand-primary:37 99 235;--brand-secondary:139 92 246;--brand-accent:99 102 241;--color-background:var(--lightningcss-light,#fff)var(--lightningcss-dark,#18181b);--color-surface:var(--lightningcss-light,#f9fafb)var(--lightningcss-dark,#27272a);--color-surface-hover:var(--lightningcss-light,#f3f4f6)var(--lightningcss-dark,#343438);--color-surface-active:var(--lightningcss-light,#e5e7eb)var(--lightningcss-dark,#3f3f46);--color-border:var(--lightningcss-light,#e5e7eb)var(--lightningcss-dark,#3f3f46);--color-border-hover:var(--lightningcss-light,#d1d5db)var(--lightningcss-dark,#52525b);--color-text-primary:var(--lightningcss-light,#111827)var(--lightningcss-dark,#e4e4e7);--color-text-secondary:var(--lightningcss-light,#374151)var(--lightningcss-dark,#a1a1aa);--color-text-tertiary:var(--lightningcss-light,#6b7280)var(--lightningcss-dark,#9e9ea7);--color-text-muted:var(--lightningcss-light,#9ca3af)var(--lightningcss-dark,#52525b);--color-link:var(--lightningcss-light,rgb(var(--brand-primary)))var(--lightningcss-dark,#60a5fa);--color-link-hover:var(--lightningcss-light,rgb(var(--brand-accent)))var(--lightningcss-dark,#818cf8);--color-code-bg:var(--lightningcss-light,#f3f4f6)var(--lightningcss-dark,#1f2937);--color-code-text:var(--lightningcss-light,#1f2937)var(--lightningcss-dark,#e5e7eb);--color-button-primary:rgb(var(--brand-primary));--color-text-on-primary:#fff;--color-button-primary-hover:rgb(var(--brand-accent));--color-button-secondary:var(--color-surface-hover);--color-button-secondary-hover:var(--color-surface-active);--color-success:var(--lightningcss-light,#10b981)var(--lightningcss-dark,#34d399);--color-warning:var(--lightningcss-light,#f59e0b)var(--lightningcss-dark,#fbbf24);--color-error:var(--lightningcss-light,#ef4444)var(--lightningcss-dark,#f87171);--color-danger:var(--lightningcss-light,#ef4444)var(--lightningcss-dark,#f87171);--color-info:var(--lightningcss-light,#3b82f6)var(--lightningcss-dark,#60a5fa);--color-success-dark:var(--lightningcss-light,#065f46)var(--lightningcss-dark,#22c55e);--color-danger-dark:var(--lightningcss-light,#b91c1c)var(--lightningcss-dark,#dc2626);--color-success-light:var(--lightningcss-light,#a7f3d0)var(--lightningcss-dark,#10b981);--color-danger-light:var(--lightningcss-light,#fecaca)var(--lightningcss-dark,#ef4444);--color-primary-light:var(--lightningcss-light,#93c5fd)var(--lightningcss-dark,#3b82f6);--color-primary:rgb(var(--brand-primary));--color-secondary:rgb(var(--brand-secondary));--color-overlay:var(--lightningcss-light,#00000080)var(--lightningcss-dark,#000000b3);--terminal-green-rgb:74 222 128;--terminal-amber-rgb:251 191 36;--terminal-cyan-rgb:34 211 238;--terminal-magenta-rgb:232 121 249;--terminal-red-rgb:248 113 113;--terminal-blue-rgb:96 165 250;--terminal-purple-rgb:192 132 252;--terminal-yellow-rgb:250 204 21;--terminal-green:rgb(var(--terminal-green-rgb));--terminal-amber:rgb(var(--terminal-amber-rgb));--terminal-cyan:rgb(var(--terminal-cyan-rgb));--terminal-magenta:rgb(var(--terminal-magenta-rgb));--terminal-red:rgb(var(--terminal-red-rgb));--terminal-blue:rgb(var(--terminal-blue-rgb));--terminal-purple:rgb(var(--terminal-purple-rgb));--terminal-yellow:rgb(var(--terminal-yellow-rgb));--terminal-bg:var(--lightningcss-light,#fafafa)var(--lightningcss-dark,#18181b);--terminal-bg-alt:var(--lightningcss-light,#f5f5f5)var(--lightningcss-dark,#27272a);--terminal-overlay:var(--lightningcss-light,#4ade8005)var(--lightningcss-dark,#4ade8008);--glow-intensity:var(--lightningcss-light,0 0 2px)var(--lightningcss-dark,0 0 6px);--glow-intense:var(--lightningcss-light,0 0 3px)var(--lightningcss-dark,0 0 12px);--glow-extreme:var(--lightningcss-light,0 0 4px)var(--lightningcss-dark,0 0 18px);--color-backdrop:var(--lightningcss-light,#fffc)var(--lightningcss-dark,#111827cc);--shadow-resting:0 1px 2px var(--lightningcss-light,#1118270f)var(--lightningcss-dark,#0006);--shadow-raised:0 2px 4px var(--lightningcss-light,#11182714)var(--lightningcss-dark,#00000080);--shadow-floating:0 8px 24px var(--lightningcss-light,#1118271f)var(--lightningcss-dark,#0009);--highlight-top:inset 0 1px 0 var(--lightningcss-light,#ffffffe6)var(--lightningcss-dark,#ffffff14);--shadow-pressed:inset 0 1px 3px var(--lightningcss-light,#11182724)var(--lightningcss-dark,#0000008c);--surface-raised:var(--lightningcss-light,linear-gradient(#fff9, #fff0))var(--lightningcss-dark,linear-gradient(#ffffff08, #fff0));--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-pill:999px;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, SF Mono, Consolas, Liberation Mono, Menlo, monospace}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--terminal-green-rgb:74 222 128;--terminal-amber-rgb:251 191 36;--terminal-cyan-rgb:34 211 238;--terminal-magenta-rgb:232 121 249;--terminal-red-rgb:248 113 113;--terminal-blue-rgb:96 165 250;--terminal-purple-rgb:192 132 252;--terminal-yellow-rgb:250 204 21}:focus-visible{outline:2px solid var(--lightningcss-light,rgb(var(--brand-primary)))var(--lightningcss-dark,#60a5fa);outline-offset:2px}*{transition-property:background-color,border-color,color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}@font-face{font-family:VT323;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/vt323.woff2)format("woff2")}@font-face{font-family:Share Tech Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/sharetechmono.woff2)format("woff2")}@font-face{font-family:Orbitron;font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/orbitron.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/inter.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/jetbrainsmono.woff2)format("woff2")}body{font-family:var(--font-sans);color:var(--color-text-primary);background-color:var(--color-background);line-height:1.6}h1,h2,h3,h4,h5,h6{color:var(--color-text-primary);margin-top:0;font-weight:700;line-height:1.2}a{color:var(--color-link);text-decoration:none;transition:color .2s}a:hover{color:var(--color-link-hover)}code{font-family:var(--font-mono);background-color:var(--color-code-bg);color:var(--color-code-text);border-radius:.25rem;padding:.125rem .375rem;font-size:.875em}pre{font-family:var(--font-mono);background-color:var(--color-code-bg);color:var(--color-code-text);border-radius:.5rem;padding:1rem;overflow-x:auto}pre code{background-color:#0000;padding:0}:not(pre)>code{white-space:pre-wrap;overflow-wrap:anywhere}img{max-width:100%;height:auto;display:block}::selection{background-color:rgba(var(--brand-primary) / .3);color:inherit}:focus:not(:focus-visible){outline:none}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--color-surface)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--color-border-hover)}.container{width:100%;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}@media (width>=640px){.container{max-width:640px}}@media (width>=768px){.container{max-width:768px}}@media (width>=1024px){.container{max-width:1024px}}@media (width>=1280px){.container{max-width:1280px}}@media (width>=1536px){.container{max-width:1536px}}.terminal-window{background:var(--terminal-bg,#0a0a0a);border:1px solid var(--terminal-green);box-shadow:inset 0 0 10px rgb(var(--terminal-green-rgb) / .05);border-radius:4px;font-family:Share Tech Mono,Courier New,Courier,monospace;position:relative;overflow:hidden}nav.terminal-window{border-top:none;border-left:none;border-right:none;border-radius:0;overflow:visible;position:fixed!important;top:0!important;left:0!important;right:0!important}.terminal-window:before{content:"";background:repeating-linear-gradient(0deg, transparent, transparent 2px, rgb(var(--terminal-green-rgb) / .03) 2px, rgb(var(--terminal-green-rgb) / .03) 4px);pointer-events:none;animation:8s linear infinite scanlines;position:absolute;inset:0}@keyframes scanlines{0%{transform:translateY(0)}to{transform:translateY(10px)}}.terminal-header{border-bottom:1px solid var(--terminal-green);background:linear-gradient(#1a1a1a,#0f0f0f);align-items:center;gap:8px;padding:8px 12px;display:flex}.terminal-buttons{gap:6px;display:flex}.terminal-button{border-radius:50%;width:12px;height:12px;display:inline-block}.terminal-button-red,.terminal-button.close{background:#ff5f56}.terminal-button-yellow,.terminal-button.minimize{background:#ffbd2e}.terminal-button-green,.terminal-button.maximize{background:#27c93f}.terminal-title{text-align:center;color:var(--terminal-green);text-shadow:0 0 2px var(--terminal-green);flex:1;font-size:.875rem}.terminal-content{background:var(--terminal-bg,#0a0a0a);padding:1rem;position:relative}.terminal-text{color:var(--terminal-green);text-shadow:0 0 2px rgb(var(--terminal-green-rgb) / .5);font-family:Share Tech Mono,Courier New,Courier,monospace}:root{--terminal-font:"Share Tech Mono", "Courier New", "Courier", monospace}.text-gradient-cyber{background:linear-gradient(135deg, var(--terminal-cyan) 0%, var(--terminal-magenta) 50%, var(--terminal-cyan) 100%);-webkit-text-fill-color:transparent;text-shadow:none;-webkit-background-clip:text;background-clip:text;animation:3s infinite gradient-shift}@keyframes gradient-shift{0%,to{background-position:0%}50%{background-position:100%}}.glitch-text{color:var(--terminal-cyan);text-shadow:var(--glow-intense) var(--terminal-cyan);position:relative}.glitch-text:before,.glitch-text:after{content:attr(data-text);width:100%;height:100%;position:absolute;top:0;left:0}.glitch-text:before{color:var(--terminal-magenta);z-index:-1;animation:.5s infinite glitch-1}.glitch-text:after{color:var(--terminal-cyan);z-index:-2;animation:.5s infinite glitch-2}@keyframes glitch-1{0%,to{clip-path:polygon(0 0,100% 0,100% 45%,0 45%);transform:translate(-2px,-2px)}25%{clip-path:polygon(0 0,100% 0,100% 65%,0 65%);transform:translate(2px,2px)}50%{clip-path:polygon(0 0,100% 0,100% 35%,0 35%);transform:translate(-2px,2px)}75%{clip-path:polygon(0 0,100% 0,100% 55%,0 55%);transform:translate(2px,-2px)}}@keyframes glitch-2{0%,to{clip-path:polygon(0 55%,100% 55%,100% 100%,0 100%);transform:translate(2px,2px)}25%{clip-path:polygon(0 35%,100% 35%,100% 100%,0 100%);transform:translate(-2px,-2px)}50%{clip-path:polygon(0 65%,100% 65%,100% 100%,0 100%);transform:translate(2px,-2px)}75%{clip-path:polygon(0 45%,100% 45%,100% 100%,0 100%);transform:translate(-2px,2px)}}.neon-border{border:1px solid var(--terminal-cyan);box-shadow:inset 0 0 5px rgb(var(--terminal-cyan-rgb) / .1);transition:all .3s}.neon-border:hover{box-shadow:inset 0 0 10px rgb(var(--terminal-cyan-rgb) / .2), var(--glow-intensity) var(--terminal-cyan)}.neon-border-green{border-color:var(--terminal-green);box-shadow:inset 0 0 5px rgb(var(--terminal-green-rgb) / .1)}.neon-border-green:hover{box-shadow:inset 0 0 10px rgb(var(--terminal-green-rgb) / .2), var(--glow-intensity) var(--terminal-green)}.neon-border-magenta{border-color:var(--terminal-magenta);box-shadow:inset 0 0 5px rgb(var(--terminal-magenta-rgb) / .1)}.neon-border-magenta:hover{box-shadow:inset 0 0 10px rgb(var(--terminal-magenta-rgb) / .2), var(--glow-intensity) var(--terminal-magenta)}.neon-border-cyan{border-color:var(--terminal-cyan);box-shadow:inset 0 0 5px rgb(var(--terminal-cyan-rgb) / .1)}.neon-border-cyan:hover{box-shadow:inset 0 0 10px rgb(var(--terminal-cyan-rgb) / .2), var(--glow-intensity) var(--terminal-cyan)}.ascii-art{font-family:var(--terminal-font);color:var(--terminal-green);text-shadow:var(--glow-intensity) var(--terminal-green);white-space:pre;font-size:12px;line-height:1}.matrix-rain{pointer-events:none;z-index:-1;width:100%;height:100%;position:fixed;top:0;left:0;overflow:hidden}.matrix-drop{color:var(--terminal-green);font-family:var(--terminal-font);text-shadow:var(--glow-intensity) var(--terminal-green);font-size:16px;animation:linear infinite matrix-fall;position:absolute}@keyframes matrix-fall{0%{opacity:0;transform:translateY(-100%)}10%{opacity:1}90%{opacity:1}to{opacity:0;transform:translateY(100vh)}}.hologram{background:linear-gradient(45deg, transparent 30%, rgb(var(--terminal-cyan-rgb) / .1) 50%, transparent 70%);animation:3s linear infinite hologram-sweep;position:relative}@keyframes hologram-sweep{0%{background-position:-200% 0}to{background-position:200% 0}}.cyber-grid{background-image:linear-gradient(rgb(var(--terminal-cyan-rgb) / .1) 1px, transparent 1px), linear-gradient(90deg, rgb(var(--terminal-cyan-rgb) / .1) 1px, transparent 1px);background-size:50px 50px;animation:20s linear infinite grid-move}@keyframes grid-move{0%{background-position:0 0}to{background-position:50px 50px}}.typing-effect{white-space:nowrap;border-right:3px solid var(--terminal-green);animation:3s steps(40,end) typing,1s infinite cursor-blink;overflow:hidden}@keyframes typing{0%{width:0}to{width:100%}}@keyframes cursor-blink{0%,49%{opacity:1}50%,to{opacity:0}}.terminal-code{background:var(--terminal-bg);border:1px solid var(--terminal-green);font-family:var(--terminal-font);box-shadow:var(--glow-intensity) var(--terminal-green);margin:20px 0;padding:20px;position:relative;overflow:auto}.terminal-code:before{content:"> ";color:var(--terminal-magenta);text-shadow:var(--glow-intensity) var(--terminal-magenta)}.cli-prompt{color:var(--terminal-cyan);text-shadow:var(--glow-intensity) var(--terminal-cyan)}.cli-prompt:before{content:"❯ ";color:var(--terminal-magenta);text-shadow:var(--glow-intensity) var(--terminal-magenta)}.cli-cursor{background:var(--terminal-green);width:10px;height:20px;box-shadow:var(--glow-intensity) var(--terminal-green);animation:1s infinite cursor-blink;display:inline-block}@media (prefers-reduced-motion:reduce){*,:before,:after{animation-duration:.01ms!important;animation-iteration-count:1!important}}.project-logo{font-weight:700;font-family:var(--terminal-font,"Share Tech Mono", monospace);border-radius:.3em;flex-shrink:0;justify-content:center;align-items:center;line-height:1;display:inline-flex}.project-logo-img{-o-object-fit:cover;object-fit:cover;border-radius:.3em;flex-shrink:0;display:inline-block}.recent-projects-list{border-left:1px solid rgb(var(--terminal-cyan-rgb) / .15);flex-direction:column;gap:.125rem;margin:.25rem 0 .5rem 1.25rem;padding:0;list-style:none;display:flex}.recent-projects-list a{color:var(--color-text-tertiary);border-radius:0 .25rem .25rem 0;align-items:center;gap:.4rem;padding:.3rem .5rem;font-size:.8125rem;text-decoration:none;transition:color .15s,background .15s;display:flex}.recent-projects-list a .truncate-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.recent-projects-list a:hover{color:rgb(var(--terminal-cyan-rgb));background:rgb(var(--terminal-cyan-rgb) / .08)}.recent-projects-list a.active{color:rgb(var(--terminal-cyan-rgb));background:rgb(var(--terminal-cyan-rgb) / .2);font-weight:600}
