.navbar{position:fixed;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:20px 8%;background:#1a1a1af2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;box-shadow:0 2px 20px #0000004d}.logo{font-size:24px;font-weight:700;color:#fff;letter-spacing:1px}.logo span{color:#2196f3}.nav-links{display:flex;gap:35px;list-style:none}.nav-links a{color:#fff;text-decoration:none;font-size:16px;font-weight:500;transition:all .3s ease;position:relative}.nav-links a:hover,.nav-links a.active{color:#c41e3a}.nav-links a:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:2px;background:#c41e3a;transition:width .3s ease}.nav-links a:hover:after,.nav-links a.active:after{width:100%}@media (max-width: 768px){.navbar{padding:15px 5%}.logo{font-size:20px}.nav-links{gap:20px}.nav-links a{font-size:14px}}@media (max-width: 480px){.nav-links{gap:12px}.nav-links a{font-size:12px}}.hero{min-height:100vh;display:flex;align-items:center;justify-content:space-between;padding:100px 8%;gap:60px;background:linear-gradient(135deg,#1a1a1a,#2d2d2d)}.hero-left{flex:1;display:flex;justify-content:center;align-items:center}.profile-wrap{border-radius:50%;display:inline-block;padding:8px;position:relative;z-index:0;background:radial-gradient(circle at 30% 20%,rgba(11,132,255,.06),transparent 30%);transition:transform .26s cubic-bezier(.2,.9,.2,1);will-change:transform}.profile-img{width:380px;height:380px;border-radius:50%;border:6px solid rgba(255,255,255,.04);object-fit:cover;object-position:center;display:block;box-shadow:0 18px 50px #02081280;transform-origin:center;position:relative;z-index:1}.img-glow{position:absolute;width:420px;height:420px;border-radius:50%;filter:blur(28px);background:radial-gradient(circle,rgba(11,132,255,.12) 0%,transparent 45%);transform:translateY(6px);pointer-events:none;opacity:.45;z-index:0}.decor-blobs{position:absolute;pointer-events:none}.blob{position:absolute;border-radius:50%;opacity:.12}.b1{width:220px;height:220px;left:-60px;top:-40px;background:linear-gradient(135deg,#0b84ff,#6b2b8f);animation:blobMove1 10s ease-in-out infinite}.b2{width:160px;height:160px;right:-40px;bottom:-20px;background:linear-gradient(135deg,#ff6b6b,#ff9a9e);animation:blobMove2 14s ease-in-out infinite}.b3{width:120px;height:120px;left:40%;top:60%;background:linear-gradient(135deg,#11c3a3,#0bbfff);animation:blobMove3 12s ease-in-out infinite}.hero-right{flex:1;max-width:600px}.intro{font-size:18px;color:#b0b0b0;margin-bottom:10px}.typing-container{display:inline-block;color:#2196f3;font-weight:600}.hero-name{background:linear-gradient(90deg,#0b84ff,#6b2b8f);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-fill-color:transparent;animation:nameGlow 3s ease-in-out infinite}.cursor{display:inline-block;width:2px;height:20px;background:#2196f3;margin-left:2px;animation:blink .7s infinite}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.hero-name{font-size:62px;font-weight:800;color:#2196f3;margin:20px 0;letter-spacing:2px}.hero-description{font-size:17px;line-height:1.8;color:#d0d0d0;margin-bottom:35px;text-align:justify}.hero-buttons{display:flex;gap:20px;margin-bottom:40px}.btn{position:relative;overflow:hidden}.btn:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#ffffff05,#ffffff03);transform:translateY(100%);transition:transform .36s cubic-bezier(.2,.9,.2,1);pointer-events:none}.btn:hover:after{transform:translateY(0)}.social-links{display:flex;gap:20px}.social-links a{color:#fff;font-size:22px;transition:all .3s ease}.social-links a:hover{color:#2196f3;transform:scale(1.3)}@keyframes nameGlow{0%{filter:drop-shadow(0 6px 18px rgba(11,132,255,.06))}50%{filter:drop-shadow(0 18px 40px rgba(107,43,143,.12))}to{filter:drop-shadow(0 6px 18px rgba(11,132,255,.06))}}@keyframes blobMove1{0%{transform:translateZ(0) scale(1)}50%{transform:translate3d(8%,-6%,0) scale(1.06)}to{transform:translateZ(0) scale(1)}}@keyframes blobMove2{0%{transform:translateZ(0) scale(1)}50%{transform:translate3d(-6%,6%,0) scale(1.04)}to{transform:translateZ(0) scale(1)}}@keyframes blobMove3{0%{transform:translateZ(0) scale(1)}50%{transform:translate3d(4%,-4%,0) scale(1.03)}to{transform:translateZ(0) scale(1)}}@media (max-width: 1024px){.hero{flex-direction:column;text-align:center;padding:120px 5%}.hero-right{max-width:100%}.profile-img{width:320px;height:320px}.hero-name{font-size:48px}.hero-description{text-align:center}.hero-buttons,.social-links{justify-content:center}}@media (max-width: 768px){.profile-img{width:260px;height:260px}.hero-name{font-size:38px}.hero-buttons{flex-direction:column;width:100%}}@media (max-width: 480px){.profile-img{width:220px;height:220px}.hero-name{font-size:32px}.intro{font-size:16px}.hero-description{font-size:15px}}.about-content{max-width:980px;margin:0 auto}.about-text{font-size:16px;line-height:1.7;color:#d6e6f2;text-align:left;padding:8px 6px}.about-text p{margin-bottom:14px}.about-cta{margin-top:18px;display:flex;gap:12px}.btn{padding:10px 16px;border-radius:8px;text-decoration:none;font-weight:600}.btn-secondary{background:linear-gradient(90deg,#0b84ff,#6b2b8f);color:#fff}.btn-outline{border:1px solid rgba(255,255,255,.08);color:#cfe8ff;background:transparent}.btn-secondary:hover{box-shadow:0 10px 30px #0b84ff29,0 2px 6px #6b2b8f14;transform:translateY(-3px)}.btn-outline:hover{box-shadow:inset 0 0 0 1px #ffffff0a,0 8px 22px #0b84ff0f;transform:translateY(-2px)}@media (max-width: 768px){.about-text{padding:0}.about-cta{flex-direction:column}}.section-header{text-align:left;margin-bottom:18px}.section-sub{margin:6px 0 0;color:#9aa7b8;font-size:14px}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:28px}.portfolio-item{animation:fadeInUp .52s ease forwards;opacity:0;transform-origin:center}.portfolio-figure{margin:0;position:relative;border-radius:12px;overflow:hidden;box-shadow:0 8px 28px #06141e1f;background:linear-gradient(180deg,#06141e29,#0717252e)}.portfolio-figure{transform-origin:center;transition:transform .38s cubic-bezier(.2,.9,.2,1),box-shadow .28s ease;will-change:transform}.portfolio-figure:hover{transform:translateY(-8px) rotateX(2deg) rotateY(2deg) scale(1.01);box-shadow:0 20px 50px #071f362e}.portfolio-thumb{display:block;width:100%;height:180px;object-fit:contain;padding:18px;background:linear-gradient(180deg,#0410210f,#0818270a);transition:opacity .28s ease,transform .28s ease,filter .28s ease}.portfolio-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-end;background:linear-gradient(180deg,#030a1200 40%,#02060cad);padding:18px;color:#e6f2ff;transition:transform .28s ease,opacity .28s ease,background .28s ease;transform:translateY(16px);opacity:0}.portfolio-figure:hover .portfolio-overlay,.portfolio-figure:focus-within .portfolio-overlay{transform:translateY(0);opacity:1;background:linear-gradient(180deg,#030a1200 10%,#02060cf5)}.portfolio-figure:hover .portfolio-thumb,.portfolio-figure:focus-within .portfolio-thumb{opacity:0;transform:scale(1.03);filter:blur(1px) grayscale(.15);pointer-events:none}.overlay-content{width:100%}.project-title{margin:0 0 6px;font-size:16px;font-weight:700;color:#eaf6ff}.project-desc{margin:0 0 8px;font-size:13px;color:#b9c7d6;line-height:1.35}.tech-list{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.tech-chip{background:#ffffff0f;color:#cfe8ff;font-size:12px;padding:6px 8px;border-radius:999px}.overlay-actions{display:flex;gap:10px}.btn{display:inline-block;padding:8px 14px;border-radius:8px;font-weight:600;text-decoration:none}.btn-primary{background:linear-gradient(90deg,#0b84ff,#6b2b8f);color:#fff;box-shadow:0 6px 20px #0b84ff1f}@keyframes fadeInUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1024px){.portfolio-thumb{height:160px}}@media (max-width: 768px){.portfolio-grid{grid-template-columns:1fr}.portfolio-thumb{height:220px}}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:22px;margin-top:18px}.skill-group{background:linear-gradient(180deg,#ffffff03,#ffffff01);padding:14px;border-radius:12px;box-shadow:0 8px 30px #050f1914}.group-title{margin:0 0 12px;color:#bfe6ff;font-size:15px}.group-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px}.skill-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:#ffffff05;padding:20px 14px;border-radius:12px;color:#eaf6ff;text-align:center;opacity:0;transform:translateY(18px) scale(.98);transition:transform .22s ease,box-shadow .22s ease,background .22s ease,opacity .28s ease}.skill-card.visible{animation:cardIn .48s cubic-bezier(.2,.9,.2,1) forwards;animation-delay:calc(var(--i) * .06s)}.skill-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 16px 38px #0b84ff1a;background:linear-gradient(180deg,#0b84ff0f,#6b2b8f08)}.skill-icon{font-size:34px;width:72px;height:72px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#ffffff05}.skill-icon i{color:#dff5ff;display:inline-block}.skill-card.visible .skill-icon i{animation:popIn .52s cubic-bezier(.175,.885,.32,1.275) both;animation-delay:calc(var(--i) * .06s + .08s)}.skill-card:hover .skill-icon i{animation:pulse 1.2s ease-in-out infinite;animation-delay:0s}.skill-name{font-size:15px;font-weight:700;color:#d9f0ff}@keyframes cardIn{0%{opacity:0;transform:translateY(22px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes popIn{0%{transform:scale(.5);opacity:0}60%{transform:scale(1.12);opacity:1}to{transform:scale(1);opacity:1}}@keyframes pulse{0%{transform:scale(1);filter:drop-shadow(0 0 0 rgba(11,132,255,0))}50%{transform:scale(1.06);filter:drop-shadow(0 8px 20px rgba(11,132,255,.08))}to{transform:scale(1);filter:drop-shadow(0 0 0 rgba(11,132,255,0))}}@media (max-width: 900px){.group-list{grid-template-columns:repeat(3,1fr)}}@media (max-width: 480px){.group-list{grid-template-columns:repeat(2,1fr)}.skill-icon{width:56px;height:56px;font-size:24px}.skill-card{padding:12px}.skill-name{font-size:14px}}.resume-content{display:flex;gap:60px;flex-wrap:wrap;justify-content:center}.resume-left,.resume-right{flex:1;min-width:280px;max-width:500px}.resume-left h3,.resume-right h3{color:#2196f3;margin-bottom:20px;font-size:24px}.experience-item,.education-item{margin-bottom:25px}.experience-item h4,.education-item h4{font-size:18px;margin-bottom:5px;color:#fff}.company,.university,.date{font-style:italic;font-size:14px;color:#b0b0b0;margin-bottom:5px}.experience-item p,.education-item p{color:#d0d0d0;line-height:1.6}.certifications{list-style:disc inside;color:#d0d0d0;font-size:15px;line-height:1.8}@media (max-width: 1024px){.resume-content{flex-direction:column;align-items:center}}.contact-content{display:flex;gap:60px;flex-wrap:wrap;justify-content:center}.contact-info{flex:1;min-width:280px;max-width:400px;color:#d0d0d0}.contact-item{display:flex;align-items:center;gap:15px;margin-bottom:25px;font-size:16px}.contact-item i{font-size:22px;color:#2196f3;min-width:25px}.contact-item p{margin:0}.social-links-contact{display:flex;gap:15px;margin-top:20px}.social-links-contact a{color:#fff;font-size:24px;transition:all .3s ease}.social-links-contact a:hover{color:#2196f3;transform:scale(1.2)}.contact-form{flex:1;min-width:280px;max-width:500px}.form-group{margin-bottom:20px}.form-group input,.form-group textarea{width:100%;padding:12px 15px;border:2px solid #2196F3;border-radius:8px;background:transparent;color:#fff;font-size:15px;resize:none;transition:border-color .3s ease;font-family:inherit}.form-group input::placeholder,.form-group textarea::placeholder{color:#b0b0b0}.form-group input:focus,.form-group textarea:focus{border-color:#c41e3a;outline:none}.contact-form button{width:100%;padding:14px;background:#2196f3;border:none;border-radius:8px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:background .4s ease}.contact-form button:hover{background:#c41e3a;box-shadow:0 0 25px #c41e3acc,0 0 50px #c41e3a80;transform:translateY(-3px)}.contact-form button:disabled{background:#555;cursor:not-allowed;opacity:.6}.contact-form button:disabled:hover{background:#555;box-shadow:none;transform:none}.submit-status{padding:12px 20px;border-radius:8px;margin-bottom:20px;font-size:15px;font-weight:500;text-align:center;animation:slideDown .3s ease-out}.submit-status.success{background:#2ed57326;border:2px solid #2ed573;color:#2ed573}.submit-status.error{background:#ff475726;border:2px solid #ff4757;color:#ff4757}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1024px){.contact-content{flex-direction:column;align-items:center}}html,body{height:100%;margin:0;padding:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial;color:#eaeaea}.app{width:100%;min-height:100vh;position:relative;z-index:1}.bg-graphics{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:linear-gradient(120deg,#0618338c,#0c10178c);mix-blend-mode:screen;overflow:hidden}.bg-graphics:before{content:"";position:absolute;top:-20%;right:-10%;bottom:-20%;left:-10%;background-image:repeating-linear-gradient(to right,rgba(0,255,124,.025) 0 1px,transparent 1px 24px),radial-gradient(closest-side at 20% 20%,rgba(0,255,124,.04),transparent 20%),radial-gradient(closest-side at 80% 80%,rgba(0,140,80,.03),transparent 18%);filter:blur(26px) saturate(120%);animation:bgShift 10s linear infinite;mix-blend-mode:overlay}.bg-graphics:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle at 15% 25%,rgba(255,255,255,.02) 0 2px,transparent 3px),radial-gradient(circle at 85% 70%,rgba(255,255,255,.015) 0 2px,transparent 3px);opacity:.6;mix-blend-mode:overlay}@keyframes bgShift{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(-4%,2%,0) scale(1.02)}}.container{max-width:1200px;margin:0 auto;width:100%;padding:0 20px}.section{min-height:100vh;display:flex;align-items:flex-start;justify-content:center;padding:120px 8% 0;background:transparent;color:#fff;opacity:0;transform:translateY(20px);transition:opacity .6s cubic-bezier(.2,.9,.3,1),transform .6s cubic-bezier(.2,.9,.3,1)}.section.animate{opacity:1;transform:translateY(0)}.section-title{font-size:38px;font-weight:800;color:#2fb0ff;margin-bottom:48px;text-align:center;letter-spacing:1.6px;text-shadow:0 6px 18px rgba(47,176,255,.06)}.btn{padding:12px 30px;border:1px solid rgba(47,176,255,.9);background:linear-gradient(180deg,#2fb0ff0f,#2fb0ff05);color:#eaf6ff;font-size:15px;font-weight:600;cursor:pointer;transition:transform .22s ease,box-shadow .22s ease,background .22s ease;border-radius:8px;text-decoration:none;display:inline-block;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.btn:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 8px 30px #2fb0ff1f;background:linear-gradient(180deg,#2fb0ff24,#2fb0ff0a)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1024px){.container{padding:0 40px}}@media (max-width: 768px){.container{padding:0 20px}.section-title{font-size:28px}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Roboto Mono,Courier New,monospace;color:#b7f7c6;overflow-x:hidden;background:linear-gradient(160deg,#060607,#081014 40%,#04110a);background-size:300% 300%;animation:gradientShift 18s ease-in-out infinite}.app:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background-image:linear-gradient(90deg,rgba(0,255,124,.03) 1px,transparent 1px),radial-gradient(ellipse at 20% 20%,rgba(0,255,124,.03),transparent 25%),radial-gradient(ellipse at 80% 80%,rgba(0,140,80,.02),transparent 25%);background-size:24px 100%,40% 40%,30% 30%;animation:matrixShift 8s linear infinite}html{scroll-behavior:smooth}#root{width:100%}.app{width:100%;overflow-x:hidden}@media (prefers-reduced-motion: reduce){body{animation:none}.app:before{animation:none}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes matrixShift{0%{background-position:0 0,0 0,0 0}50%{background-position:-40px 0,10% 10%,-10% 5%}to{background-position:0 0,0 0,0 0}}@keyframes orbFloat{0%{transform:translateZ(0) scale(1);opacity:1}50%{transform:translate3d(6%,-4%,0) scale(1.02);opacity:.95}to{transform:translateZ(0) scale(1);opacity:1}}
