html{scroll-behavior:smooth}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #646cff;--primary-dark: #535bf2;--secondary: #61dafb;--text-primary: #1a202c;--text-secondary: #646cff;--text-light: #4a5568;--bg: #ffffff;--bg-secondary: #f9f9f9;--border: #e0e0e0;--shadow: rgba(0, 0, 0, .1);--gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%)}@media(prefers-color-scheme:dark){:root{--text-primary: #ffffff;--text-secondary: #61dafb;--text-light: #cbd5e0;--bg: #242424;--bg-secondary: #1a1a1a;--border: #333;--shadow: rgba(0, 0, 0, .3)}}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;color:var(--text-primary);background:var(--bg);line-height:1.6;overflow-x:hidden}.app{min-height:100vh}.nav{position:fixed;top:0;left:0;right:0;background:var(--bg);border-bottom:1px solid var(--border);z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6}@media(prefers-color-scheme:dark){.nav{background:#242424e6}}.nav-container{max-width:1200px;margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}.nav-logo{font-size:1.5rem;font-weight:700;color:var(--text-primary);text-decoration:none;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.nav-links{display:flex;gap:2rem}.nav-link{color:var(--text-light);text-decoration:none;font-weight:500;transition:color .3s;position:relative}.nav-link:hover,.nav-link.active{color:var(--text-secondary)}.nav-link.active:after{content:"";position:absolute;bottom:-8px;left:0;right:0;height:2px;background:var(--gradient);border-radius:2px}.hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;position:relative;background:linear-gradient(135deg,#667eea0d,#764ba20d),repeating-linear-gradient(90deg,transparent,transparent 49px,rgba(100,108,255,.03) 49px,rgba(100,108,255,.03) 50px)}.hero-content{text-align:center;max-width:900px;animation:fadeInUp 1s ease-out;background:var(--bg);padding:3rem;border-radius:20px;box-shadow:0 20px 60px var(--shadow);border:2px solid var(--border);position:relative}.hero-content:before{content:"";position:absolute;inset:-2px;background:var(--gradient);border-radius:20px;z-index:-1;opacity:.1}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hero-profile{margin-bottom:2rem}.profile-image-wrapper{position:relative;display:inline-block}.profile-image{width:150px;height:150px;border-radius:50%;background:var(--gradient);display:flex;align-items:center;justify-content:center;font-size:3.5rem;font-weight:800;color:#fff;box-shadow:0 10px 40px #646cff4d;border:5px solid var(--bg);position:relative;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.profile-initials{text-shadow:0 2px 10px rgba(0,0,0,.2)}.profile-status{position:absolute;bottom:10px;right:10px;width:25px;height:25px;background:#10b981;border-radius:50%;border:4px solid var(--bg);animation:pulse-status 2s ease-in-out infinite}@keyframes pulse-status{0%,to{box-shadow:0 0 #10b981b3}50%{box-shadow:0 0 0 10px #10b98100}}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--gradient);color:#fff;border-radius:50px;font-size:.875rem;font-weight:600;margin-bottom:1.5rem;box-shadow:0 4px 15px #646cff4d}.badge-icon{font-size:1.2rem;display:inline-flex;align-items:center;vertical-align:middle}.hero-title{font-size:4rem;font-weight:800;margin-bottom:.5rem;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2;letter-spacing:-.02em}.hero-subtitle{display:inline-flex;align-items:center;gap:.5rem;font-size:1.5rem;color:var(--text-secondary);margin-bottom:1.5rem;font-weight:600}.subtitle-icon{font-size:1.3rem;display:inline-flex;align-items:center;vertical-align:middle}.hero-description{font-size:1.125rem;color:var(--text-light);margin-bottom:2.5rem;line-height:1.8;max-width:700px;margin-left:auto;margin-right:auto}.hero-stats{display:flex;gap:3rem;justify-content:center;margin-bottom:2.5rem;padding:2rem 0;border-top:2px solid var(--border);border-bottom:2px solid var(--border)}.stat-item{text-align:center;opacity:0;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out}.stat-item.animate-in{opacity:1;transform:translateY(0)}.stat-item:nth-child(1){transition-delay:.2s}.stat-item:nth-child(2){transition-delay:.3s}.stat-item:nth-child(3){transition-delay:.4s}.stat-value{font-size:2.5rem;font-weight:800;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:.5rem}.stat-label{font-size:.875rem;color:var(--text-light);font-weight:500;text-transform:uppercase;letter-spacing:.05em}.hero-cta{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.btn-primary,.btn-secondary{padding:1rem 2rem;font-size:1rem;font-weight:600;border:none;border-radius:12px;cursor:pointer;transition:all .3s;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem}.btn-icon{font-size:1.2rem;display:inline-flex;align-items:center;vertical-align:middle}.btn-primary{background:var(--gradient);color:#fff;box-shadow:0 4px 15px #646cff4d}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 10px 30px #646cff66}.btn-secondary{background:transparent;color:var(--text-secondary);border:2px solid var(--text-secondary)}.btn-secondary:hover{background:var(--text-secondary);color:#fff;transform:translateY(-3px);box-shadow:0 10px 30px var(--shadow)}.hero-contact{display:flex;justify-content:center;gap:1.5rem;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border);flex-wrap:wrap}.hero-contact-link{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--bg-secondary);border-radius:10px;text-decoration:none;color:var(--text-primary);font-weight:500;font-size:.9rem;border:1px solid var(--border);transition:all .3s}.hero-contact-link:hover{border-color:var(--text-secondary);transform:translateY(-2px);box-shadow:0 4px 15px var(--shadow)}.hero-contact-icon{font-size:1.2rem;display:inline-flex;align-items:center;vertical-align:middle}.scroll-indicator{position:absolute;bottom:2rem;animation:float-bounce 3s ease-in-out infinite;cursor:pointer;transition:opacity .6s ease-in-out,transform .6s ease-in-out,visibility .6s;opacity:1;visibility:visible}.scroll-indicator.visible{opacity:1;visibility:visible;transform:translateY(0)}.scroll-indicator.hidden{opacity:0;visibility:hidden;transform:translateY(20px)}.scroll-indicator:hover{transform:scale(1.1)}@keyframes float-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}.mouse{width:32px;height:52px;border:3px solid var(--text-secondary);border-radius:25px;position:relative;box-shadow:0 0 20px #646cff4d;background:#646cff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mouse:before{content:"";position:absolute;top:12px;left:50%;transform:translate(-50%);width:5px;height:12px;background:linear-gradient(180deg,var(--text-secondary) 0%,transparent 100%);border-radius:3px;animation:scroll-wheel 2s ease-in-out infinite}.mouse:after{content:"↓";position:absolute;bottom:-25px;left:50%;transform:translate(-50%);font-size:1rem;color:var(--text-secondary);opacity:.7;animation:arrow-pulse 2s ease-in-out infinite}@keyframes scroll-wheel{0%{opacity:1;transform:translate(-50%) translateY(0) scale(1)}50%{opacity:.5;transform:translate(-50%) translateY(18px) scale(.8)}to{opacity:0;transform:translate(-50%) translateY(20px) scale(.5)}}@keyframes arrow-pulse{0%,to{opacity:.7;transform:translate(-50%) translateY(0)}50%{opacity:1;transform:translate(-50%) translateY(5px)}}.loader{position:fixed;inset:0;background:var(--gradient);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeOut .5s ease-out 1.8s forwards}@keyframes fadeOut{to{opacity:0;visibility:hidden}}.loader-content{text-align:center;animation:loaderSlideUp .8s ease-out}@keyframes loaderSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.loader-logo{width:120px;height:120px;border-radius:50%;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;border:3px solid rgba(255,255,255,.3);animation:logoScale 1s ease-in-out infinite alternate}@keyframes logoScale{0%{transform:scale(1);box-shadow:0 0 20px #ffffff4d}to{transform:scale(1.05);box-shadow:0 0 40px #ffffff80}}.loader-initials{font-size:3rem;font-weight:800;color:#fff;text-shadow:0 2px 20px rgba(0,0,0,.2)}.loader-text{font-size:1.5rem;font-weight:600;color:#fff;margin-bottom:2rem;text-shadow:0 2px 10px rgba(0,0,0,.2);animation:textPulse 2s ease-in-out infinite}@keyframes textPulse{0%,to{opacity:1}50%{opacity:.7}}.loader-bar{width:200px;height:4px;background:#fff3;border-radius:2px;margin:0 auto;overflow:hidden}.loader-progress{height:100%;background:#fff;border-radius:2px;animation:progressBar 2s ease-out forwards;box-shadow:0 0 10px #ffffff80}@keyframes progressBar{0%{width:0%}to{width:100%}}.section{padding:6rem 2rem;scroll-margin-top:80px;position:relative;opacity:0;transform:translateY(30px);transition:opacity .8s ease-out,transform .8s ease-out}.section.animate-in{opacity:1;transform:translateY(0)}.section:first-of-type{opacity:1;transform:translateY(0)}.section:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:80%;max-width:1200px;height:1px;background:linear-gradient(90deg,transparent,var(--border) 20%,var(--border) 80%,transparent)}.section:first-of-type:before{display:none}.section-container{max-width:1200px;margin:0 auto}.section-title{font-size:3rem;font-weight:700;margin-bottom:3rem;text-align:center;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;position:relative;display:inline-block;left:50%;transform:translate(-50%)}.section-title:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:60px;height:4px;background:var(--gradient);border-radius:2px}.about{background:var(--bg-secondary)}.about-content{max-width:800px;margin:0 auto}.about-text{font-size:1.125rem;color:var(--text-light);margin-bottom:1.5rem;text-align:center;line-height:1.8}.timeline{max-width:800px;margin:0 auto;position:relative}.timeline:before{content:"";position:absolute;left:20px;top:0;bottom:0;width:2px;background:var(--gradient)}.timeline-item{position:relative;padding-left:60px;margin-bottom:3rem;opacity:0;transform:translate(-30px);transition:opacity .6s ease-out,transform .6s ease-out}.timeline-item.animate-in{opacity:1;transform:translate(0)}.timeline-item:nth-child(1){transition-delay:.1s}.timeline-item:nth-child(2){transition-delay:.2s}.timeline-item:nth-child(3){transition-delay:.3s}.timeline-marker{position:absolute;left:11px;top:0;width:20px;height:20px;border-radius:50%;background:var(--gradient);border:4px solid var(--bg)}.timeline-content{background:var(--bg-secondary);padding:2rem;border-radius:12px;box-shadow:0 4px 20px var(--shadow);transition:transform .3s}.timeline-content:hover{transform:translate(10px)}.timeline-title{font-size:1.5rem;font-weight:600;margin-bottom:.5rem;color:var(--text-secondary)}.timeline-company{font-size:1rem;color:var(--text-light);margin-bottom:.25rem}.timeline-period{font-size:.875rem;color:var(--text-light);margin-bottom:1rem}.timeline-description{color:var(--text-light);line-height:1.8}.skills{background:var(--bg-secondary)}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.skill-category{background:var(--bg);padding:2rem;border-radius:12px;box-shadow:0 4px 20px var(--shadow);transition:transform .3s,opacity .6s ease-out;opacity:0;transform:scale(.9)}.skill-category.animate-in{opacity:1;transform:scale(1)}.skill-category:nth-child(1){transition-delay:.1s}.skill-category:nth-child(2){transition-delay:.2s}.skill-category:nth-child(3){transition-delay:.3s}.skill-category:nth-child(4){transition-delay:.4s}.skill-category:hover{transform:translateY(-5px) scale(1)}.skill-category-title{font-size:1.25rem;font-weight:600;margin-bottom:1rem;color:var(--text-secondary)}.skill-tags{display:flex;flex-wrap:wrap;gap:.75rem}.skill-tag{padding:.5rem 1rem;background:var(--bg-secondary);border-radius:20px;font-size:.875rem;color:var(--text-light);border:1px solid var(--border);transition:all .3s;display:inline-flex;align-items:center;gap:.5rem}.skill-icon{font-size:1.1rem;display:inline-flex;align-items:center;filter:grayscale(0);transition:transform .3s}.skill-tag.featured{background:var(--gradient);color:#fff;border:none}.skill-tag:hover{transform:translateY(-3px);box-shadow:0 6px 15px var(--shadow)}.skill-tag:hover .skill-icon{transform:scale(1.2) rotate(5deg)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem}.project-card{background:var(--bg-secondary);padding:2rem;border-radius:12px;box-shadow:0 4px 20px var(--shadow);transition:all .3s;border:1px solid var(--border)}.project-card:hover{transform:translateY(-10px);box-shadow:0 10px 40px var(--shadow)}.project-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.project-title{font-size:1.5rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.project-tech{padding:.25rem .75rem;background:var(--gradient);color:#fff;border-radius:12px;font-size:.75rem;font-weight:600}.project-description{color:var(--text-light);margin-bottom:1.5rem;line-height:1.8}.project-tags{display:flex;flex-wrap:wrap;gap:.5rem}.tag{padding:.375rem .75rem;background:var(--bg);border-radius:12px;font-size:.75rem;color:var(--text-light);border:1px solid var(--border)}.contact{background:var(--bg-secondary);text-align:center}.contact-description{font-size:1.125rem;color:var(--text-light);max-width:700px;margin:0 auto 3rem;line-height:1.8}.contact-info{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}.contact-link{display:flex;align-items:center;gap:.5rem;padding:1rem 2rem;background:var(--bg);border-radius:12px;text-decoration:none;color:var(--text-primary);font-weight:600;border:2px solid var(--border);transition:all .3s}.contact-link:hover{border-color:var(--text-secondary);transform:translateY(-3px);box-shadow:0 10px 30px var(--shadow)}.contact-icon{font-size:1.5rem;display:inline-flex;align-items:center;vertical-align:middle}.footer{padding:2rem;text-align:center;color:var(--text-light);border-top:1px solid var(--border)}@media(max-width:1024px){.hero-content{padding:2.5rem}.hero-stats{gap:2rem}.stat-value{font-size:2rem}.section-title{font-size:2.5rem}}@media(max-width:768px){.nav-container{padding:1rem}.nav-links{gap:.75rem}.nav-link{font-size:.8rem}.nav-logo{font-size:1.25rem}.hero{padding:1rem}.hero-content{padding:2rem 1.5rem}.profile-image{width:120px;height:120px;font-size:2.5rem}.profile-status{width:20px;height:20px}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.25rem}.hero-description{font-size:1rem}.hero-stats{gap:1.5rem;flex-wrap:wrap;padding:1.5rem 0}.stat-value{font-size:2rem}.stat-label{font-size:.75rem}.hero-cta{flex-direction:column;width:100%}.btn-primary,.btn-secondary{width:100%;justify-content:center}.section{padding:4rem 1rem}.section-title{font-size:2rem}.timeline:before{left:10px}.timeline-item{padding-left:40px}.timeline-marker{left:6px;width:12px;height:12px}.timeline-description{font-size:.95rem}.projects-grid,.skills-grid{grid-template-columns:1fr;gap:1.5rem}.contact-info{flex-direction:column;align-items:stretch}.contact-link{justify-content:center}}@media(max-width:480px){.nav-container{flex-direction:column;gap:1rem;align-items:center}.nav-links{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}.nav-link{font-size:.75rem;padding:.25rem .5rem}.hero-content{padding:1.5rem 1rem}.profile-image{width:100px;height:100px;font-size:2rem}.profile-status{width:18px;height:18px;bottom:5px;right:5px}.hero-badge{font-size:.75rem;padding:.5rem 1rem}.badge-icon{font-size:1rem}.hero-title{font-size:2rem;letter-spacing:-.01em}.hero-subtitle{font-size:1.1rem}.subtitle-icon{font-size:1rem}.hero-description{font-size:.95rem}.hero-stats{gap:1rem;padding:1rem 0}.stat-value{font-size:1.75rem}.stat-label{font-size:.7rem}.btn-primary,.btn-secondary{padding:.875rem 1.5rem;font-size:.95rem}.btn-icon{font-size:1rem}.section{padding:3rem 1rem}.section-title{font-size:1.75rem}.section-title:after{width:40px;height:3px}.timeline-title{font-size:1.25rem}.timeline-company,.timeline-period{font-size:.875rem}.timeline-description{font-size:.9rem}.timeline-content,.skill-category{padding:1.5rem}.skill-category-title{font-size:1.1rem}.skill-tag{font-size:.8rem;padding:.4rem .8rem}.contact-description{font-size:1rem}.contact-link{padding:.875rem 1.5rem;font-size:.95rem}.contact-icon{font-size:1.25rem}.footer{font-size:.875rem;padding:1.5rem}}@media(max-width:360px){.hero-title{font-size:1.75rem}.hero-stats{flex-direction:column;gap:1rem}.stat-item{width:100%}.section-title{font-size:1.5rem}}@media(max-height:600px)and (orientation:landscape){.hero{min-height:auto;padding:5rem 2rem 3rem}.hero-content{padding:2rem;max-width:90%}.profile-image{width:80px;height:80px;font-size:2rem}.profile-status{width:15px;height:15px;bottom:5px;right:5px}.hero-profile{margin-bottom:1rem}.hero-badge{padding:.5rem 1rem;font-size:.75rem;margin-bottom:1rem}.hero-title{font-size:2rem;margin-bottom:.5rem}.hero-subtitle{font-size:1.1rem;margin-bottom:1rem}.hero-description{font-size:.9rem;margin-bottom:1.5rem}.hero-stats{padding:1rem 0;margin-bottom:1.5rem;gap:2rem}.stat-value{font-size:1.5rem}.stat-label{font-size:.7rem}.hero-cta{flex-direction:row;gap:1rem}.btn-primary,.btn-secondary{padding:.75rem 1.5rem;font-size:.9rem;width:auto}.scroll-indicator{display:none}.section{padding:3rem 2rem}.section-title{font-size:1.75rem;margin-bottom:2rem}.timeline-content{padding:1.25rem}.timeline-description{font-size:.9rem}.skill-category{padding:1.25rem}}@media(max-height:500px)and (orientation:landscape){.nav{padding:.5rem 0}.nav-container{padding:.5rem 1rem}.hero{padding:4rem 2rem 2rem}.hero-content{padding:1.5rem}.profile-image{width:60px;height:60px;font-size:1.5rem}.hero-profile{margin-bottom:.75rem}.hero-badge{padding:.4rem .8rem;font-size:.7rem;margin-bottom:.75rem}.hero-title{font-size:1.5rem;margin-bottom:.25rem}.hero-subtitle{font-size:1rem;margin-bottom:.75rem}.hero-description{font-size:.85rem;margin-bottom:1rem}.hero-stats{padding:.75rem 0;margin-bottom:1rem;gap:1.5rem}.stat-value{font-size:1.25rem}.stat-label{font-size:.65rem}.btn-primary,.btn-secondary{padding:.6rem 1.25rem;font-size:.85rem}.section{padding:2rem 1.5rem}}
