:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.navbar{position:fixed;top:0;left:0;right:0;background-color:var(--bg-primary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-color);z-index:1000;transition:all var(--transition-normal);width:100%}.navbar-container{display:flex;justify-content:space-between;align-items:center;height:4rem}.navbar-logo{display:flex;align-items:center;gap:.75rem;cursor:pointer}.logo-text{width:2.5rem;height:2.5rem;background:var(--gradient-primary);color:#fff;display:flex;align-items:center;justify-content:center;border-radius:.5rem;font-weight:700;font-size:1.25rem}.logo-name{font-size:1.25rem;font-weight:700;color:var(--text-primary)}.navbar-links{display:flex;gap:2rem;align-items:center}.nav-link{color:var(--text-secondary);text-decoration:none;font-weight:500;transition:color var(--transition-fast);cursor:pointer;position:relative;padding:.5rem 0}.nav-link:hover{color:var(--text-primary)}.nav-link.active{color:var(--primary-color)}.nav-link.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--gradient-primary);border-radius:2px}.navbar-actions{display:flex;align-items:center;gap:1rem}.theme-toggle,.menu-toggle{background:none;border:none;color:var(--text-primary);font-size:1.25rem;cursor:pointer;padding:.5rem;border-radius:.5rem;transition:background-color var(--transition-fast)}.theme-toggle:hover,.menu-toggle:hover{background-color:var(--bg-secondary)}.menu-toggle{display:none}@media(max-width:768px){.navbar-links{position:fixed;top:4rem;left:0;right:0;background-color:var(--bg-primary);flex-direction:column;padding:2rem;gap:1.5rem;border-bottom:1px solid var(--border-color);transform:translateY(-100%);opacity:0;visibility:hidden;transition:all var(--transition-normal)}.navbar-links.active{transform:translateY(0);opacity:1;visibility:visible}.menu-toggle{display:block}.logo-name{display:none}}.hero{min-height:100vh;display:flex;align-items:center;position:relative;overflow:hidden;padding-top:4rem;isolation:isolate;width:98.5vw;margin:auto}.hero.loading{display:flex;align-items:center;justify-content:center}.loading-spinner{width:60px;height:60px;border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.hero-dynamic-background{position:absolute;inset:0;z-index:-3;overflow:hidden;width:100%}.hero-bg-image{position:absolute;inset:0;background-size:cover;background-position:center;background-attachment:fixed;transform:scale(1.1);filter:blur(15px) brightness(.7);animation:floatBg 20s ease-in-out infinite alternate}@keyframes floatBg{0%{transform:scale(1.1) translateY(0)}to{transform:scale(1.15) translateY(-20px)}}.hero-bg-overlay{position:absolute;inset:0;background:linear-gradient(135deg,var(--bg-primary) 0%,transparent 30%,transparent 70%,var(--bg-primary) 100%);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.hero-bg-gradient{position:absolute;inset:0;background:linear-gradient(45deg,rgba(var(--primary-color-rgb),.1),rgba(var(--secondary-color-rgb),.1));mix-blend-mode:overlay}.hero-bg-particles{position:absolute;inset:0}.particle{position:absolute;background:var(--primary-color);border-radius:50%;animation:floatParticle var(--duration) ease-in-out infinite;animation-delay:var(--delay);left:var(--x);top:var(--y);width:var(--size);height:var(--size);filter:blur(5px)}@keyframes floatParticle{0%,to{transform:translate(0) scale(1);opacity:var(--opacity)}50%{transform:translate(20px,-20px) scale(1.2);opacity:calc(var(--opacity) * 1.5)}}.hero-gradient-background{position:absolute;inset:0;z-index:-3;overflow:hidden}.gradient-layer{position:absolute;border-radius:50%;filter:blur(80px);opacity:.5}.gradient-1{top:-20%;right:-10%;width:60%;height:60%;background:var(--gradient-primary);animation:gradientFloat 20s ease-in-out infinite}.gradient-2{bottom:-20%;left:-10%;width:50%;height:50%;background:var(--gradient-secondary);animation:gradientFloat 25s ease-in-out infinite reverse}.gradient-3{top:50%;left:50%;transform:translate(-50%,-50%);width:40%;height:40%;background:linear-gradient(135deg,#00d4ff,#09f);animation:gradientFloat 30s ease-in-out infinite alternate}@keyframes gradientFloat{0%,to{transform:translate(0)}50%{transform:translate(30px,-30px)}}.hero-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;max-width:1200px;margin:0 auto;position:relative;z-index:2}.hero-text{animation:slideUp .8s ease-out}.hero-badge{display:inline-block;background:rgba(var(--primary-color-rgb),.1);border:1px solid rgba(var(--primary-color-rgb),.3);padding:.5rem 1rem;border-radius:2rem;margin-bottom:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.badge-text{color:var(--primary-color);font-weight:600;font-size:1.3rem;letter-spacing:1px}.hero-title{font-size:3.5rem;margin-bottom:1rem;line-height:1.1;display:flex;flex-direction:column}.hero-greeting{font-size:1.5rem;color:var(--text-tertiary);margin-bottom:.5rem;font-weight:400}.gradient-text{background:linear-gradient(90deg,var(--primary-color) 0%,var(--secondary-color) 50%,#00d4ff 100%);-webkit-background-clip:text;background-clip:text;color:transparent;background-size:200% auto;animation:gradientShift 3s ease-in-out infinite alternate}@keyframes gradientShift{0%{background-position:0% center}to{background-position:100% center}}.hero-subtitle{font-size:1.5rem;margin-bottom:1.5rem;font-weight:600}.typing-text{display:inline-block;border-right:2px solid var(--primary-color);padding-right:5px;animation:blink 1s infinite}@keyframes blink{0%,to{border-color:transparent}50%{border-color:var(--primary-color)}}.hero-tagline{font-size:1.25rem;color:var(--text-secondary);margin-bottom:2.5rem;max-width:600px;line-height:1.8}.tagline-highlight{background:linear-gradient(120deg,transparent 0%,rgba(var(--primary-color-rgb),.1) 50%,transparent 100%);padding:.5rem 1rem;border-radius:.5rem;display:inline-block}.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:3rem}.btn-glow{position:relative;overflow:hidden}.btn-glow:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s}.btn-glow:hover:before{left:100%}.btn-outline{border:2px solid var(--primary-color);background:transparent;color:var(--primary-color);position:relative;overflow:hidden}.btn-outline:hover{background:var(--primary-color);color:#fff}.btn-text{position:relative;z-index:1;color:var(--text-primary)!important}.btn-icon{margin-left:.5rem;transition:transform .3s;color:var(--text-primary)!important}.btn:hover .btn-icon{transform:translate(5px)}.hero-badges{display:flex;gap:1.5rem;flex-wrap:wrap}.badge{background:rgba(var(--bg-card-rgb),.8);border:1px solid var(--border-color);border-radius:1rem;padding:1rem 1.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s}.badge:hover{border-color:var(--primary-color);transform:translateY(-5px);box-shadow:var(--shadow-lg)}.badge-number{display:block;font-size:1.5rem;font-weight:700;color:var(--primary-color);margin-bottom:.25rem}.badge-label{font-size:.9rem;color:var(--text-secondary)}.hero-image{position:relative;animation:float 6s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(2deg)}}.image-container{position:relative;width:350px;height:350px;margin:0 auto}.image-frame{width:100%;height:100%;border-radius:30% 70% 70% 30%/30% 30% 70% 70%;overflow:hidden;position:relative;z-index:2;border:3px solid rgba(var(--primary-color-rgb),.3);animation:morphing 15s ease-in-out infinite alternate}@keyframes morphing{0%{border-radius:30% 70% 70% 30%/30% 30% 70% 70%}50%{border-radius:70% 30% 30% 70%/70% 70% 30% 30%}to{border-radius:30% 70% 70% 30%/30% 30% 70% 70%}}.profile-image{width:100%;height:100%;object-fit:cover;filter:grayscale(20%) contrast(110%);transition:filter .3s}.image-frame:hover .profile-image{filter:grayscale(0%) contrast(120%)}.image-glow-effect{position:absolute;inset:-20px;background:var(--gradient-primary);border-radius:inherit;filter:blur(30px);opacity:.3;z-index:1;animation:glowPulse 3s ease-in-out infinite}@keyframes glowPulse{0%,to{opacity:.2}50%{opacity:.4}}.image-orbits{position:absolute;inset:0;z-index:0}.orbit{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border:1px solid rgba(var(--primary-color-rgb),.2);border-radius:50%;animation:orbitRotate linear infinite}.orbit-1{width:120%;height:120%;animation-duration:20s}.orbit-2{width:140%;height:140%;animation-duration:25s;animation-direction:reverse}.orbit-3{width:160%;height:160%;animation-duration:30s}@keyframes orbitRotate{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.image-tech-dots{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:200%;height:200%}.tech-dot{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(var(--angle)) translate(200px);animation:dotOrbit 10s linear infinite;animation-delay:var(--delay)}.dot-text{font-size:.9rem;color:var(--primary-color);background:rgba(var(--bg-card-rgb),.9);padding:.5rem 1rem;border-radius:2rem;border:1px solid rgba(var(--primary-color-rgb),.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@keyframes dotOrbit{0%{transform:translate(-50%,-50%) rotate(var(--angle)) translate(200px) rotate(calc(var(--angle) * -1))}to{transform:translate(-50%,-50%) rotate(calc(var(--angle) + 360deg)) translate(200px) rotate(calc((var(--angle) + 360deg) * -1))}}.tech-scroll{position:absolute;bottom:2rem;left:0;right:0;overflow:hidden;-webkit-mask-image:linear-gradient(to right,transparent,black 10%,black 90%,transparent);mask-image:linear-gradient(to right,transparent,black 10%,black 90%,transparent)}.tech-scroll-track{width:max-content}.tech-list{display:flex;gap:1rem;animation:scroll 40s linear infinite;white-space:nowrap}.tech-item{display:flex;align-items:center;gap:.75rem;padding:1rem 2rem;background:rgba(var(--bg-card-rgb),.8);border:1px solid rgba(var(--border-color-rgb),.3);border-radius:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s}.tech-item:hover{border-color:var(--primary-color);transform:translateY(-5px);box-shadow:0 10px 25px rgba(var(--primary-color-rgb),.2)}.tech-icon{color:var(--primary-color);font-size:1.2rem}.tech-name{font-weight:600;color:var(--text-primary);font-size:1rem}@keyframes scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.scroll-indicator{position:absolute;bottom:4rem;left:50%;transform:translate(-50%);z-index:10;opacity:.8}.mouse{width:30px;height:50px;border:2px solid var(--text-secondary);border-radius:15px;position:relative;margin:0 auto 1rem}.wheel{width:4px;height:8px;background:var(--primary-color);border-radius:2px;position:absolute;top:10px;left:50%;transform:translate(-50%);animation:scrollWheel 2s infinite}@keyframes scrollWheel{0%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(20px)}}.arrow-down{display:flex;flex-direction:column;align-items:center;gap:4px}.arrow-down span{display:block;width:10px;height:10px;border-bottom:2px solid var(--primary-color);border-right:2px solid var(--primary-color);transform:rotate(45deg);animation:arrowDown 2s infinite}.arrow-down span:nth-child(2){animation-delay:.2s}.arrow-down span:nth-child(3){animation-delay:.4s}@keyframes arrowDown{0%{opacity:0;transform:rotate(45deg) translate(-5px,-5px)}50%{opacity:1}to{opacity:0;transform:rotate(45deg) translate(5px,5px)}}@media(max-width:1200px){.hero-content{gap:3rem}.image-container{width:350px;height:350px}}@media(max-width:1000px){.hero{width:98vw}}@media(max-width:992px){.hero-content{grid-template-columns:1fr;text-align:center;gap:3rem}.hero-title{font-size:2.75rem}.hero-badges,.hero-actions{justify-content:center}.image-container{width:300px;height:300px;order:-1}.tech-dot{transform:translate(-50%,-50%) rotate(var(--angle)) translate(150px)}}@media(max-width:768px){.hero-title{font-size:2.25rem}.hero-subtitle{font-size:1.25rem}.hero-tagline{font-size:1.125rem}.image-container{width:250px;height:250px}.tech-dot{transform:translate(-50%,-50%) rotate(var(--angle)) translate(120px)}.dot-text{font-size:.8rem;padding:.25rem .75rem}.hero-bg-image{background-attachment:scroll}}@media(max-width:751px){.hero{width:97.5vw}}@media(max-width:600px){.hero{width:97vw}}@media(max-width:500px){.hero{width:96.5vw}.tagline-highlight{padding:0}.hero>.container{padding:0!important}}@media(max-width:480px){.hero-title{font-size:1.875rem}.image-container{width:220px;height:220px}.hero-actions{flex-direction:column}.hero-badges{flex-direction:column;align-items:center}}@media(max-width:429px){.hero{width:96vw}}@media(max-width:374px){.hero{width:95.5vw}.tagline-highlight{font-size:.9rem}.typing-text{max-width:90vw;text-align:center;text-wrap:wrap}}@media(max-width:334px){.hero{width:95vw}main{margin-top:60px}}@media(max-width:301px){.hero{width:94.5vw}}@media(max-width:272px){.hero{width:94vw}}@media(max-width:251px){.hero{width:93.5vw}.image-container{width:60vw;height:60vw}}@media(max-width:231px){.hero{width:93vw}}@media(max-width:215px){.hero{width:92.5vw}.gradient-text{width:80vw;text-align:center;margin:auto;text-wrap:wrap}}@media(max-width:190px){.badge{padding:10px}.hero{margin-left:0}}@media(max-width:150px){.hero{width:90vw}}.resume-options{margin-top:1rem;margin-bottom:2rem}.resume-options>button:focus{outline:none}.resume-view-link{background:none;border:none;color:var(--primary-color);font-size:.95rem;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;padding:.5rem;border-radius:.5rem;transition:all var(--transition-fast);text-decoration:underline;text-decoration-color:transparent;text-underline-offset:2px}.resume-view-link:hover{text-decoration-color:var(--primary-color);background:rgba(var(--primary-color-rgb),.1)}.resume-view-link .link-icon{font-size:.9rem;transition:transform var(--transition-fast)}.resume-view-link:hover .link-icon{transform:translate(2px,-2px)}.btn-download{position:relative;overflow:hidden}.btn-download:after{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--primary-color);transform:scaleX(0);transition:transform var(--transition-fast)}.btn-download:hover:after{transform:scaleX(1)}@keyframes downloadPulse{0%{box-shadow:0 0 rgba(var(--primary-color-rgb),.7)}70%{box-shadow:0 0 0 10px rgba(var(--primary-color-rgb),0)}to{box-shadow:0 0 rgba(var(--primary-color-rgb),0)}}.btn-download:active{animation:downloadPulse .6s}.btn-download .btn-icon{transition:transform .3s ease}.btn-download:hover .btn-icon{transform:translateY(3px)}.btn-download:active .btn-icon{transform:translateY(5px)}.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}@media(max-width:334px){.hero-actions>button{max-width:80vw;margin:auto}.resume-options{max-width:80vw;margin:10px auto}.hero{overflow-x:hidden}}.about-content{max-width:800px;margin:0 auto}.about-summary{font-size:1.125rem;line-height:1.8;color:var(--text-secondary);margin-bottom:3rem}.about-highlights{margin-top:2rem}.about-highlights h3{font-size:1.5rem;margin-bottom:1.5rem;color:var(--text-primary)}.highlight-list{list-style:none;padding:0}.highlight-item{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem;color:var(--text-secondary)}.highlight-icon{color:var(--primary-color);font-weight:700;flex-shrink:0;margin-top:.25rem}.about-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:2rem;margin-top:3rem;padding-top:3rem;border-top:1px solid var(--border-color)}.stat-item{text-align:center;padding:1.5rem;background:var(--bg-card);border-radius:1rem;border:1px solid var(--border-color);transition:transform var(--transition-fast)}.stat-item:hover{transform:translateY(-4px);border-color:var(--primary-color)}.stat-number{font-size:2.5rem;font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:.5rem}.stat-label{color:var(--text-secondary);font-size:.95rem}@media(max-width:768px){.about-summary{font-size:1rem}.about-stats{grid-template-columns:repeat(2,1fr);gap:1rem}.stat-number{font-size:2rem}}@media(max-width:250px){.about-summary{font-size:.9rem}}@media(max-width:206px){.about-highlights>h3{width:80vw;font-size:1.3rem}}.skills{background:var(--bg-secondary);position:relative;overflow:hidden}.skills:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--primary-color),transparent)}.skills-loading{text-align:center;padding:4rem 0}.loading-spinner{width:50px;height:50px;border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;margin:0 auto 1.5rem;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.skills-error{text-align:center;padding:4rem 0;max-width:500px;margin:0 auto}.error-icon{font-size:3rem;margin-bottom:1.5rem;opacity:.7}.skills-error p{color:var(--text-secondary);margin-bottom:1.5rem}.skills-header{text-align:center;margin-bottom:3rem}.skills-stats{display:flex;justify-content:center;gap:2rem;margin-top:2rem;flex-wrap:wrap}.stat-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:1rem;padding:1.5rem 2rem;min-width:150px;text-align:center;transition:transform var(--transition-fast)}.stat-card:hover{transform:translateY(-5px);border-color:var(--primary-color)}.stat-number{font-size:2rem;font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;color:transparent;display:block;margin-bottom:.5rem}.stat-label{color:var(--text-secondary);font-size:.9rem}.skills-by-category{display:flex;flex-direction:column;gap:3rem}.category-section{background:var(--bg-card);border:1px solid var(--border-color);border-radius:1.5rem;padding:2rem;transition:transform var(--transition-normal)}.category-section:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:var(--primary-color)}.category-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.category-icon-wrapper{width:50px;height:50px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem}.category-icon{width:24px;height:24px;color:var(--primary-color)}.category-title{font-size:1.5rem;color:var(--text-primary);flex:1;margin:0}.category-count{background:var(--bg-secondary);color:var(--text-secondary);padding:.25rem 1rem;border-radius:1rem;font-size:.9rem;font-weight:500}.skills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.skill-card{background:var(--bg-primary);border:1px solid var(--border-color);border-left:4px solid;border-radius:1rem;padding:1.25rem;transition:all var(--transition-fast);display:flex;justify-content:space-between;align-items:center}.skill-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--primary-color)}.skill-header{display:flex;align-items:center;gap:1rem;flex:1}.skill-icon{width:40px;height:40px;border-radius:10px;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--bg-secondary)}.skill-icon img{width:24px;height:24px;object-fit:contain}.skill-icon.fallback{font-weight:700;color:var(--primary-color);font-size:1.1rem}.skill-info{flex:1}.skill-name{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.skill-level{display:flex;align-items:center;gap:.25rem}.star{width:14px;height:14px;color:var(--border-color)}.star.filled{color:#fbbf24}.level-text{margin-left:.5rem;font-size:.8rem;color:var(--text-secondary)}.skill-meta{display:flex;gap:.5rem}.skill-level-badge{padding:.25rem .75rem;border-radius:1rem;font-size:.75rem;font-weight:600;color:#fff;white-space:nowrap}.all-skills-section{margin-top:4rem;padding-top:3rem;border-top:1px solid var(--border-color)}.section-title{font-size:1.5rem;color:var(--text-primary);margin-bottom:1.5rem;text-align:center}.all-skills-grid{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.skill-pill{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:1px solid;border-radius:2rem;transition:all var(--transition-fast)}.skill-pill:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.pill-icon{width:16px;height:16px;object-fit:contain}.pill-name{font-weight:500;color:var(--text-primary)}.pill-level{font-size:.75rem;font-weight:600;opacity:.9}@media(max-width:992px){.skills-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.skills-stats{gap:1rem}.stat-card{min-width:130px;padding:1.25rem 1.5rem}}@media(max-width:768px){.skills-grid{grid-template-columns:1fr}.skills-stats{flex-direction:column;align-items:center}.stat-card{width:100%;max-width:250px}.category-section{padding:1.5rem}.category-header{flex-wrap:wrap}.skill-card{flex-direction:column;align-items:flex-start;gap:1rem}.skill-meta{align-self:flex-end}}@media(max-width:480px){.skills-stats{gap:.75rem}.stat-card{padding:1rem 1.25rem}.stat-number{font-size:1.75rem}.category-title{font-size:1.25rem}}@media(max-width:450px){.category-section{padding:5px!important}}@media(max-width:334px){section{padding:0}.container{padding:5px!important}.category-section{padding:5px}.skills{padding:0}}@media(max-width:316px){.level-text{font-size:.6rem}.skill-level{flex-wrap:wrap}.skill-card{padding:5px}.skill-card:hover{transform:translateY(-1px)}.category-section:hover{transform:none}}@media(max-width:255px){.skill-icon,.category-icon-wrapper{width:20px;height:20px}}@media(max-width:222px){h3.section-title{font-size:1.3rem}.pill-name{font-size:.9rem}.pill-level{font-size:.65rem}}@media(max-width:206px){.stat-card{padding:0;width:80vw}p.section-subtitle{font-size:.8rem;text-align:center;text-wrap:wrap;width:85vw;margin:auto auto auto 0}.skills-header>h2{width:80vw;font-size:1.3rem}.skill-header{flex-direction:column}.skill-level{justify-content:center}.skill-meta{justify-content:center;margin-right:auto;margin-left:auto}.category-header{flex-direction:column}.level-text{display:none}.skill-info{margin-left:15vw}.skill-name{font-size:.8rem}}@media(max-width:172px){.skill-level{margin-left:0}.star{width:8px;height:8px}}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem}.project-card{background:var(--bg-card);border-radius:1rem;overflow:hidden;border:1px solid var(--border-color);transition:all var(--transition-normal);display:flex;flex-direction:column}.project-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:var(--primary-color)}.project-media{height:220px;overflow:hidden;position:relative}.project-media video,.project-media img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-normal)}.project-card:hover .project-media video,.project-card:hover .project-media img{transform:scale(1.05)}.project-placeholder{width:100%;height:100%;background:linear-gradient(45deg,var(--primary-color),var(--secondary-color));display:flex;align-items:center;justify-content:center;opacity:.8}.placeholder-content{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}.tech-tag{background:var(--bg-primary);color:var(--text-primary);padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:500}.project-content{padding:1.5rem;flex:1;display:flex;flex-direction:column}.project-content h3{font-size:1.5rem;margin-bottom:.75rem;color:var(--text-primary)}.project-description{color:var(--text-secondary);margin-bottom:1.5rem;flex:1;line-height:1.6}.project-tech{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.tech-pill{background:var(--bg-secondary);color:var(--text-secondary);padding:.375rem .75rem;border-radius:1rem;font-size:.875rem;border:1px solid var(--border-color);transition:all var(--transition-fast)}.tech-pill:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.project-links{display:flex;gap:1rem}.project-link{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--bg-secondary);color:var(--text-primary);text-decoration:none;border-radius:.5rem;font-weight:500;transition:all var(--transition-fast);border:1px solid var(--border-color)}.project-link:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color);transform:translateY(-2px)}.project-link.live{background:var(--gradient-primary);color:#fff;border:none}@media(max-width:768px){.projects-grid{grid-template-columns:1fr}.project-media{height:200px}}@media(max-width:450px){.project-content{padding:0}.project-description{font-size:.9rem}.tech-pill{font-size:.8rem}.project-content>h3{font-size:1.3rem}.tech-tag{font-size:.7rem!important}}@media(max-width:200px){.project-content{width:100%}}.experience-timeline{max-width:800px;margin:0 auto;position:relative}.experience-timeline:before{content:"";position:absolute;left:30px;top:0;bottom:0;width:2px;background:var(--border-color);z-index:1}.timeline-item{display:flex;gap:2rem;margin-bottom:3rem;position:relative;z-index:2}.timeline-item:last-child{margin-bottom:0}.timeline-marker{width:60px;height:60px;background:var(--bg-card);border:2px solid var(--border-color);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--primary-color);font-size:1.5rem;transition:all var(--transition-fast)}.timeline-item:hover .timeline-marker{background:var(--gradient-primary);color:#fff;border-color:transparent;transform:scale(1.1)}.timeline-content{flex:1;background:var(--bg-card);border:1px solid var(--border-color);border-radius:1rem;padding:1.5rem;transition:all var(--transition-normal)}.timeline-item:hover .timeline-content{border-color:var(--primary-color);transform:translate(10px)}.timeline-header{margin-bottom:1rem}.timeline-header h3{font-size:1.25rem;margin-bottom:.5rem;color:var(--text-primary)}.timeline-meta{display:flex;flex-wrap:wrap;gap:1rem;color:var(--text-secondary);font-size:.95rem}.company{font-weight:600;color:var(--primary-color)}.timeline-description{color:var(--text-secondary);line-height:1.7}.timeline-tech{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.tech-tag{background:var(--bg-secondary);color:var(--text-secondary);padding:.25rem .75rem;border-radius:.5rem;font-size:.875rem;border:1px solid var(--border-color);transition:all var(--transition-fast)}.tech-tag:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}@media(max-width:768px){.experience-timeline:before{left:20px}.timeline-item{gap:1rem}.timeline-marker{width:40px;height:40px;font-size:1.25rem}.timeline-content{padding:1.25rem}}@media(max-width:334px){.timeline-content{padding:5px}.timeline-item:hover .timeline-content{transform:translate(1px)}.timeline-marker{width:20px;height:20px}.timeline-item{gap:5px}}@media(max-width:450px){.timeline-description{font-size:.8rem}.timeline-header>h3{font-size:1.2rem}.period,.company{font-size:.7rem}}.education-grid{max-width:800px;margin:0 auto}.education-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:1rem;padding:2rem;margin-bottom:2rem;display:flex;gap:1.5rem;transition:all var(--transition-normal)}.education-card:last-child{margin-bottom:0}.education-card:hover{border-color:var(--primary-color);transform:translateY(-4px);box-shadow:var(--shadow-lg)}.education-icon{width:60px;height:60px;background:var(--bg-secondary);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--primary-color);font-size:1.5rem;transition:all var(--transition-fast)}.education-card:hover .education-icon{background:var(--gradient-primary);color:#fff;transform:scale(1.1)}.education-content{flex:1}.education-content h3{font-size:1.25rem;margin-bottom:.5rem;color:var(--text-primary)}.education-meta{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem;color:var(--text-secondary);font-size:.95rem}.institution{font-weight:600;color:var(--primary-color)}.education-description{color:var(--text-secondary);line-height:1.7;margin-bottom:1.5rem}.certificate-link{display:inline-block;color:var(--primary-color);text-decoration:none;font-weight:500;padding:.5rem 1rem;border:1px solid var(--primary-color);border-radius:.5rem;transition:all var(--transition-fast)}.certificate-link:hover{background:var(--primary-color);color:#fff;transform:translateY(-2px)}@media(max-width:768px){.education-card{flex-direction:column;text-align:center;padding:1.5rem}.education-icon{margin:0 auto}.education-meta{justify-content:center}}@media(max-width:450px){.container>h2{font-size:1.3rem}.section-subtitle{font-size:.8rem!important}.education-icon{width:25px;height:25px}.education-card{padding:0}.education-content>h3{font-size:1.1rem}.institution,.period{font-size:.65rem}.education-description{font-size:.8rem}.certificate-link{padding:5px;font-size:.7rem;font-weight:bolder;margin-bottom:5px}}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;max-width:1200px;margin:0 auto}.contact-info h3,.contact-form-container h3{font-size:1.75rem;margin-bottom:2rem;color:var(--text-primary)}.contact-items{display:flex;flex-direction:column;gap:2rem}.contact-item{display:flex;gap:1rem;align-items:flex-start}.contact-icon{width:50px;height:50px;background:var(--bg-secondary);border-radius:.75rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--primary-color);font-size:1.25rem;transition:all var(--transition-fast)}.contact-item:hover .contact-icon{background:var(--gradient-primary);color:#fff;transform:scale(1.1)}.contact-item h4{font-size:1rem;margin-bottom:.25rem;color:var(--text-secondary)}.contact-item a,.contact-item span{color:var(--text-primary);text-decoration:none;font-weight:500;transition:color var(--transition-fast)}.contact-item a:hover{color:var(--primary-color)}.contact-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:500;color:var(--text-primary)}.form-group input,.form-group textarea{padding:.75rem 1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.5rem;color:var(--text-primary);font-family:inherit;font-size:1rem;transition:all var(--transition-fast)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a}.form-status{padding:1rem;border-radius:.5rem;font-weight:500}.form-status.success{background:#22c55e1a;color:#15803d;border:1px solid rgba(34,197,94,.2)}.form-status.error{background:#ef44441a;color:#b91c1c;border:1px solid rgba(239,68,68,.2)}.form-status.loading{background:#3b82f61a;color:#1d4ed8;border:1px solid rgba(59,130,246,.2)}@media(max-width:992px){.contact-content{grid-template-columns:1fr;gap:3rem}}@media(max-width:768px){.contact-content{gap:2rem}.contact-info h3,.contact-form-container h3{font-size:1.5rem}}@media(max-width:334px){.contact-icon{height:30px;width:30px}.contact-item>div>h4{font-size:.8rem;font-weight:bolder}.contact-item>div>a,.contact-item>div>span{font-size:.7rem;font-weight:lighter}section{padding:5px!important}.form-group{width:90vw}.contact-form-container>h3,.contact-info>h3{width:80vw;font-size:1.2rem}.container>h2{width:80vw;font-size:1.5rem}form>button{max-width:80vw;margin:auto}}@media(max-width:230px){.contact-item{flex-direction:column}}.social-links{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;max-width:800px;margin:0 auto}.social-link{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:1rem;text-decoration:none;color:var(--text-primary);width:120px;transition:all var(--transition-normal)}.social-link:hover{border-color:var(--primary-color);transform:translateY(-4px);box-shadow:var(--shadow-lg)}.social-icon{width:60px;height:60px;background:var(--bg-secondary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.75rem;color:var(--primary-color);transition:all var(--transition-fast)}.social-link:hover .social-icon{background:var(--gradient-primary);color:#fff;transform:scale(1.1)}.social-icon img{width:100%;height:100%;object-fit:contain}.social-platform{font-weight:500;font-size:.95rem}@media(max-width:768px){.social-links{gap:1rem}.social-link{width:120px;padding:1.25rem}.social-icon{width:50px;height:50px;font-size:1.5rem}}@media(max-width:480px){.social-links{gap:.75rem}.social-link{width:100px;padding:1rem}}@media(max-width:450px){.social-link{padding:0;width:60px;overflow-x:hidden}.social-icon{width:25px;height:25px}.social-platform{font-size:.8rem}}:root{--primary-color: #2563eb;--primary-dark: #1d4ed8;--secondary-color: #7c3aed;--text-primary: #1f2937;--text-tertiary:#36363b;--text-secondary: #b5b7b9;--bg-primary: #ffffff;--bg-secondary: #f9fafb;--bg-card: #ffffff;--border-color: #e5e7eb;--shadow: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 25px -5px rgba(0, 0, 0, .1);--gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-secondary: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .3s cubic-bezier(.4, 0, .2, 1);--font-heading: "Inter", system-ui, -apple-system, sans-serif;--font-body: "Inter", system-ui, -apple-system, sans-serif;--section-padding: 5rem 1.5rem;--container-max: 1200px}[data-theme=dark]{--primary-color: #3b82f6;--primary-dark: #2563eb;--secondary-color: #8b5cf6;--text-primary: #f9fafb;--text-tertiary:#90c2f3;--text-secondary: #d1d5db;--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-card: #1e293b;--border-color: #334155;--shadow: 0 4px 6px -1px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 25px -5px rgba(0, 0, 0, .3);--gradient-primary: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);--gradient-secondary: linear-gradient(135deg, #ec4899 0%, #8b5cf6 100%)}@media(max-width:768px){:root{--section-padding: 3rem 1rem}}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--text-primary);background-color:var(--bg-primary);transition:background-color var(--transition-normal),color var(--transition-normal);line-height:1.6}.container{max-width:var(--container-max);margin:0 auto;padding:0 1.5rem}section{padding:var(--section-padding)}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:700;line-height:1.2}h2{font-size:2.5rem;margin-bottom:3rem;text-align:center;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;color:transparent}.section-subtitle{text-align:center;color:var(--text-secondary);margin-bottom:4rem;font-size:1.1rem;max-width:600px;margin-left:auto;margin-right:auto}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:600;text-decoration:none;transition:all var(--transition-fast);border:none;cursor:pointer;font-size:1rem}.btn-primary{background:var(--gradient-primary);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-secondary{background-color:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{border-color:var(--primary-color);color:var(--primary-color)}.fade-in{opacity:0;transform:translateY(20px);transition:opacity var(--transition-normal),transform var(--transition-normal)}.fade-in.visible{opacity:1;transform:translateY(0)}@media(max-width:768px){h2{font-size:2rem;margin-bottom:2rem}.section-subtitle{margin-bottom:3rem;font-size:1rem}}@media(max-width:480px){h2{font-size:1.75rem}}.footer{background:var(--bg-secondary);border-top:1px solid var(--border-color);padding:3rem 1.5rem;text-align:center;width:100%}.footer .container{display:flex;flex-direction:column;align-items:center;gap:1rem}.footer p{color:var(--text-secondary);margin:0}@media(max-width:768px){.footer{padding:2rem 1rem}}@media(max-width:334px){footer{width:100%}}@media(max-width:322px){.footer{padding-left:0;padding-right:0;width:100%}footer>.container>p{text-align:center;text-wrap:wrap;font-size:.8rem}}@media(max-width:1000px){section{width:98vw}}@media(max-width:751px){section{width:97.5vw}}@media(max-width:600px){section{width:97vw}}@media(max-width:500px){section{width:96.5vw}}@media(max-width:429px){section{width:96vw}}@media(max-width:374px){section{width:95.5vw}}@media(max-width:334px){section{width:95vw}main{margin-top:60px}}@media(max-width:301px){section{width:94.5vw}}@media(max-width:272px){section{width:94vw}}@media(max-width:251px){section{width:93.5vw}}@media(max-width:231px){section{width:93vw}}@media(max-width:215px){section{width:92.5vw}}@media(max-width:190px){section{margin-left:0}}@media(max-width:150px){section{width:90vw}}@media(max-width:334px){section{overflow-x:hidden}}@media(max-width:450px){.container{padding:0}}#root{max-width:1280px;margin:0 auto;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}@media(max-width:334px){section{padding:5px}main{scrollbar-width:none}}
