@import "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;700&display=swap";:root{--bg-deep:#07070a;--bg-card:#0d0e15d9;--color-primary:#a855f7;--color-primary-dim:#a855f726;--color-accent:#ec4899;--text-main:#d1d5db;--text-muted:#9ca3af;--text-bright:#fff;--font-heading:"Space Grotesk", sans-serif;--font-mono:"JetBrains Mono", monospace;--font-body:"Inter", sans-serif;--border-subtle:1px solid #a855f733;--transition-smooth:all .3s cubic-bezier(.16, 1, .3, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-deep);background:radial-gradient(circle at 50% -20%, #a855f726 0%, var(--bg-deep) 60%);width:100%;height:100%;color:var(--text-main);font-family:var(--font-body);scroll-behavior:smooth;overscroll-behavior-y:none;-webkit-font-smoothing:antialiased;overflow-x:hidden}.text-mono{font-family:var(--font-mono)}.text-muted{color:var(--text-muted)}.text-primary{color:var(--color-primary)}.text-bright{color:var(--text-bright)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.02em}.container{z-index:10;max-width:1200px;margin:0 auto;padding:0 2rem;position:relative}.section{padding:5rem 0}.section-glow-title{font-family:var(--font-heading);color:#fff;text-align:center;letter-spacing:-.5px;text-shadow:0 0 10px #ffffff80,0 0 20px #a855f7cc,0 0 35px #a855f799,0 0 50px #a855f766;margin-bottom:3.5rem;font-size:2.8rem;font-weight:700}.glass-panel{-webkit-backdrop-filter:blur(8px);will-change:transform, box-shadow;background:#0f0c1999;border:1px solid #a855f726;border-radius:16px;transition:all .4s cubic-bezier(.16,1,.3,1);position:relative;transform:translateZ(0);box-shadow:0 10px 40px -10px #000c,inset 0 1px #ffffff0d}.glass-panel:hover{border-color:#a855f766;transform:translateY(-4px);box-shadow:0 20px 40px -10px #000000e6,0 0 30px #a855f726,inset 0 1px #ffffff1a}.pill-tag{color:#c0c0d0;font-family:var(--font-mono);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:999px;padding:4px 12px;font-size:.75rem;transition:all .2s;display:inline-flex}.pill-tag:hover{color:#fff;background:#a855f726;border-color:#a855f766;transform:translateY(-2px);box-shadow:0 4px 10px #a855f733}a{color:inherit;transition:var(--transition-smooth);text-decoration:none}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-deep)}::-webkit-scrollbar-thumb{background:#a855f780;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a855f7cc}.app-content{z-index:10;width:100%;position:relative}.canvas-container{z-index:1;pointer-events:none;top:0;left:0;width:100vw!important;height:100vh!important;position:fixed!important}.app-content{min-height:100vh}.hero-viewport{flex-direction:column;min-height:100vh;padding-bottom:2rem;display:flex;position:relative;overflow:hidden}.top-nav{z-index:1000;-webkit-backdrop-filter:blur(10px);will-change:transform;background:#0f0c19d9;border:1px solid #a855f733;border-radius:999px;justify-content:space-between;align-items:center;width:90%;max-width:1000px;padding:.8rem 1.5rem;display:flex;position:fixed;top:1.5rem;left:50%;transform:translate(-50%)translateZ(0);box-shadow:0 10px 40px #00000080,inset 0 1px #ffffff1a}.nav-logo{font-family:var(--font-heading);letter-spacing:-.5px;color:#fff;font-size:1.25rem;font-weight:700}.nav-links{gap:2.5rem;font-size:.85rem;display:flex}.nav-links a{color:#a1a1aa;position:relative}.nav-links a:hover,.nav-links a:active{color:#fff}.dot-decor{background:#fff;border-radius:50%;width:4px;height:4px;position:absolute;top:-5px;right:-8px}.btn-contact{color:#fff;background:linear-gradient(135deg,#a855f7,#62309e);border:1px solid #ffffff1a;border-radius:8px;padding:.6rem 1.4rem;font-size:.9rem;font-weight:600;transition:all .3s;box-shadow:0 4px 15px #a855f766}.btn-contact:hover{background:linear-gradient(135deg,#b062fa,#713cbd);border-color:#ffffff4d;transform:translateY(-2px);box-shadow:0 8px 25px #a855f799}.hero-grid{z-index:10;flex:1;grid-template-columns:1fr 1fr;align-items:center;gap:6rem;margin-top:6rem;padding-top:2rem;display:grid;position:relative}.hero-left{flex-direction:column;gap:1.5rem;display:flex}.hero-glow-title{font-family:var(--font-heading);background:linear-gradient(to bottom right,#fff 10%,#d8b4fe 40%,#8b5cf6 80%);-webkit-text-fill-color:transparent;letter-spacing:-.04em;-webkit-background-clip:text;background-clip:text;padding-bottom:.1em;font-size:clamp(3.5rem,8vw,6rem);font-weight:800;line-height:1.05}.hero-desc{color:#b0b0bb;max-width:500px;font-size:.95rem;line-height:1.8}.hero-links{gap:1.5rem;margin-top:.5rem;font-size:.9rem;display:flex}.link-item{color:#ccc;align-items:center;gap:8px;transition:color .2s;display:flex}.link-item:hover{color:#fff}.hero-right{justify-content:center;align-items:center;margin-top:-2rem;display:flex;position:relative}.profile-visual-wrapper{justify-content:center;align-items:center;width:450px;height:450px;display:flex;position:relative}.circle-dashed{z-index:1;border:2px dashed #8b5cf680;border-radius:50%;animation:60s linear infinite slow-spin;position:absolute;inset:0}@keyframes slow-spin{to{transform:rotate(360deg)}}.circle-solid{background:var(--bg-deep);z-index:2;border:35px solid #0f0c19e6;border-radius:50%;position:absolute;inset:40px;overflow:hidden;box-shadow:inset 0 0 50px #000c,0 0 40px #a855f74d}.profile-img{object-fit:cover;opacity:.85;filter:grayscale(.2)contrast(1.1);width:100%;height:100%}.float-card{z-index:10;background:#090610;border:1px solid #8b5cf64d;border-radius:8px;padding:1rem 1.25rem;position:absolute;box-shadow:0 10px 30px #0009}.feedback-card{top:70px;right:-40px}.follow-card{align-items:center;gap:1rem;padding:.75rem 1rem;display:flex;bottom:80px;left:-40px}.follow-icon{align-items:center;display:flex}.follow-info{flex-direction:column;gap:2px;display:flex}.font-bold{color:#fff;font-weight:700}.blur-blob{opacity:.8;z-index:1;background:#62309e;border-radius:50%;position:absolute}.shape-1{width:50px;height:50px;top:25%;left:55%}.shape-2{width:60px;height:60px;bottom:10%;right:10%}.floating-chat-btn{background:var(--color-primary);color:#fff;z-index:100;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;display:flex;position:fixed;bottom:2rem;right:2rem;box-shadow:0 4px 15px #8b5cf666}.floating-chat-btn:hover{background:#a855f7;transform:scale(1.05)}@media (width<=1024px){.hero-grid{text-align:center;grid-template-columns:1fr}.hero-left{text-align:left;align-items:center}.hero-right{margin-top:3rem}.nav-links{display:none}.feedback-card{right:-20px}.follow-card{left:-10px}}.about-layout-split{grid-template-columns:1fr 1fr;align-items:center;gap:3rem;display:grid}.about-text-content{flex-direction:column;gap:1.5rem;display:flex}.about-text-content p{color:#a0a0ab;letter-spacing:-.2px;font-size:.95rem;line-height:1.8}.about-ide-blocks{flex-direction:column;justify-content:center;align-items:center;height:400px;display:flex;position:relative}.code-block{padding:1rem 1.25rem;font-size:.8rem;line-height:1.6;position:absolute;box-shadow:0 10px 30px #00000080}.block-1{top:10%;left:10%}.block-2{top:40%;right:15%}.block-3{bottom:10%;left:20%}.decor-brackets{color:#a855f71a;pointer-events:none;font-size:15rem;font-weight:800;font-family:var(--font-body);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@media (width<=900px){.about-layout-split{grid-template-columns:1fr}.about-ide-blocks{display:none}}.proj-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem;display:grid}.proj-card{background:#0f0c1980;border-radius:16px;flex-direction:column;transition:all .3s;display:flex;overflow:hidden}.proj-card:hover{border-color:#a855f766;transform:translateY(-4px);box-shadow:0 15px 30px #000c,inset 0 1px #ffffff0d}.proj-git-icon{color:#9ca3af;margin-top:2px;transition:color .2s}.proj-git-icon:hover{color:#fff}.proj-content{flex-direction:column;flex-grow:1;padding:1.5rem;display:flex}.proj-title{color:#fff;margin-bottom:.25rem;font-size:1.2rem;font-weight:700}.proj-subtitle{color:var(--color-accent);letter-spacing:-.2px;margin-bottom:1.25rem;font-size:.8rem}.glow-text-pink{color:#ec4899;text-shadow:0 0 10px #ec489980}.proj-desc{flex-grow:1;margin-bottom:1.5rem;font-size:.8rem;line-height:1.6}.proj-arch-section{margin-bottom:1.5rem}.arch-heading{letter-spacing:1px;margin-bottom:.8rem;font-size:.7rem}.arch-tags{flex-wrap:wrap;gap:8px;display:flex}.proj-link{color:var(--color-primary);align-items:center;gap:6px;margin-top:auto;font-size:.85rem;display:flex}.proj-link:hover{text-shadow:0 0 10px var(--color-primary-dim);color:#d8b4fe}@media (width<=768px){.proj-grid{grid-template-columns:1fr}}.research-box{max-width:1100px;margin:0 auto;padding:3rem}.research-grid{grid-template-columns:350px 1fr;gap:4rem;display:grid}.focus-header{margin-bottom:2rem;font-size:1.1rem}.focus-list{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.focus-pill{color:#c0c0d0;background:#a855f70d;border:1px solid #a855f766;border-radius:999px;padding:8px 16px;font-size:.8rem;transition:all .2s}.focus-pill:hover{color:#fff;border-color:var(--color-primary);background:#a855f733}.desc-col{flex-direction:column;gap:1.5rem;padding-top:2rem;font-size:.95rem;line-height:1.8;display:flex}@media (width<=900px){.research-grid{grid-template-columns:1fr;gap:2rem}.desc-col{padding-top:0}.research-box{padding:2rem}}.achievements-layout{max-width:800px;margin:0 auto;padding:2rem}.achievements-list{flex-direction:column;gap:1.5rem;display:flex}.ach-item-box{transition:var(--transition-smooth);background:#ffffff05;border:1px solid #ffffff0d;border-radius:12px;align-items:center;gap:1.5rem;padding:1rem 1.5rem;display:flex}.ach-item-box:hover{background:#a855f70d;border-color:#a855f74d;transform:translate(10px)}.ach-icon-circle{background:#ec48991a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.ach-text{font-size:1.05rem;font-weight:500}@media (width<=768px){.ach-text{font-size:.95rem}}.skills-block-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1100px;margin:0 auto;display:grid}.skill-box{flex-direction:column;padding:2rem;display:flex}.skill-box-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.skill-box-header h3{font-size:1.15rem}.skill-pills{flex-wrap:wrap;gap:12px;display:flex}.roadmap-container{flex-direction:column;max-width:900px;margin:0 auto;display:flex;position:relative}.timeline-line-bg{background:#00e5ff1a;width:2px;position:absolute;top:0;bottom:0;left:16px}.timeline-line-fill{background:var(--color-primary);transform-origin:top;width:2px;box-shadow:0 0 10px var(--color-primary);position:absolute;top:0;bottom:0;left:16px}.timeline-block{width:100%;margin-bottom:2rem;padding-left:60px;position:relative}.timeline-dot{background:var(--bg-deep);border:2px solid var(--color-primary);z-index:2;border-radius:0;width:12px;height:12px;transition:all .3s;position:absolute;top:15px;left:11px}.timeline-block:hover .timeline-dot{background:var(--color-primary);box-shadow:0 0 10px var(--color-primary)}.timeline-content{width:100%;padding:1.5rem 2rem;transition:all .3s}.timeline-block:hover .timeline-content{border-color:#00e5ff66;transform:translate(10px)}.timeline-year{margin-bottom:.25rem;font-size:.95rem;font-weight:500;display:inline-block}.timeline-title{color:#fff;margin-bottom:.85rem;font-size:1.15rem}.timeline-desc{color:var(--text-muted);font-size:.9rem;line-height:1.5}@media (width<=768px){.roadmap-container{padding-top:2rem}.timeline-content{padding:1.5rem}}.contact-grid{grid-template-columns:1fr 1fr;gap:3rem;padding:3rem;display:grid}.contact-intel{flex-direction:column;display:flex}.contact-links{flex-direction:column;gap:1rem;display:flex}.contact-btn{width:100%;color:var(--color-primary);transition:var(--transition-smooth);background:#00e5ff0d;border:1px solid #00e5ff33;align-items:center;padding:1.25rem 1.5rem;font-size:.9rem;text-decoration:none;display:flex}.contact-btn:hover{border-color:var(--color-primary);background:#00e5ff1a;transform:translate(10px)}.footer-bottom{text-align:center;padding-top:2rem;font-size:.8rem}.mr-3{margin-right:12px}.ml-auto{margin-left:auto}.mt-5{margin-top:2rem}.mb-2{margin-bottom:.5rem}@media (width<=768px){.contact-grid{grid-template-columns:1fr;gap:2rem;padding:2rem}}
