body{-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--primary:#6366f1;--primary-dark:#4f46e5;--primary-light:#818cf8;--secondary:#06b6d4;--accent:#f59e0b;--success:#10b981;--danger:#ef4444;--bg:#090d16;--bg-elevated:#0f172a;--bg-card:#0f172ae0;--border:#ffffff1a;--border-strong:#6366f159;--text:#f8fafc;--text-muted:#94a3b8;--text-body:#cbd5e1;--gradient-primary:linear-gradient(135deg,#6366f1,#8b5cf6 50%,#d946ef);--gradient-secondary:linear-gradient(135deg,#06b6d4,#3b82f6);--gradient-accent:linear-gradient(135deg,#f59e0b,#f97316);--gradient-dark:linear-gradient(135deg,#1e293b,#0f172a);--shadow-sm:0 2px 8px #0003;--shadow-md:0 10px 30px #00000059;--shadow-lg:0 20px 40px #00000073;--radius-sm:0.5rem;--radius:0.875rem;--radius-lg:1.25rem;--radius-xl:1.5rem;--transition:0.25s cubic-bezier(0.4,0,0.2,1);--header-h:72px;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:clamp(1.5rem,4vw,1.875rem);--text-4xl:clamp(1.75rem,5vw,2.25rem);--text-5xl:clamp(2rem,6vw,3rem)}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;background:#090d16;background:var(--bg);color:#cbd5e1;color:var(--text-body);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5{color:#f8fafc;color:var(--text);font-family:Outfit,Inter,sans-serif;font-weight:700;line-height:1.25}p{color:#cbd5e1;color:var(--text-body);line-height:1.75;margin-bottom:1rem}a{color:inherit;text-decoration:none;transition:color .25s cubic-bezier(.4,0,.2,1);transition:color var(--transition)}img{display:block;height:auto;max-width:100%}button{font-family:inherit}.container{margin:0 auto;max-width:1200px;padding:0 clamp(1rem,4vw,2rem);width:100%}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#0f172a;background:var(--bg-elevated)}::-webkit-scrollbar-thumb{background:#6366f1;background:var(--primary);border-radius:4px}::selection{background:#6366f1;background:var(--primary);color:#fff}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.65}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes gradientShift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}@keyframes cursorBlink{0%,to{opacity:1}50%{opacity:0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes heartBeat{0%,to{transform:scale(1)}25%,75%{transform:scale(1.15)}}.animate-on-scroll{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.animate-on-scroll.animate-in{opacity:1;transform:translateY(0)}.app{animation:fadeIn .5s ease-out}.loading-screen{align-items:center;animation:loadingFadeOut .5s ease 1.2s forwards;background:linear-gradient(135deg,#0f172a,#1e1b4b,#0f172a);display:flex;inset:0;justify-content:center;position:fixed;z-index:99999}@keyframes loadingFadeOut{to{opacity:0;pointer-events:none;visibility:hidden}}.loader-spinner{animation:spin .8s linear infinite;border:3px solid #6366f133;border-radius:50%;border-top:3px solid var(--primary);height:48px;margin:0 auto 1.5rem;width:48px}.loader-name{background:linear-gradient(135deg,#fff,#818cf8);-webkit-background-clip:text;background-clip:text;color:#0000;font-size:clamp(1.75rem,5vw,2.5rem);margin-bottom:.35rem}.loader-subtitle{color:#94a3b8;color:var(--text-muted);font-size:.875rem;font-size:var(--text-sm);letter-spacing:.12em;text-transform:uppercase}.header{align-items:center;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#0f172aeb;border-bottom:1px solid #ffffff1a;border-bottom:1px solid var(--border);display:flex;height:calc(72px + env(safe-area-inset-top, 0px));height:calc(var(--header-h) + env(safe-area-inset-top, 0px));left:0;padding-top:env(safe-area-inset-top,0);position:fixed;right:0;top:0;z-index:1000}.header .container{width:100%}.header-content{align-items:center;display:flex;gap:1rem;justify-content:space-between}.logo-wrapper{flex:0 0 auto}.nav{-webkit-overflow-scrolling:touch;flex:1 1 auto;justify-content:flex-end;overflow-x:auto}.nav-link{white-space:nowrap}.nav::-webkit-scrollbar{height:6px}.nav::-webkit-scrollbar-thumb{background:#ffffff12;border-radius:4px}.logo-wrapper{align-items:center;cursor:pointer;display:flex;gap:.65rem;min-width:0}.logo-image{border:2px solid #6366f173;border-radius:50%;flex-shrink:0;height:40px;object-fit:cover;width:40px}.logo{font-size:clamp(1rem,3vw,1.35rem);font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logo-highlight{background:linear-gradient(135deg,#6366f1,#8b5cf6 50%,#d946ef);background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;color:#0000}.mobile-menu-btn{background:none;border:none;cursor:pointer;display:none;flex-shrink:0;height:24px;padding:0;width:32px}.menu-line{background:#f8fafc;background:var(--text);border-radius:2px;display:block;height:2.5px;margin:5px 0;transition:.25s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:100%}.menu-line.open:first-child{transform:rotate(45deg) translate(5px,5px)}.menu-line.open:nth-child(2){opacity:0}.menu-line.open:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.nav-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#090d16bf;display:none;inset:0;position:fixed;z-index:998}.nav-overlay.active{display:block}.nav{gap:1.75rem}.nav,.nav-link{align-items:center;display:flex}.nav-link{background:none;border:none;color:#94a3b8;color:var(--text-muted);cursor:pointer;flex-direction:column;font-size:.875rem;font-size:var(--text-sm);font-weight:600;letter-spacing:.04em;padding:.5rem 0;text-transform:uppercase;transition:color .25s cubic-bezier(.4,0,.2,1);transition:color var(--transition)}.nav-link.active,.nav-link:hover{color:#818cf8;color:var(--primary-light)}.nav-indicator{background:linear-gradient(135deg,#6366f1,#8b5cf6 50%,#d946ef);background:var(--gradient-primary);border-radius:1px;height:2px;margin-top:2px;transition:width .25s cubic-bezier(.4,0,.2,1);transition:width var(--transition);width:0}.nav-link.active .nav-indicator,.nav-link:hover .nav-indicator{width:100%}.nav-github{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6 50%,#d946ef);background:var(--gradient-primary);border-radius:.875rem;border-radius:var(--radius);color:#fff;display:inline-flex;font-size:.875rem;font-size:var(--text-sm);font-weight:600;gap:.5rem;padding:.6rem 1.1rem;white-space:nowrap}.nav-github:hover{opacity:.9;transform:translateY(-1px)}.section{padding:clamp(3.5rem,8vw,6rem) 0}.section-header{margin-bottom:clamp(2.5rem,6vw,4rem);text-align:center}.section-label{color:#818cf8;color:var(--primary-light);display:inline-block;font-size:.75rem;font-size:var(--text-xs);font-weight:700;letter-spacing:.12em;margin-bottom:.75rem;text-transform:uppercase}.section-title{background:linear-gradient(135deg,#6366f1,#8b5cf6 50%,#d946ef);background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;color:#0000;font-size:clamp(2rem,6vw,3rem);font-size:var(--text-5xl);margin-bottom:1rem}.section-divider{background:linear-gradient(135deg,#6366f1,#8b5cf6 50%,#d946ef);background:var(--gradient-primary);border-radius:2px;height:3px;margin:1rem auto;width:64px}.section-subtitle{color:#94a3b8;color:var(--text-muted);font-size:clamp(.875rem,2.5vw,1.125rem);font-size:clamp(var(--text-sm),2.5vw,var(--text-lg));margin:0 auto;max-width:560px}.btn{align-items:center;border:none;border-radius:.875rem;border-radius:var(--radius);cursor:pointer;display:inline-flex;font-size:.875rem;font-size:var(--text-sm);font-weight:600;gap:.5rem;justify-content:center;padding:.85rem 1.5rem;text-align:center;transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s cubic-bezier(.4,0,.2,1),background .25s cubic-bezier(.4,0,.2,1);transition:transform var(--transition),box-shadow var(--transition),background var(--transition)}.btn-primary{background:linear-gradient(135deg,#6366f1,#8b5cf6 50%,#d946ef);background:var(--gradient-primary);box-shadow:0 2px 8px #0003;box-shadow:var(--shadow-sm);color:#fff}.btn-primary:hover{box-shadow:0 10px 30px #00000059;box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-secondary{background:#0000;border:2px solid #6366f1;border:2px solid var(--primary);color:#818cf8;color:var(--primary-light)}.btn-secondary:hover{background:#6366f1;background:var(--primary);color:#fff}.btn-outline{background:#0000;border:2px solid #ffffff1a;border:2px solid var(--border);color:#f8fafc;color:var(--text)}.btn-outline:hover{background:#6366f11a;border-color:#6366f1;border-color:var(--primary)}.cv-btn{border-color:#06b6d4!important;border-color:var(--secondary)!important;color:#06b6d4!important;color:var(--secondary)!important}.cv-btn:hover{background:#06b6d4!important;background:var(--secondary)!important;color:#fff!important}.hero{background-position:50%;background-size:cover;min-height:100vh;min-height:100dvh;padding-top:72px;padding-top:var(--header-h);position:relative}.hero,.hero-overlay{align-items:center;display:flex}.hero-overlay{background:linear-gradient(135deg,#0f172af2,#0f172ad9);inset:0;position:absolute;z-index:2}.hero-particles{inset:0;pointer-events:none;position:absolute;z-index:1}.hero-content{grid-gap:clamp(2rem,5vw,3.5rem);align-items:center;display:grid;gap:clamp(2rem,5vw,3.5rem);grid-template-columns:1.15fr .85fr;padding:2rem 0 4rem;width:100%}.hero-badges{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:1.25rem}.badge{border-radius:999px;font-size:.75rem;font-size:var(--text-xs);font-weight:600;padding:.35rem .85rem}.badge-primary{background:linear-gradient(135deg,#6366f1,#8b5cf6 50%,#d946ef);background:var(--gradient-primary);color:#fff}.badge-secondary{background:linear-gradient(135deg,#06b6d4,#3b82f6);background:var(--gradient-secondary);color:#fff}.badge-accent{background:linear-gradient(135deg,#f59e0b,#f97316);background:var(--gradient-accent);color:#fff}.hero-greeting{color:#94a3b8;color:var(--text-muted);display:block;font-size:1.125rem;font-size:var(--text-lg);font-weight:500;margin-bottom:.35rem}.hero-name{background:linear-gradient(135deg,#fff,#818cf8);-webkit-background-clip:text;background-clip:text;color:#0000;display:block;font-size:clamp(2rem,7vw,3.75rem);font-weight:800;line-height:1.1;margin-bottom:.75rem}.hero-title{color:#f8fafc;color:var(--text);font-size:clamp(1.125rem,3.5vw,1.5rem);font-size:clamp(var(--text-lg),3.5vw,var(--text-2xl));font-weight:600;margin-bottom:1.25rem}.gradient-text{animation:gradientShift 4s ease infinite;background:linear-gradient(135deg,#6366f1,#8b5cf6 50%,#d946ef);background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;background-size:200% 200%;color:#0000}.hero-tagline{border-left:3px solid #6366f1;border-left:3px solid var(--primary);color:#94a3b8;color:var(--text-muted);font-size:clamp(.875rem,2.5vw,1.125rem);font-size:clamp(var(--text-sm),2.5vw,var(--text-lg));line-height:1.7;margin:1.25rem 0;max-width:540px;padding-left:1rem}.typing-cursor{animation:cursorBlink .8s step-end infinite;color:#818cf8;color:var(--primary-light)}.hero-personal-info{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;margin:1.25rem 0}.info-item{align-items:center;color:#94a3b8;color:var(--text-muted);display:flex;font-size:.875rem;font-size:var(--text-sm);gap:.5rem}.info-item svg{color:#818cf8;color:var(--primary-light);flex-shrink:0}.hero-cta{margin:1.5rem 0}.hero-cta,.hero-social{display:flex;flex-wrap:wrap;gap:.75rem}.hero-social{margin-top:1.5rem}.hero-social a{align-items:center;background:#ffffff14;border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:50%;color:#f8fafc;color:var(--text);display:flex;font-size:1.1rem;height:44px;justify-content:center;transition:.25s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:44px}.hero-social a:hover{background:#6366f1;background:var(--primary);transform:translateY(-3px)}.hero-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}.stat-item{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172ae0;background:var(--bg-card);border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:1.25rem;border-radius:var(--radius-lg);padding:1.25rem 1rem;text-align:center;transition:.25s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.stat-item:hover{border-color:#6366f159;border-color:var(--border-strong);transform:translateY(-4px)}.stat-icon{color:#818cf8;color:var(--primary-light);font-size:1.75rem;margin-bottom:.5rem}.stat-value{color:#f8fafc;color:var(--text);font-size:clamp(1.75rem,4vw,2.5rem);font-weight:800;line-height:1;margin-bottom:.35rem}.stat-label{font-weight:600;letter-spacing:.06em;text-transform:uppercase}.scroll-indicator,.stat-label{color:#94a3b8;color:var(--text-muted);font-size:.75rem;font-size:var(--text-xs)}.scroll-indicator{align-items:center;animation:bounce 2s infinite;bottom:1.5rem;cursor:pointer;display:flex;flex-direction:column;gap:.35rem;left:50%;position:absolute;transform:translateX(-50%);z-index:3}.mouse{border:2px solid #94a3b8;border:2px solid var(--text-muted);border-radius:14px;height:38px;position:relative;width:24px}.wheel{background:#6366f1;background:var(--primary);border-radius:2px;height:6px;left:50%;position:absolute;top:8px;transform:translateX(-50%);width:3px}.about{background:#0f172a;background:var(--bg-elevated)}.profile-section{grid-gap:clamp(2rem,5vw,3.5rem);align-items:start;display:grid;gap:clamp(2rem,5vw,3.5rem);grid-template-columns:minmax(240px,320px) 1fr}.profile-image-container{position:relative}.profile-image-wrapper{animation:float 5s ease-in-out infinite;aspect-ratio:1;border:4px solid #6366f166;border-radius:50%;cursor:pointer;margin:0 auto;overflow:hidden;position:relative;width:min(100%,280px)}.profile-image{height:100%;object-fit:cover;width:100%}.profile-image-overlay{align-items:center;background:#6366f1d9;color:#fff;display:flex;flex-direction:column;font-size:.875rem;font-size:var(--text-sm);font-weight:600;inset:0;justify-content:center;opacity:0;position:absolute;transition:opacity .25s cubic-bezier(.4,0,.2,1);transition:opacity var(--transition)}.profile-image-wrapper:hover .profile-image-overlay{opacity:1}.profile-icon-fallback{font-size:3rem;margin-bottom:.5rem}.profile-status{align-items:center;background:#0f172ae0;background:var(--bg-card);border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:999px;bottom:-12px;color:#cbd5e1;color:var(--text-body);display:flex;font-size:.75rem;font-size:var(--text-xs);font-weight:600;gap:.5rem;left:50%;max-width:calc(100% + 2rem);padding:.5rem 1rem;position:absolute;transform:translateX(-50%);white-space:nowrap}.status-dot{animation:pulse 2s infinite;background:#10b981;background:var(--success);border-radius:50%;flex-shrink:0;height:8px;width:8px}.profile-quick-info{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr 1fr;margin-top:2rem}.info-card{align-items:center;background:#0f172ae0;background:var(--bg-card);border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:.875rem;border-radius:var(--radius);display:flex;gap:.75rem;padding:1rem}.info-card svg{color:#818cf8;color:var(--primary-light);flex-shrink:0;font-size:1.25rem}.info-card h4{color:#f8fafc;color:var(--text);font-size:1rem;font-size:var(--text-base);margin-bottom:.15rem}.info-card p{color:#94a3b8;color:var(--text-muted);font-size:.75rem;font-size:var(--text-xs);margin:0}.about-text h3{font-size:clamp(1.5rem,4vw,1.875rem);font-size:var(--text-3xl);margin-bottom:1.25rem}.about-text p{color:#94a3b8;color:var(--text-muted);font-size:1rem;font-size:var(--text-base)}.about-highlights{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:2rem 0}.about-highlight{background:#0f172ae0;background:var(--bg-card);border:1px solid #ffffff1a;border-left:3px solid #6366f1;border:1px solid var(--border);border-left:3px solid var(--primary);border-radius:.875rem;border-radius:var(--radius);display:flex;gap:1rem;padding:1.25rem;transition:.25s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.about-highlight:hover{border-color:#6366f159;border-color:var(--border-strong);transform:translateY(-3px)}.highlight-icon{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6 50%,#d946ef);background:var(--gradient-primary);border-radius:.5rem;border-radius:var(--radius-sm);color:#fff;display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.about-highlight h4{font-size:1rem;font-size:var(--text-base);margin-bottom:.25rem}.about-highlight p{color:#94a3b8;color:var(--text-muted);font-size:.875rem;font-size:var(--text-sm);margin:0}.about-cta{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.skills-with-bg{background-position:50%;background-size:cover;position:relative}.skills-overlay{background:linear-gradient(135deg,#0f172af0,#0f172ae0);inset:0;position:absolute;z-index:0}.skills-with-bg .container{position:relative;z-index:1}.skills-with-bg .section-subtitle{color:#94a3b8;color:var(--text-muted)}.skills-category-grid{grid-gap:1.5rem;display:grid;gap:1.5rem}.skills-category{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172ae0;background:var(--bg-card);border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:1.25rem;border-radius:var(--radius-lg);padding:clamp(1.25rem,3vw,2rem)}.category-title{align-items:center;color:#f8fafc;color:var(--text);display:flex;font-size:1.25rem;font-size:var(--text-xl);gap:.65rem;margin-bottom:1.25rem}.category-title svg{color:#818cf8;color:var(--primary-light)}.skills-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr))}.skill-card{background:#ffffff0a;border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:.875rem;border-radius:var(--radius);padding:1rem;transition:.25s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.skill-card:hover{border-color:#6366f159;border-color:var(--border-strong);transform:translateY(-2px)}.skill-header{gap:.75rem;margin-bottom:.75rem}.skill-header,.skill-icon{align-items:center;display:flex}.skill-icon{background:#ffffff0f;border-radius:.5rem;border-radius:var(--radius-sm);flex-shrink:0;font-size:1.4rem;height:40px;justify-content:center;width:40px}.skill-info h4{font-size:1rem;font-size:var(--text-base);margin-bottom:.1rem}.skill-level{color:#94a3b8;color:var(--text-muted);font-size:.75rem;font-size:var(--text-xs);font-weight:600}.skill-bar{background:#ffffff14;border-radius:3px;height:6px;overflow:hidden}.skill-progress{border-radius:3px;height:100%;transition:width 1s ease}.filter-wrapper{-webkit-overflow-scrolling:touch;display:flex;justify-content:center;margin-bottom:2rem;overflow-x:auto;padding-bottom:.25rem}.filter-container{background:#0f172ae0;background:var(--bg-card);border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:999px;display:inline-flex;flex-wrap:wrap;gap:.5rem;justify-content:center;padding:.45rem}.filter-btn{align-items:center;background:#0000;border:1px solid #0000;border-radius:999px;color:#94a3b8;color:var(--text-muted);cursor:pointer;display:inline-flex;font-size:.75rem;font-size:var(--text-xs);font-weight:600;gap:.4rem;padding:.5rem 1rem;transition:.25s cubic-bezier(.4,0,.2,1);transition:var(--transition);white-space:nowrap}.filter-btn:hover{background:#6366f126;color:#f8fafc;color:var(--text)}.filter-btn.active{background:linear-gradient(135deg,#6366f1,#8b5cf6 50%,#d946ef);background:var(--gradient-primary);color:#fff}.filter-badge-count{background:#fff3;border-radius:999px;font-size:.7rem;padding:.1rem .45rem}.projects{background:#090d16;background:var(--bg)}.projects-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr))}.project-card-minimal{background:#0f172ae0;background:var(--bg-card);border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:1.25rem;border-radius:var(--radius-lg);display:flex;flex-direction:column;height:100%;overflow:hidden;padding:1.5rem;position:relative;transition:.25s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.project-top-strip{background:linear-gradient(135deg,#6366f1,#8b5cf6 50%,#d946ef);background:var(--gradient-primary);height:3px;left:0;position:absolute;right:0;top:0}.project-card-minimal.accent-mobile .project-top-strip{background:linear-gradient(90deg,#10b981,#06b6d4)}.project-card-minimal.accent-ai .project-top-strip{background:linear-gradient(90deg,#06b6d4,#8b5cf6)}.project-card-minimal.accent-algorithm .project-top-strip{background:linear-gradient(90deg,#f59e0b,#ef4444)}.project-card-minimal.accent-frontend .project-top-strip{background:linear-gradient(90deg,#ec4899,#6366f1)}.project-card-minimal:hover{border-color:#6366f159;border-color:var(--border-strong);box-shadow:0 10px 30px #00000059;box-shadow:var(--shadow-md);transform:translateY(-5px)}.project-card-minimal-header{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between;margin:.5rem 0 1rem}.project-icon-minimal-wrapper{align-items:center;background:#6366f126;border:1px solid #6366f159;border:1px solid var(--border-strong);border-radius:12px;display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.project-icon-minimal{color:#818cf8;color:var(--primary-light);font-size:1.2rem}.project-badges-minimal{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end}.badge-subtle{border-radius:999px;font-size:.7rem;font-weight:600;padding:.25rem .6rem}.badge-type{background:#6366f133;border:1px solid #6366f159;color:#c7d2fe}.badge-status{background:#10b98126;border:1px solid #10b98159;color:#6ee7b7}.badge-featured{background:#f59e0b26;border:1px solid #f59e0b59;color:#fde047}.project-title-minimal{font-size:1.125rem;font-size:var(--text-lg);line-height:1.35;margin-bottom:.5rem}.project-description-minimal{color:#94a3b8;color:var(--text-muted);font-size:.875rem;font-size:var(--text-sm);line-height:1.65;margin-bottom:1rem}.project-highlights-list{display:flex;flex-direction:column;gap:.5rem;list-style:none;margin:0 0 1rem}.highlight-item{align-items:flex-start;color:#cbd5e1;color:var(--text-body);display:flex;font-size:.875rem;font-size:var(--text-sm);gap:.5rem}.highlight-bullet-icon{color:#10b981;color:var(--success);flex-shrink:0;margin-top:.15rem}.project-tech-minimal{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:auto;padding-top:.75rem}.tech-tag-minimal{background:#6366f11f;border:1px solid #6366f140;border-radius:6px;color:#c7d2fe;font-size:.72rem;font-weight:600;padding:.2rem .55rem}.project-card-minimal-footer{border-top:1px solid #ffffff1a;border-top:1px solid var(--border);margin-top:1.25rem;padding-top:1rem}.project-links-minimal{display:flex;flex-wrap:wrap;gap:.5rem}.btn-minimal{align-items:center;border-radius:8px;display:inline-flex;font-size:.75rem;font-size:var(--text-xs);font-weight:600;gap:.4rem;padding:.55rem 1rem;transition:.25s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.btn-minimal.btn-code{background:#6366f1;background:var(--primary);color:#fff}.btn-minimal.btn-demo{background:#10b981;background:var(--success);color:#fff}.btn-minimal:hover{opacity:.9;transform:translateY(-1px)}.projects-cta{background:#0f172ae0;background:var(--bg-card);border:1px solid #6366f159;border:1px solid var(--border-strong);border-radius:1.25rem;border-radius:var(--radius-lg);margin-top:3rem;padding:clamp(1.5rem,4vw,2.5rem);text-align:center}.projects-cta p{color:#94a3b8;color:var(--text-muted);margin-bottom:1.25rem}.opensource{background:linear-gradient(135deg,#1e293b,#0f172a);background:var(--gradient-dark)}.opensource .section-title{-webkit-text-fill-color:unset;background:none;color:#f8fafc;color:var(--text)}.github-stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));margin-bottom:2.5rem}.github-stat{align-items:center;background:#0f172ae0;background:var(--bg-card);border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:1.25rem;border-radius:var(--radius-lg);display:flex;gap:1rem;padding:1.25rem}.github-stat .stat-icon{font-size:1.5rem;margin:0}.stat-content h3{background:linear-gradient(135deg,#6366f1,#8b5cf6 50%,#d946ef);background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;color:#0000;font-size:1.5rem;font-size:var(--text-2xl);line-height:1}.stat-content p{color:#94a3b8;color:var(--text-muted);font-size:.75rem;font-size:var(--text-xs);margin:0}.contributions-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));margin-bottom:2.5rem}.contribution-card{background:#0f172ae0;background:var(--bg-card);border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:1.25rem;border-radius:var(--radius-lg);overflow:hidden;transition:.25s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.contribution-card:hover{border-color:#6366f159;border-color:var(--border-strong);transform:translateY(-4px)}.contribution-header{align-items:center;background:#0003;border-bottom:1px solid #ffffff1a;border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between;padding:1rem 1.25rem}.contribution-header h3{font-size:1rem;font-size:var(--text-base)}.contribution-badge{align-items:center;background:#6366f126;border-radius:999px;color:#818cf8;color:var(--primary-light);display:inline-flex;font-size:.75rem;font-size:var(--text-xs);gap:.35rem;padding:.25rem .65rem}.contribution-body{padding:1.25rem}.contribution-desc{color:#94a3b8;color:var(--text-muted);font-size:.875rem;font-size:var(--text-sm);line-height:1.65;margin-bottom:1rem}.contribution-details{background:#0003;border-radius:.5rem;border-radius:var(--radius-sm);margin-bottom:1rem;padding:1rem}.contribution-details h4{font-size:.875rem;font-size:var(--text-sm);margin-bottom:.5rem}.contribution-details ul{list-style:none}.contribution-details li{color:#94a3b8;color:var(--text-muted);font-size:.875rem;font-size:var(--text-sm);padding:.25rem 0 .25rem 1rem;position:relative}.contribution-details li:before{color:#818cf8;color:var(--primary-light);content:"→";left:0;position:absolute}.contribution-tech{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem}.contribution-tech .tech-tag{background:#6366f11f;border:1px solid #6366f140;border-radius:999px;color:#818cf8;color:var(--primary-light);font-size:.75rem;font-size:var(--text-xs);padding:.25rem .6rem}.contribution-links{display:flex;flex-wrap:wrap;gap:.5rem}.opensource-cta{background:#0f172ae0;background:var(--bg-card);border:1px solid #6366f159;border:1px solid var(--border-strong);border-radius:1.25rem;border-radius:var(--radius-lg);padding:clamp(1.5rem,4vw,2.5rem);text-align:center}.opensource-cta h3{margin-bottom:.5rem}.opensource-cta p{color:#94a3b8;color:var(--text-muted);margin-bottom:1.25rem}.awards{background:#0f172a;background:var(--bg-elevated)}.awards-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}.award-card{background:#0f172ae0;background:var(--bg-card);border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:1.25rem;border-radius:var(--radius-lg);display:flex;flex-direction:column;overflow:hidden;transition:.25s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.award-card:hover{border-color:#6366f159;border-color:var(--border-strong);transform:translateY(-4px)}.award-card-header{align-items:center;border-bottom:1px solid #ffffff1a;border-bottom:1px solid var(--border);display:flex;gap:.75rem;justify-content:space-between;padding:1.25rem}.award-icon{color:#818cf8;color:var(--primary-light);font-size:1.75rem}.award-badge{border-radius:999px;color:#fff;font-size:.75rem;font-size:var(--text-xs);font-weight:700;padding:.3rem .65rem}.award-badge[data-type=hackathon]{background:linear-gradient(135deg,#f59e0b,#f97316);background:var(--gradient-accent)}.award-badge[data-type=certificate]{background:linear-gradient(135deg,#10b981,#34d399)}.award-badge[data-type=internship]{background:linear-gradient(135deg,#06b6d4,#3b82f6);background:var(--gradient-secondary)}.award-card-body{display:flex;flex:1 1;flex-direction:column;gap:.65rem;padding:1.25rem}.award-title{font-size:1rem;font-size:var(--text-base);line-height:1.4}.award-meta{display:flex;flex-wrap:wrap;font-size:.875rem;font-size:var(--text-sm);gap:.5rem;justify-content:space-between}.award-org{color:#818cf8;color:var(--primary-light);font-weight:600}.award-date{align-items:center;display:flex;gap:.35rem}.award-date,.award-desc{color:#94a3b8;color:var(--text-muted)}.award-desc{font-size:.875rem;font-size:var(--text-sm);line-height:1.65;margin:0}.award-skills{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.25rem}.skill-tag{background:#ffffff0f;border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:999px;color:#94a3b8;color:var(--text-muted);font-size:.75rem;font-size:var(--text-xs);padding:.25rem .55rem}.award-card-footer{border-top:1px solid #ffffff1a;border-top:1px solid var(--border);display:flex;flex-wrap:wrap;gap:.5rem;padding:1rem 1.25rem}.view-certificate{flex:1 1;min-width:140px}.certificates-showcase{margin-top:3rem}.certificates-showcase h3{font-size:1.5rem;font-size:var(--text-2xl);margin-bottom:.5rem;text-align:center}.gallery-subtitle{color:#94a3b8;color:var(--text-muted);font-size:.875rem;font-size:var(--text-sm);margin-bottom:1.5rem;text-align:center}.certificate-gallery{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,180px),1fr))}.certificate-thumbnail{aspect-ratio:4/3;border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:.875rem;border-radius:var(--radius);cursor:pointer;overflow:hidden;position:relative;transition:.25s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.certificate-thumbnail:hover{border-color:#6366f159;border-color:var(--border-strong);transform:scale(1.02)}.certificate-thumbnail img{height:100%;object-fit:cover;width:100%}.certificate-thumbnail-overlay{align-items:center;background:#0f172abf;color:#fff;display:flex;flex-direction:column;font-size:.75rem;font-size:var(--text-xs);inset:0;justify-content:center;opacity:0;padding:.5rem;position:absolute;text-align:center;transition:opacity .25s cubic-bezier(.4,0,.2,1);transition:opacity var(--transition)}.certificate-thumbnail:hover .certificate-thumbnail-overlay{opacity:1}.contact{background:#090d16;background:var(--bg)}.contact-content{grid-gap:clamp(1.5rem,4vw,2.5rem);align-items:start;display:grid;gap:clamp(1.5rem,4vw,2.5rem);grid-template-columns:1fr 1fr}.contact-info{display:flex;flex-direction:column;gap:1rem}.contact-card,.contact-form-container,.contact-social{background:#0f172ae0;background:var(--bg-card);border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:1.25rem;border-radius:var(--radius-lg);padding:clamp(1.25rem,3vw,1.75rem)}.contact-card{align-items:flex-start;display:flex;gap:1rem;transition:.25s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.contact-card:hover{border-color:#6366f159;border-color:var(--border-strong)}.contact-icon{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6 50%,#d946ef);background:var(--gradient-primary);border-radius:.5rem;border-radius:var(--radius-sm);color:#fff;display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.contact-details h3{font-size:1rem;font-size:var(--text-base);margin-bottom:.25rem}.contact-details a{color:#818cf8;color:var(--primary-light);font-size:.875rem;font-size:var(--text-sm);font-weight:600}.contact-details p{color:#94a3b8;color:var(--text-muted);font-size:.75rem;font-size:var(--text-xs);margin:0}.contact-social h3{font-size:1rem;font-size:var(--text-base);margin-bottom:1rem}.social-links{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(2,1fr)}.social-link{align-items:center;background:#ffffff0a;border-radius:.5rem;border-radius:var(--radius-sm);display:flex;font-size:.875rem;font-size:var(--text-sm);gap:.5rem;padding:.65rem .75rem;transition:.25s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.social-link:hover{background:#6366f1;background:var(--primary);color:#fff}.contact-form-header h3{font-size:1.25rem;font-size:var(--text-xl);margin-bottom:.35rem}.contact-form-header p{color:#94a3b8;color:var(--text-muted);font-size:.875rem;font-size:var(--text-sm);margin-bottom:1.25rem}.contact-form{display:flex;flex-direction:column;gap:1rem}.form-group input,.form-group textarea{background:#ffffff0a;border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:.5rem;border-radius:var(--radius-sm);color:#f8fafc;color:var(--text);font-family:inherit;font-size:1rem;font-size:var(--text-base);padding:.85rem 1rem;transition:border-color .25s cubic-bezier(.4,0,.2,1);transition:border-color var(--transition);width:100%}.form-group input::placeholder,.form-group textarea::placeholder{color:#94a3b8;color:var(--text-muted)}.form-group input:focus,.form-group textarea:focus{border-color:#6366f1;border-color:var(--primary);outline:none}.form-group textarea{min-height:120px;resize:vertical}.form-group.error input,.form-group.error textarea{border-color:#ef4444;border-color:var(--danger)}.form-error{color:#ef4444;color:var(--danger);display:block;font-size:.75rem;font-size:var(--text-xs);margin-top:.35rem}.form-success{align-items:center;background:#10b9811a;border:1px solid #10b9814d;color:#10b981;color:var(--success);display:flex;font-size:.875rem;font-size:var(--text-sm);font-weight:600;gap:.5rem;margin-bottom:1rem;padding:.85rem 1rem}.contact-availability,.form-success{border-radius:.5rem;border-radius:var(--radius-sm)}.contact-availability{background:#10b98114;border-left:3px solid #10b981;border-left:3px solid var(--success);margin-top:1.25rem;padding:1rem}.contact-availability h4{align-items:center;display:flex;font-size:.875rem;font-size:var(--text-sm);gap:.5rem;margin-bottom:.5rem}.contact-availability p{color:#94a3b8;color:var(--text-muted);font-size:.75rem;font-size:var(--text-xs);margin:.25rem 0}.footer{background:linear-gradient(135deg,#1e293b,#0f172a);background:var(--gradient-dark);border-image:linear-gradient(135deg,#6366f1,#8b5cf6 50%,#d946ef) 1;border-image:var(--gradient-primary) 1;border-top:3px solid #0000;padding:clamp(3rem,6vw,5rem) 0 2rem}.footer-main{grid-gap:clamp(2rem,5vw,3rem);display:grid;gap:clamp(2rem,5vw,3rem);grid-template-columns:1fr 2fr;margin-bottom:2.5rem}.footer-logo h3{font-size:1.5rem;font-size:var(--text-2xl);margin-bottom:.35rem}.footer-logo-highlight{background:linear-gradient(135deg,#6366f1,#8b5cf6 50%,#d946ef);background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;color:#0000}.footer-logo p{color:#94a3b8;color:var(--text-muted);margin-bottom:.5rem}.footer-logo p,.footer-tagline{font-size:.875rem;font-size:var(--text-sm)}.footer-tagline{color:#818cf8;color:var(--primary-light);font-style:italic}.footer-social-icons{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.footer-social-icons a{align-items:center;background:#ffffff0f;border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:50%;color:#94a3b8;color:var(--text-muted);display:flex;height:40px;justify-content:center;transition:.25s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:40px}.footer-social-icons a:hover{background:#6366f1;background:var(--primary);color:#fff}.footer-links{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr)}.link-group h4{color:#94a3b8;color:var(--text-muted);letter-spacing:.06em;margin-bottom:.75rem;text-transform:uppercase}.footer-link,.link-group h4{font-size:.875rem;font-size:var(--text-sm)}.footer-link{background:none;border:none;color:#cbd5e1;color:var(--text-body);cursor:pointer;display:block;font-family:inherit;margin-bottom:.5rem;text-align:left;transition:color .25s cubic-bezier(.4,0,.2,1);transition:color var(--transition)}.footer-link:hover{color:#818cf8;color:var(--primary-light)}.footer-bottom{align-items:center;border-top:1px solid #ffffff1a;border-top:1px solid var(--border);display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;padding-top:1.5rem}.footer-copyright p{color:#94a3b8;color:var(--text-muted);font-size:.875rem;font-size:var(--text-sm);margin:0}.footer-built-with{align-items:center;display:flex;font-size:.75rem!important;font-size:var(--text-xs)!important;gap:.35rem}.react-spin{animation:spin 4s linear infinite;color:#61dafb}.may-logo{height:18px;width:18px}.may-logo,.skill-logo{border-radius:50%;display:inline-block;object-fit:cover;vertical-align:middle}.skill-logo{border:2px solid #fff3;box-shadow:0 2px 8px #0000002e;height:28px;width:28px}.heart-beat{animation:heartBeat 1.5s ease-in-out infinite;color:#ef4444;color:var(--danger)}.footer-back-to-top{align-items:center;background:#ffffff0f;border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:.5rem;border-radius:var(--radius-sm);color:#94a3b8;color:var(--text-muted);cursor:pointer;display:inline-flex;font-size:.875rem;font-size:var(--text-sm);font-weight:600;gap:.5rem;padding:.6rem 1rem;transition:.25s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.footer-back-to-top:hover{background:#6366f1;background:var(--primary);border-color:#6366f1;border-color:var(--primary);color:#fff}.certificate-modal{align-items:center;animation:fadeIn .25s ease;background:#000000e6;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:2000}.certificate-modal-content{animation:slideUp .3s ease;background:#0f172a;background:var(--bg-elevated);border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:1.25rem;border-radius:var(--radius-lg);max-height:90vh;max-width:min(900px,100%);overflow:auto;position:relative}.certificate-modal-close{align-items:center;background:#0f172ae0;background:var(--bg-card);border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:50%;color:#f8fafc;color:var(--text);cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;position:absolute;right:.75rem;top:.75rem;width:40px;z-index:1}.certificate-modal-close:hover{background:#6366f1;background:var(--primary);color:#fff}.certificate-modal-header{border-bottom:1px solid #ffffff1a;border-bottom:1px solid var(--border);padding:1.25rem 1.5rem}.certificate-modal-header h3{font-size:1.125rem;font-size:var(--text-lg)}.certificate-modal-image{max-height:55vh;object-fit:contain;padding:1rem;width:100%}.certificate-modal-info{border-top:1px solid #ffffff1a;border-top:1px solid var(--border);padding:1.25rem 1.5rem}.certificate-modal-details{color:#94a3b8;color:var(--text-muted);font-size:.75rem;font-size:var(--text-xs);margin-bottom:1rem;text-align:center}.certificate-modal-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.download-certificate-btn{border-radius:.5rem;border-radius:var(--radius-sm);display:inline-flex;font-size:.875rem;font-size:var(--text-sm);font-weight:600;gap:.5rem;padding:.75rem 1.25rem}.download-certificate-btn,.scroll-to-top{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6 50%,#d946ef);background:var(--gradient-primary);color:#fff}.scroll-to-top{animation:fadeIn .3s ease;border:none;border-radius:50%;bottom:1.25rem;box-shadow:0 10px 30px #00000059;box-shadow:var(--shadow-md);cursor:pointer;display:flex;font-size:1.1rem;height:48px;justify-content:center;position:fixed;right:1.25rem;transition:.25s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:48px;z-index:100}.scroll-to-top:hover{transform:translateY(-3px)}@media (max-width:992px){.mobile-menu-btn{display:block}.nav{align-items:stretch;background:#0f172a;background:var(--bg-elevated);border-left:1px solid #ffffff1a;border-left:1px solid var(--border);flex-direction:column;gap:0;height:100vh;height:100dvh;overflow-y:auto;padding:calc(72px + 1rem) 1.5rem 2rem;padding:calc(var(--header-h) + 1rem) 1.5rem 2rem;position:fixed;right:-100%;top:0;transition:right .3s ease;width:min(300px,85vw);z-index:999}.nav.open{right:0}.nav-link{align-items:flex-start;border-bottom:1px solid #ffffff1a;border-bottom:1px solid var(--border);font-size:1rem;font-size:var(--text-base);padding:.85rem 0;width:100%}.nav-github{justify-content:center;margin-top:1rem;width:100%}.hero-content{grid-template-columns:1fr;padding-bottom:3rem}.hero-stats{grid-template-columns:repeat(3,1fr)}.contact-content,.footer-main,.profile-section{grid-template-columns:1fr}.footer-links{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){:root{--header-h:64px}.logo-text-full{display:inline-block;max-width:9ch;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.hero-stats{grid-template-columns:repeat(2,1fr)}.stat-item:nth-child(n+5){display:none}.hero-cta .btn{flex:1 1 100%}.scroll-indicator{display:none}.profile-quick-info,.social-links{grid-template-columns:1fr}.filter-container{border-radius:1.25rem;border-radius:var(--radius-lg);flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;width:100%}.footer-links{grid-template-columns:1fr}.footer-bottom{flex-direction:column;text-align:center}.skills-with-bg{background-attachment:scroll!important}}@media (max-width:480px){.hero-badges .badge:nth-child(3){display:none}.hero-stats{gap:.65rem;grid-template-columns:1fr 1fr}.stat-item{padding:1rem .65rem}.profile-image-wrapper{width:min(100%,220px)}.profile-status{font-size:.65rem;padding:.4rem .75rem}.about-highlights{grid-template-columns:1fr}.contact-card{align-items:center;flex-direction:column;text-align:center}.award-card-footer .btn{width:100%}.project-links-minimal .btn-minimal{flex:1 1;justify-content:center;min-width:calc(50% - .25rem)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}@media print{.contact-form,.footer-back-to-top,.header,.hero-social,.scroll-to-top{display:none}.section{break-inside:avoid;padding:1.5rem 0;page-break-inside:avoid}}
/*# sourceMappingURL=main.c62b1864.css.map*/