@import "https://fonts.googleapis.com/css2?family=Fira+Code:wght@400;500&family=Inter:wght@400;500;600;700;800&display=swap";:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}:root{--navy:#0a192f;--light-navy:#112240;--lightest-navy:#233554;--slate:#8892b0;--light-slate:#a8b2d1;--lightest-slate:#ccd6f6;--white:#e6f1ff;--green:#64ffda;--green-tint:#64ffda1a;--blue-gradient:linear-gradient(120deg, #64ffda 0%, #00b4d8 100%);--font-mono:"Fira Code", monospace;--font-sans:"Inter", sans-serif;--transition:all .3s cubic-bezier(.645, .045, .355, 1)}*{box-sizing:border-box}body,html{background-color:var(--navy);color:var(--slate);font-family:var(--font-sans);scroll-behavior:smooth;margin:0;padding:0;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{color:var(--lightest-slate);margin:0;font-weight:600}a{color:var(--green);transition:var(--transition);text-decoration:none}.app-container{flex-direction:column;min-height:100vh;display:flex;position:relative}.navbar{-webkit-backdrop-filter:blur(12px);z-index:100;width:100%;height:100px;transition:var(--transition);background-color:#0a192fb3;border-bottom:1px solid #0000;justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0}.navbar.scrolled{background-color:#0a192fd9;border-bottom:1px solid #64ffda1a;height:70px;box-shadow:0 10px 30px -10px #020c1bb3}.nav-content{box-sizing:border-box;justify-content:space-between;align-items:center;width:100%;max-width:1000px;padding:0 50px;display:flex}.nav-logo-group{color:var(--green);align-items:center;transition:transform .3s;display:flex}.nav-logo-group:hover{transform:scale(1.1)rotate(5deg)}.nav-icon{color:var(--green)}.nav-links{align-items:center;gap:30px;display:flex}.nav-item{color:var(--lightest-slate);font-size:13px;font-family:var(--font-mono);align-items:center;gap:5px;display:flex;position:relative}.nav-item:after{content:"";background-color:var(--green);width:0;height:1px;transition:var(--transition);position:absolute;bottom:-4px;left:0}.nav-item:hover:after{width:100%}.nav-item:hover{color:var(--green)}.btn-outline-nav{color:var(--green);border:1px solid var(--green);font-family:var(--font-mono);cursor:pointer;transition:var(--transition);background-color:#0000;border-radius:6px;margin-left:10px;padding:.6rem 1.2rem;font-size:13px}.btn-outline-nav:hover{background-color:var(--green-tint);transform:translateY(-2px);box-shadow:0 4px 10px #64ffda33}.background-grid{z-index:-1;background-image:linear-gradient(90deg,#ffffff05 1px,#0000 1px),linear-gradient(#ffffff05 1px,#0000 1px);background-size:50px 50px;width:100%;height:100%;animation:15s ease-in-out infinite alternate backgroundPulse;position:fixed;top:0;left:0;-webkit-mask-image:radial-gradient(circle,#000 40%,#0000 80%);mask-image:radial-gradient(circle,#000 40%,#0000 80%)}@keyframes backgroundPulse{0%{opacity:.5}to{opacity:1}}.main-content{box-sizing:border-box;width:100%;max-width:1000px;margin:0 auto;padding:0 50px}.reveal{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(30px)}.reveal.active{opacity:1;transform:translateY(0)}section{margin:0 auto;padding:100px 0}.hero-section{flex-direction:column;justify-content:center;align-items:flex-start;min-height:100vh;padding-top:100px;display:flex}.hero-badge{color:var(--green);background-color:var(--green-tint);font-size:13px;font-family:var(--font-mono);border:1px solid #64ffda33;border-radius:25px;align-items:center;gap:8px;margin-bottom:30px;padding:8px 18px;display:inline-flex;box-shadow:0 0 15px #64ffda0d}.greeting{color:var(--green);font-family:var(--font-mono);letter-spacing:1px;margin:0 0 20px 2px;font-size:clamp(14px,5vw,16px);font-weight:400}.name{color:var(--lightest-slate);margin:0;font-size:clamp(40px,8vw,80px);font-weight:800}.title{color:var(--slate);background:var(--blue-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin:10px 0 20px;font-size:clamp(30px,6vw,60px);font-weight:700;display:inline-block}.typing-text{min-height:80px}.cursor{color:var(--green);-webkit-text-fill-color:var(--green);animation:1s step-end infinite blink}@keyframes blink{50%{opacity:0}}.bio{max-width:600px;color:var(--slate);margin-bottom:40px;font-size:1.1rem;line-height:1.7}.stats-row{flex-wrap:wrap;gap:20px;margin-bottom:50px;display:flex}.stat-box{background-color:var(--light-navy);min-width:180px;transition:var(--transition);z-index:1;border:1px solid #ffffff0d;border-radius:12px;flex:1;padding:25px 20px;position:relative;overflow:hidden}.stat-box:before{content:"";opacity:0;z-index:-1;background:linear-gradient(135deg,#64ffda1a 0%,#0000 100%);width:100%;height:100%;transition:opacity .3s;position:absolute;top:0;left:0}.stat-box:hover{border-color:#64ffda4d;transform:translateY(-8px);box-shadow:0 15px 30px -10px #020c1bb3}.stat-box:hover:before{opacity:1}.stat-icon{color:var(--green);margin-bottom:15px}.stat-box h3{color:var(--lightest-slate);margin-bottom:10px;font-size:1.1rem}.stat-box p{color:var(--slate);font-size:.9rem;font-family:var(--font-mono);margin:0}.hero-cta{align-items:center;gap:20px;display:flex}.btn-primary{color:var(--navy);background-color:var(--green);border:1px solid var(--green);font-family:var(--font-mono);cursor:pointer;transition:var(--transition);border-radius:6px;align-items:center;gap:10px;padding:.8rem 1.5rem;font-size:14px;font-weight:600;display:inline-flex}.btn-primary:hover{color:var(--green);box-shadow:0 5px 15px var(--green-tint);background-color:#0000}.btn-social{color:var(--lightest-slate);transition:var(--transition);background-color:var(--light-navy);border:1px solid #ffffff0d;border-radius:6px;align-items:center;gap:8px;padding:.8rem 1rem;font-size:14px;display:flex}.btn-social:hover{color:var(--green);background-color:#64ffda0d;border-color:#64ffda33;transform:translateY(-3px)}.section-heading{white-space:nowrap;align-items:center;width:100%;margin:10px 0 40px;font-size:clamp(24px,5vw,32px);display:flex;position:relative}.section-heading:after{content:"";background-color:var(--lightest-navy);width:300px;height:1px;margin-left:20px;display:block;position:relative;top:0}.section-heading.center{justify-content:center}.section-heading.center:after,.section-heading.center:before{content:"";background-color:var(--lightest-navy);width:100px;height:1px;display:block;position:relative}.section-heading.center:before{margin-right:20px}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:30px;display:grid;position:relative}.project-card{background-color:var(--light-navy);transition:var(--transition);z-index:1;border:1px solid #ffffff08;border-radius:12px;flex-direction:column;padding:30px;display:flex;position:relative}.project-card:hover{border-color:#64ffda4d;transform:translateY(-10px);box-shadow:0 20px 30px -15px #020c1bb3}.project-header{justify-content:space-between;align-items:center;margin-bottom:30px;display:flex}.project-icon{color:var(--green)}.project-links{gap:15px;display:flex}.icon-link{color:var(--light-slate);transition:var(--transition)}.icon-link:hover{color:var(--green);transform:scale(1.1)translateY(-2px)}.project-title{color:var(--lightest-slate);transition:var(--transition);margin-bottom:15px;font-size:1.4rem}.project-card:hover .project-title{color:var(--green)}.project-desc{color:var(--light-slate);flex-grow:1;margin-bottom:30px;font-size:.95rem}.project-tech{font-family:var(--font-mono);color:var(--slate);flex-wrap:wrap;gap:15px;margin:0;padding:0;font-size:.8rem;list-style:none;display:flex}.project-tech li{color:var(--green);background-color:#64ffda0d;border-radius:15px;padding:4px 12px}.contact-section{text-align:center;max-width:600px;margin:0 auto}.contact-title{color:var(--lightest-slate);margin-bottom:20px;font-size:clamp(30px,5vw,45px)}.contact-desc{color:var(--slate);margin-bottom:40px;font-size:1.1rem}.size-lg{padding:1.2rem 2.5rem;font-size:16px}.mx-auto{margin:0 auto}.footer{text-align:center;color:var(--slate);font-family:var(--font-mono);border-top:1px solid var(--lightest-navy);flex-direction:column;align-items:center;gap:10px;margin-top:auto;padding:30px;font-size:13px;display:flex}.footer-links{gap:20px;display:flex}.footer-links a{color:var(--light-slate);transition:var(--transition)}.footer-links a:hover{color:var(--green);transform:translateY(-2px)}@media (width<=768px){.nav-content,.main-content{padding:0 25px}.stats-row{flex-direction:column}.hero-cta{flex-direction:column;align-items:flex-start;width:100%}.hero-cta>*{justify-content:center;width:100%}}.cursor-dot{background-color:var(--green);width:8px;height:8px;box-shadow:0 0 10px var(--green);border-radius:50%;animation:2s infinite pulseDot;display:inline-block}@keyframes pulseDot{0%{opacity:.5;transform:scale(.95);box-shadow:0 0 #64ffdab3}70%{opacity:1;transform:scale(1);box-shadow:0 0 0 6px #64ffda00}to{opacity:.5;transform:scale(.95);box-shadow:0 0 #64ffda00}}[data-theme=light]{--navy:#f0f2f5;--light-navy:#fff;--lightest-navy:#e4e6eb;--slate:#4b5563;--light-slate:#1f2937;--lightest-slate:#111827;--white:#000;--green:#2563eb;--green-tint:#2563eb1a;--blue-gradient:linear-gradient(120deg, #2563eb 0%, #0891b2 100%)}[data-theme=light] .navbar{background-color:#f0f2f5b3}[data-theme=light] .navbar.scrolled{background-color:#f0f2f5f2;border-bottom:1px solid #2563eb1a;box-shadow:0 10px 30px -10px #0000001a}[data-theme=light] .project-card{border:1px solid #0000000d;box-shadow:0 4px 10px #0000000d}[data-theme=light] .project-card:hover{border-color:#2563eb4d;box-shadow:0 10px 30px -10px #0000001a}[data-theme=light] .background-grid{background-image:linear-gradient(90deg,#0000000d 1px,#0000 1px),linear-gradient(#0000000d 1px,#0000 1px)}[data-theme=light] .timeline-item{border-left:2px solid #2563eb33}[data-theme=light] .timeline-dot{border:2px solid var(--green);background:#f0f2f5}.theme-toggle{cursor:pointer;color:var(--green);transition:var(--transition);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;margin-left:15px;padding:8px;display:flex}.theme-toggle:hover{background:var(--green-tint);transform:translateY(-2px)}.progress-container{z-index:1001;background:0 0;width:100%;height:3px;position:fixed;top:0;left:0}.progress-bar{background:var(--blue-gradient);width:0%;height:100%;transition:width .3s cubic-bezier(.25,1,.5,1)}#blob{aspect-ratio:1;opacity:.2;z-index:0;pointer-events:none;background:linear-gradient(90deg,#7fffd4,#9370db);border-radius:50%;height:400px;animation:20s infinite rotate;position:absolute;top:50%;left:50%;translate:-50% -50%}#blur{z-index:1;-webkit-backdrop-filter:blur(100px);backdrop-filter:blur(100px);pointer-events:none;width:100%;height:100%;position:absolute}[data-theme=light] #blob{opacity:.15;background:linear-gradient(90deg,#0a66c2,#00b4d8)}[data-theme=light] #blur{-webkit-backdrop-filter:blur(80px);backdrop-filter:blur(80px)}@keyframes rotate{0%{rotate:0deg}50%{scale:1 1.5}to{rotate:360deg}}#blob{z-index:-2;position:fixed}#blur{z-index:-1;width:100vw;height:100vh;position:fixed}.main-content{z-index:10;position:relative}.mobile-toggle{cursor:pointer;color:var(--green);display:none}@media (width<=768px){.mobile-toggle{z-index:1000;display:block}.nav-links{background-color:var(--light-navy);flex-direction:column;width:250px;height:100vh;padding-top:100px;transition:right .3s;display:flex;position:fixed;top:0;right:-100%;box-shadow:-10px 0 30px #00000080}[data-theme=light] .nav-links{background-color:var(--light-navy);box-shadow:-10px 0 30px #0000001a}.nav-links.mobile-open{right:0}.theme-toggle{margin:20px auto 0}}.main-content{animation:.4s ease-out forwards fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.background-grid{z-index:-3;width:100vw;height:100vh;position:fixed}.name{display:inline-block;position:relative}.name:hover{color:var(--green);animation:.3s cubic-bezier(.25,.46,.45,.94) infinite both glitch}@keyframes glitch{0%{transform:translate(0)}20%{transform:translate(-2px,2px)}40%{transform:translate(-2px,-2px)}60%{transform:translate(2px,2px)}80%{transform:translate(2px,-2px)}to{transform:translate(0)}}.chatbot-wrapper{z-index:9999;flex-direction:column;align-items:flex-end;display:flex;position:fixed;bottom:30px;right:30px}.chatbot-toggle{background:var(--blue-gradient);width:60px;height:60px;color:var(--navy);cursor:pointer;box-shadow:0 5px 15px var(--pulse-glow);border:none;border-radius:50%;justify-content:center;align-items:center;transition:transform .3s cubic-bezier(.175,.885,.32,1.275);display:flex}.chatbot-toggle:hover{transform:scale(1.1)}.chatbot-window{-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-light);width:320px;height:400px;box-shadow:0 10px 30px var(--shadow-color);opacity:0;pointer-events:none;transform-origin:100% 100%;background:#0a192ff2;border-radius:16px;flex-direction:column;transition:all .3s cubic-bezier(.175,.885,.32,1.275);display:flex;position:absolute;bottom:80px;right:0;overflow:hidden;transform:translateY(20px)scale(.95)}.chatbot-window.active{opacity:1;pointer-events:all;transform:translateY(0)scale(1)}.chatbot-header{background:var(--light-navy);border-bottom:1px solid var(--border-light);align-items:center;gap:10px;padding:15px;display:flex}.chatbot-header h3{color:var(--lightest-slate);font-size:16px}.chatbot-header .bot-icon{color:var(--green)}.chatbot-messages{flex-direction:column;flex:1;gap:12px;padding:15px;display:flex;overflow-y:auto}.chatbot-messages::-webkit-scrollbar{width:5px}.chatbot-messages::-webkit-scrollbar-thumb{background:var(--slate);border-radius:5px}.chat-bubble{border-radius:12px;max-width:85%;padding:10px 14px;font-size:14px;line-height:1.4;animation:.3s forwards fadeInBot}@keyframes fadeInBot{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.chat-bubble.bot{background:var(--light-navy);color:var(--lightest-slate);border-bottom-left-radius:2px;align-self:flex-start}.chat-bubble.user{background:var(--green-tint);color:var(--green);border:1px solid var(--green-glow);border-bottom-right-radius:2px;align-self:flex-end}.chatbot-input{border-top:1px solid var(--border-light);background:var(--light-navy);padding:15px;display:flex}.chatbot-input input{color:var(--lightest-slate);font-family:var(--font-sans);background:0 0;border:none;outline:none;flex:1;font-size:14px}.chatbot-input button{color:var(--green);cursor:pointer;transition:var(--transition);background:0 0;border:none;justify-content:center;align-items:center;padding:5px;display:flex}.chatbot-input button:hover{transform:scale(1.1)rotate(5deg)}[data-theme=light] .chatbot-toggle{color:#fff}[data-theme=light] .chat-bubble.bot{color:#111827;background:#f3f4f6;border:1px solid #0000000d}@media (width<=480px){.chatbot-window{width:auto;position:fixed;bottom:100px;left:20px;right:20px}}.chatbot-header{justify-content:space-between}.clear-chat-btn{color:var(--slate);cursor:pointer;transition:var(--transition);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:5px;display:flex}.clear-chat-btn:hover{color:#ef4444;background:#ef44441a}.quick-actions{flex-wrap:wrap;gap:8px;padding:0 15px 10px;display:flex}.quick-actions button{background:var(--lightest-navy);border:1px solid var(--border-light);color:var(--light-slate);cursor:pointer;transition:var(--transition);border-radius:20px;padding:6px 12px;font-size:12px}.quick-actions button:hover{background:var(--green-tint);border-color:var(--green-glow);color:var(--green);transform:translateY(-2px)}[data-theme=light] .quick-actions button{color:#374151;background:#f3f4f6;border-color:#e5e7eb}[data-theme=light] .quick-actions button:hover{color:#111827;background:#e5e7eb;border-color:#d1d5db}.typing-indicator{align-items:center;gap:4px;width:fit-content;padding:14px 18px;display:flex}.typing-indicator span{background:var(--light-slate);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite both typingBounce}.typing-indicator span:first-child{animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes typingBounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}[data-theme=light] .typing-indicator span{background:var(--slate)}[data-theme=light] .chatbot-window{border-color:var(--border-light);background:#fffffff2;box-shadow:0 10px 30px #0000001a}[data-theme=light] .chatbot-header{background:#f0f2f5;border-bottom:1px solid #0000000d}[data-theme=light] .chatbot-header h3{color:#111827}[data-theme=light] .chatbot-input{background:#f0f2f5;border-top:1px solid #0000000d}[data-theme=light] .chatbot-input input{color:#111827}[data-theme=light] .chat-bubble.user{color:#fff;background:#2563eb;border-color:#2563eb}[data-theme=light] .clear-chat-btn{color:#6b7280}[data-theme=light] .clear-chat-btn:hover{color:#ef4444;background:#ef44441a}
