.theme-toggle{width:50px;height:26px;background:var(--bg-secondary);border:2px solid var(--border-glass);border-radius:20px;position:relative;cursor:pointer;transition:var(--transition)}.theme-toggle:hover{background:var(--primary-color)}.theme-toggle-inner{width:20px;height:20px;background:var(--primary-color);border-radius:50%;position:absolute;top:1px;left:1px;transition:var(--transition);display:flex;align-items:center;justify-content:center;color:#fff;font-size:10px}[data-theme=dark] .theme-toggle-inner{transform:translate(22px)}.theme-toggle:hover .theme-toggle-inner{background:#fff;color:var(--primary-color)}.header{position:fixed;top:0;left:0;right:0;background:var(--bg-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border-glass);z-index:1000;transition:var(--transition)}.header-scrolled{box-shadow:var(--shadow-glass)}.header-content{display:flex;align-items:center;justify-content:space-between;padding:1rem 0}.logo h2{color:var(--primary-color);font-weight:700;font-size:1.5rem}.nav-links{display:flex;list-style:none;gap:2rem}.nav-links a{color:var(--text-primary);text-decoration:none;font-weight:500;transition:var(--transition);position:relative}.nav-links a:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:2px;background:var(--primary-color);transition:width .3s ease}.nav-links a:hover:after{width:100%}.nav-links a:hover{color:var(--primary-color)}.header-actions{display:flex;align-items:center;gap:1rem}.menu-toggle{display:none;flex-direction:column;background:none;border:none;cursor:pointer;padding:.5rem;gap:4px}.menu-toggle span{width:25px;height:3px;background:var(--text-primary);transition:var(--transition)}@media (max-width: 768px){.nav{position:absolute;top:100%;left:0;right:0;background:var(--bg-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border-glass);transform:translateY(-100%);opacity:0;visibility:hidden;transition:var(--transition)}.nav-open{transform:translateY(0);opacity:1;visibility:visible}.nav-links{flex-direction:column;padding:2rem;gap:1rem}.menu-toggle{display:flex}.nav-open+.header-actions .menu-toggle span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.nav-open+.header-actions .menu-toggle span:nth-child(2){opacity:0}.nav-open+.header-actions .menu-toggle span:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}}*{cursor:none!important}.custom-cursor{position:fixed;width:32px;height:32px;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:all .05s ease-out;will-change:transform}.cursor-hand{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--bg-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid var(--primary-color);border-radius:50%;color:var(--primary-color);transition:all .1s ease-out;box-shadow:0 4px 15px #3b82f64d}.cursor-hand svg{width:16px;height:16px;transition:all .1s ease-out}.custom-cursor.hovering{transform:translate(-50%,-50%) scale(1.3)}.custom-cursor.hovering .cursor-hand{background:#10b98133;border-color:var(--secondary-color);color:var(--secondary-color);box-shadow:0 6px 20px #10b98166;animation:pulse 1s infinite}.custom-cursor.hovering .cursor-hand svg{transform:scale(1.1)}.custom-cursor.clicking{transform:translate(-50%,-50%) scale(.9)}.custom-cursor.clicking .cursor-hand{background:#f59e0b4d;border-color:var(--accent-color);color:var(--accent-color);box-shadow:0 8px 25px #f59e0b80}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.9}}[data-theme=dark] .cursor-hand{background:#ffffff1a;border-color:var(--primary-color);color:var(--primary-color)}[data-theme=dark] .custom-cursor.hovering .cursor-hand{background:#10b98133;border-color:var(--secondary-color);color:var(--secondary-color)}[data-theme=dark] .custom-cursor.clicking .cursor-hand{background:#f59e0b4d;border-color:var(--accent-color);color:var(--accent-color)}@media (max-width: 768px){*{cursor:auto!important}.custom-cursor{display:none}}@media (hover: none) and (pointer: coarse){*{cursor:auto!important}.custom-cursor{display:none}}::selection{background:var(--primary-color);color:#fff}::-moz-selection{background:var(--primary-color);color:#fff}.hero{min-height:100vh;display:flex;align-items:center;position:relative;overflow:hidden;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%)}.hero-background{position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 80%,rgba(59,130,246,.1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(16,185,129,.1) 0%,transparent 50%);animation:float 6s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.hero-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;z-index:1}.hero-text h1{font-size:3.5rem;font-weight:700;line-height:1.2;margin-bottom:1rem;color:var(--text-primary)}.highlight{color:var(--primary-color);position:relative}.highlight:after{content:"";position:absolute;bottom:-5px;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color));animation:expand 2s ease-out}@keyframes expand{0%{width:0}to{width:100%}}.hero-subtitle{font-size:1.25rem;color:var(--text-secondary);margin-bottom:2rem;line-height:1.6}.hero-buttons{display:flex;gap:1rem;flex-wrap:wrap}.image-container{position:relative;display:flex;justify-content:center;align-items:center}.profile-image{width:350px;height:350px;border-radius:50%;object-fit:cover;border:4px solid var(--primary-color);box-shadow:0 20px 40px #0000001a;transition:var(--transition);z-index:2;position:relative}.profile-image:hover{transform:scale(1.05);box-shadow:0 25px 50px #3b82f64d}.image-decoration{position:absolute;width:400px;height:400px;border:2px solid var(--primary-color);border-radius:50%;animation:rotate 20s linear infinite;opacity:.3}.image-decoration:before{content:"";position:absolute;top:20px;left:20px;right:20px;bottom:20px;border:2px solid var(--secondary-color);border-radius:50%;animation:rotate 15s linear infinite reverse}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.hero{min-height:115vh}.hero-content{grid-template-columns:1fr;gap:2rem;text-align:center}.hero .container{height:100vh;padding:3.5rem 3rem}.hero-image{margin-top:2rem}.hero-text h1{font-size:2.5rem}.hero-subtitle{font-size:1.1rem}.profile-image{width:250px;height:250px}.image-decoration{width:300px;height:300px}.hero-buttons{justify-content:center}}@media (max-width: 480px){.hero-content{padding-top:3rem}.hero .container{height:106vh;padding:3.5rem .5rem}.hero-image{margin-top:3rem}.hero-text h1{font-size:2rem}.profile-image{width:200px;height:200px}.image-decoration{width:250px;height:250px}}@media (max-width: 380px){.hero .container{height:118vh;padding:3.5rem .5rem}}@media (max-width: 325px){.hero .container{height:123vh;padding:3.5rem .5rem}}.about{background:var(--bg-secondary)}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.about-image{position:relative}.image-wrapper{position:relative;overflow:hidden;border-radius:20px;box-shadow:0 20px 40px #0000001a;height:600px}.about-img{width:100%;height:600px;object-fit:cover;transition:var(--transition)}.about-img:hover{transform:scale(1.05)}.image-wrapper:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#3b82f633,#10b98133);z-index:1}.text-content{padding:2rem}.text-content h3{font-size:1.5rem;font-weight:600;color:var(--primary-color);margin-bottom:1rem;margin-top:2rem}.text-content h3:first-child{margin-top:0}.text-content p{color:var(--text-secondary);line-height:1.8;margin-bottom:1.5rem}@media (max-width: 768px){.about-content{grid-template-columns:1fr;gap:2rem}.about-img{height:600px}.text-content{padding:1rem}}@media (max-width: 380px){.about-img,.about-image{display:none}}.experience{background:var(--bg-secondary)}.experience-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.experience-card{padding:2rem;transition:var(--transition);position:relative;overflow:hidden}.experience-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(59,130,246,.05),transparent);transition:left .6s ease}.experience-card:hover:before{left:100%}.experience-card:hover{transform:translateY(-8px);box-shadow:0 25px 50px #00000026}.experience-header{display:flex;align-items:flex-start;gap:1.5rem;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-glass)}.experience-icon{width:60px;height:60px;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0;box-shadow:0 8px 25px #3b82f64d;transition:var(--transition)}.experience-card:hover .experience-icon{transform:scale(1.1) rotate(5deg);box-shadow:0 12px 35px #3b82f666}.experience-info{flex:1}.experience-title{font-size:1.4rem;font-weight:700;color:var(--text-primary);margin:0 0 .5rem;line-height:1.3}.experience-company{font-size:1.1rem;font-weight:600;color:var(--primary-color);margin:0 0 .75rem;line-height:1.3}.experience-period{font-size:.9rem;color:var(--text-secondary);background:var(--bg-glass);padding:.4rem 1rem;border-radius:25px;border:1px solid var(--border-glass);display:inline-block;font-weight:500}.experience-content{margin-top:1.5rem}.achievements-list{list-style:none;padding:0;margin:0}.achievement-item{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;line-height:1.7}.achievement-item:last-child{margin-bottom:0}.achievement-icon{color:var(--secondary-color);font-size:.9rem;margin-top:.4rem;flex-shrink:0}.achievement-item span{color:var(--text-secondary);font-size:.95rem;line-height:1.6}@media (max-width: 1024px){.experience-card{text-align:center}.experience-header{flex-direction:column;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;text-align:center}.experience-icon{align-self:center}.experience-info,.experience-content{text-align:center}.achievements-list{text-align:left;display:inline-block;max-width:100%}}@media (max-width: 768px){.experience-grid{grid-template-columns:1fr;gap:1.5rem}.experience-card{padding:1.5rem;text-align:center}.experience-header{flex-direction:column;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;text-align:center}.experience-icon{align-self:center;width:55px;height:55px;font-size:1.3rem}.experience-info{text-align:center;align-self:center}.experience-title{font-size:1.25rem;text-align:center}.experience-company{font-size:1rem;text-align:center}.experience-period{font-size:.85rem;padding:.3rem .8rem}.experience-content{text-align:center}.achievements-list{text-align:left;display:inline-block;max-width:100%}.achievement-item{gap:.75rem;margin-bottom:1rem}.achievement-item span{font-size:.9rem}}@media (max-width: 480px){.experience-card{padding:1.25rem}.experience-header{gap:.75rem;margin-bottom:1.25rem}.experience-info{align-self:center}.experience-icon{width:50px;height:50px;font-size:1.2rem}.experience-title{font-size:1.15rem}.experience-company{font-size:.95rem}.experience-period{font-size:.8rem;padding:.25rem .7rem}.achievement-item span{font-size:.85rem}}@media (max-width: 360px){.experience-card{padding:1rem}.experience-info{align-self:center}.experience-header{gap:.5rem;margin-bottom:1rem}.experience-icon{width:45px;height:45px;font-size:1.1rem}.experience-title{font-size:1.1rem}.experience-company{font-size:.9rem}.experience-period{font-size:.75rem;padding:.2rem .6rem}.achievement-item span{font-size:.8rem}}.skills{background:var(--bg-primary)}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-top:2rem}.skill-card{padding:2rem;text-align:center;transition:var(--transition);position:relative;overflow:hidden}.skill-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .5s ease}.skill-card:hover:before{left:100%}.skill-card:hover{transform:translateY(-10px) scale(1.05);box-shadow:0 25px 50px #0003}.skill-icon{font-size:3rem;margin-bottom:1rem;color:var(--skill-color);transition:var(--transition)}.skill-card:hover .skill-icon{transform:scale(1.2);color:var(--primary-color)}.skill-name{font-size:1.1rem;font-weight:500;color:var(--text-primary);margin:0}@media (max-width: 768px){.skills-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.skill-card{padding:1.5rem}.skill-icon{font-size:2.5rem}}@media (max-width: 480px){.skills-grid{grid-template-columns:repeat(2,1fr)}}.projects{background:var(--bg-secondary)}.projects-tabs{display:flex;justify-content:center;gap:1rem;margin-bottom:3rem;flex-wrap:wrap}.tab-button{padding:12px 24px;border:2px solid var(--border-glass);background:var(--bg-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-primary);border-radius:25px;font-weight:500;cursor:pointer;transition:var(--transition);position:relative;overflow:hidden}.tab-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(59,130,246,.1),transparent);transition:left .5s ease}.tab-button:hover:before{left:100%}.tab-button:hover{border-color:var(--primary-color);transform:translateY(-2px)}.tab-button.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;margin-bottom:3rem}.project-card{overflow:hidden;transition:var(--transition);height:100%;display:flex;flex-direction:column}.project-image{position:relative;height:200px;overflow:hidden}.project-image img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}.project-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;opacity:0;transition:var(--transition)}.project-card:hover .project-overlay{opacity:1}.project-card:hover .project-image img{transform:scale(1.1)}.project-link{color:#fff;font-size:2rem;text-decoration:none;transition:var(--transition)}.project-link:hover{color:var(--primary-color);transform:scale(1.2)}.project-content{padding:1.5rem;flex:1;display:flex;flex-direction:column}.project-title{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.project-description{color:var(--text-secondary);line-height:1.6;margin-bottom:1.5rem;flex:1}.load-more-container{text-align:center;margin-top:2rem}.mobile-category{margin-bottom:4rem}.mobile-category-title{font-size:1.8rem;font-weight:600;color:var(--text-primary);margin-bottom:2rem;text-align:center;position:relative}.mobile-category-title:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:60px;height:3px;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color));border-radius:2px}@media (max-width: 768px){.projects-grid{grid-template-columns:1fr;gap:1.5rem}.projects-tabs{gap:.5rem}.tab-button{padding:10px 20px;font-size:.9rem}.mobile-category{margin-bottom:3rem}.mobile-category-title{font-size:1.5rem;margin-bottom:1.5rem}}@media (max-width: 480px){.projects-tabs{flex-direction:column;align-items:center}.tab-button{width:200px}.mobile-category-title{font-size:1.3rem}}.contact{background:var(--bg-primary)}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}.contact-info h3,.social-links h3{font-size:2rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem}.contact-info p{color:var(--text-secondary);line-height:1.8;margin-bottom:2rem;font-size:1.1rem}.contact-item{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:var(--bg-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-glass);border-radius:12px;transition:var(--transition)}.contact-item:hover{transform:translateY(-5px);box-shadow:var(--shadow-glass)}.contact-icon{width:50px;height:50px;background:var(--primary-color);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}.contact-details h4{color:var(--text-primary);margin-bottom:.25rem;font-weight:500}.contact-details a{color:var(--text-secondary);text-decoration:none;transition:var(--transition)}.contact-details a:hover{color:var(--primary-color)}.social-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem}.social-card{padding:1.5rem;text-align:center;text-decoration:none;color:var(--text-primary);transition:var(--transition);display:flex;flex-direction:column;align-items:center;gap:.5rem}.social-card:hover{transform:translateY(-10px);color:var(--primary-color)}.social-card i{font-size:2rem;margin-bottom:.5rem}.social-card span{font-weight:500}.social-card:nth-child(1):hover{color:#333}.social-card:nth-child(2):hover{color:#0077b5}.social-card:nth-child(3):hover{color:#1da1f2}@media (max-width: 768px){.contact-content{grid-template-columns:1fr;gap:2rem}.social-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 480px){.contact-info h3,.social-links h3{font-size:1.5rem}.social-grid{grid-template-columns:1fr}}.footer{background:var(--bg-secondary);border-top:1px solid var(--border-glass);padding:2rem 0}.footer-content{display:flex;justify-content:space-between;align-items:center;text-align:center}.footer-content p{color:var(--text-secondary);margin:0}.footer-links{display:flex;gap:1rem}.footer-links a{color:var(--text-secondary);font-size:1.2rem;text-decoration:none;transition:var(--transition);padding:.5rem;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.footer-links a:hover{color:var(--primary-color);background:var(--bg-glass);transform:translateY(-2px)}@media (max-width: 768px){.footer-content{flex-direction:column;gap:1rem}}:root{--primary-color: #3B82F6;--secondary-color: #10B981;--accent-color: #F59E0B;--text-primary: #1F2937;--text-secondary: #6B7280;--bg-primary: #FFFFFF;--bg-secondary: #F9FAFB;--bg-glass: rgba(255, 255, 255, .1);--border-glass: rgba(255, 255, 255, .2);--shadow-glass: 0 8px 32px 0 rgba(31, 38, 135, .37);--transition: all .3s cubic-bezier(.4, 0, .2, 1)}[data-theme=dark]{--text-primary: #F9FAFB;--text-secondary: #D1D5DB;--bg-primary: #111827;--bg-secondary: #1F2937;--bg-glass: rgba(0, 0, 0, .2);--border-glass: rgba(255, 255, 255, .1);--shadow-glass: 0 8px 32px 0 rgba(0, 0, 0, .5)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Poppins,sans-serif;line-height:1.6;color:var(--text-primary);background:var(--bg-primary);transition:var(--transition)}.App{min-height:100vh;overflow-x:hidden}.container{max-width:1200px;margin:0 auto;padding:0 20px}.glass-card{background:var(--bg-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-glass);border-radius:16px;box-shadow:var(--shadow-glass);transition:var(--transition)}.glass-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px #1f268780}.btn{padding:12px 24px;border:none;border-radius:8px;font-weight:500;text-decoration:none;display:inline-block;transition:var(--transition);cursor:pointer;font-size:16px;text-align:center}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover{background:#2563eb;transform:translateY(-2px)}.btn-secondary{background:transparent;color:var(--primary-color);border:2px solid var(--primary-color)}.btn-secondary:hover{background:var(--primary-color);color:#fff}.section{padding:80px 0;position:relative}.section-title{font-size:2.5rem;font-weight:700;text-align:center;margin-bottom:60px;color:var(--text-primary)}.fade-in{opacity:0;transform:translateY(30px);animation:fadeIn .8s ease-out forwards}@keyframes fadeIn{to{opacity:1;transform:translateY(0)}}.slide-in-left{opacity:0;transform:translate(-50px);animation:slideInLeft .8s ease-out forwards}@keyframes slideInLeft{to{opacity:1;transform:translate(0)}}.slide-in-right{opacity:0;transform:translate(50px);animation:slideInRight .8s ease-out forwards}@keyframes slideInRight{to{opacity:1;transform:translate(0)}}.scale-in{opacity:0;transform:scale(.8);animation:scaleIn .8s ease-out forwards}@keyframes scaleIn{to{opacity:1;transform:scale(1)}}@media (max-width: 768px){.section{padding:60px 0}.section-title{font-size:2rem;margin-bottom:40px}.container{padding:0 16px}}html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--primary-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#2563eb}
