@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Fira+Code:wght@400;500&display=swap";*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #0a0a1a;--bg-secondary: #111127;--bg-card: #16163a;--bg-card-hover: #1c1c4a;--accent-primary: #6366f1;--accent-secondary: #8b5cf6;--accent-green: #10b981;--text-primary: #e2e8f0;--text-secondary: #94a3b8;--text-muted: #64748b;--border: rgba(99, 102, 241, .15);--border-hover: rgba(99, 102, 241, .4);--glow: rgba(99, 102, 241, .15);--glow-strong: rgba(99, 102, 241, .3)}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--text-primary);background:var(--bg-primary);line-height:1.6;overflow-x:hidden}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--accent-primary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent-secondary)}.app{position:relative;min-height:100vh}.container{max-width:1100px;margin:0 auto;padding:0 2rem}.section{padding:5rem 0}.section-title{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;margin-bottom:3rem;position:relative;display:inline-block}.section-title .gradient-text{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.section-title:after{content:"";position:absolute;bottom:-8px;left:0;width:60px;height:3px;background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary));border-radius:2px}.particle-container{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none}.hero{min-height:100vh;display:flex;align-items:center;position:relative;z-index:1;padding:2rem 0}.hero-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;width:100%}.hero-left{display:flex;flex-direction:column;gap:1.5rem}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem 1rem;background:#6366f11a;border:1px solid var(--border);border-radius:50px;font-size:.85rem;color:var(--accent-primary);width:fit-content}.hero-badge .badge-dot{width:8px;height:8px;background:var(--accent-green);border-radius:50%;animation:pulse-dot 2s infinite}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}.hero-name{font-size:clamp(2.5rem,6vw,4rem);font-weight:800;line-height:1.1;color:var(--text-primary)}.hero-name .gradient-text{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero-typewriter{font-size:clamp(1.25rem,3vw,1.75rem);color:var(--text-secondary);min-height:2.5rem}.hero-typewriter span{color:var(--accent-primary);font-weight:600}.hero-description{font-size:1.05rem;color:var(--text-secondary);line-height:1.7;max-width:500px}.hero-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.hero-social-link{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;border:1px solid var(--border);background:#6366f10d;color:var(--text-primary);transition:all .3s ease}.hero-social-link:hover{border-color:var(--accent-primary);background:#6366f126;color:var(--accent-primary);transform:translateY(-2px);box-shadow:0 4px 15px var(--glow)}.btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:#fff;text-decoration:none;border-radius:12px;font-weight:600;font-size:.95rem;transition:all .3s ease;border:none;cursor:pointer}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px var(--glow-strong)}.btn-outline{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:transparent;color:var(--text-primary);text-decoration:none;border-radius:12px;font-weight:500;font-size:.95rem;border:1px solid var(--border);transition:all .3s ease;cursor:pointer}.btn-outline:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:#6366f10d;transform:translateY(-2px)}.hero-code{position:relative}.hero-code:before{content:"";position:absolute;inset:-1px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));border-radius:17px;z-index:-1;opacity:.3}.code-block{background:#0f0f23e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:16px;overflow:hidden}.code-header{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#0000004d;border-bottom:1px solid var(--border)}.code-dot{width:12px;height:12px;border-radius:50%}.code-dot.red{background:#ff5f57}.code-dot.yellow{background:#febc2e}.code-dot.green{background:#28c840}.code-filename{margin-left:8px;font-size:.8rem;color:var(--text-muted);font-family:Fira Code,monospace}.code-body{padding:1.5rem;font-family:Fira Code,monospace;font-size:.85rem;line-height:1.8;color:var(--text-secondary)}.code-keyword{color:#c678dd}.code-variable{color:#e5c07b}.code-string{color:#98c379}.code-function{color:#61afef}.code-bracket{color:#abb2bf}.code-comment{color:#5c6370;font-style:italic}.scroll-indicator{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;color:var(--text-muted);font-size:.8rem;animation:bounce-scroll 2s infinite}@keyframes bounce-scroll{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(8px)}}.navbar{position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:.25rem;padding:.5rem;background:#0f0f23cc;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:50px;box-shadow:0 8px 32px #0000004d}.nav-item{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;color:var(--text-secondary);text-decoration:none;transition:all .3s ease;cursor:pointer;border:none;background:none}.nav-item:hover{color:var(--accent-primary);background:#6366f11a}.nav-item.active{color:#fff;background:var(--accent-primary);box-shadow:0 4px 15px var(--glow)}.about-content{display:grid;grid-template-columns:auto 1fr;gap:3rem;align-items:start}.about-photo-wrapper{position:relative}.about-photo-wrapper:before{content:"";position:absolute;inset:-3px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));border-radius:50%;z-index:0}.about-photo{width:180px;height:180px;border-radius:50%;object-fit:cover;position:relative;z-index:1;border:4px solid var(--bg-primary)}.about-text{display:flex;flex-direction:column;gap:1.5rem}.about-text p{color:var(--text-secondary);font-size:1.05rem;line-height:1.8}.about-languages{display:flex;gap:1rem;flex-wrap:wrap}.language-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;font-size:.9rem;color:var(--text-primary)}.language-badge .level{color:var(--text-muted);font-size:.8rem}.timeline{display:flex;flex-direction:column;gap:2rem;position:relative;padding-left:2rem}.timeline:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--accent-primary),var(--accent-secondary),transparent)}.timeline-item{position:relative;padding:1.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;transition:all .3s ease}.timeline-item:hover{border-color:var(--border-hover);box-shadow:0 4px 20px var(--glow);transform:translate(4px)}.timeline-item:before{content:"";position:absolute;left:-2.55rem;top:1.75rem;width:12px;height:12px;background:var(--accent-primary);border-radius:50%;border:3px solid var(--bg-primary);box-shadow:0 0 10px var(--glow)}.timeline-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.75rem}.timeline-title{font-size:1.15rem;font-weight:600;color:var(--text-primary)}.timeline-subtitle{color:var(--accent-primary);font-weight:500;font-size:.95rem}.timeline-meta{text-align:right;flex-shrink:0}.timeline-date{color:var(--text-muted);font-size:.85rem;font-weight:500}.timeline-location{color:var(--text-muted);font-size:.8rem}.timeline-summary{color:var(--text-secondary);margin-bottom:.75rem;font-size:.95rem}.timeline-highlights{list-style:none;display:flex;flex-direction:column;gap:.4rem}.timeline-highlights li{padding-left:1.5rem;position:relative;color:var(--text-secondary);font-size:.9rem}.timeline-highlights li:before{content:"";position:absolute;left:0;top:.6rem;width:6px;height:6px;background:var(--accent-primary);border-radius:50%}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem}.skill-card{padding:1.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;transition:all .3s ease}.skill-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:#6366f11a;border-radius:10px;color:var(--accent-primary);margin-bottom:1rem}.skill-card:hover{border-color:var(--border-hover);box-shadow:0 4px 20px var(--glow);transform:translateY(-4px)}.skill-label{font-size:1rem;font-weight:600;color:var(--accent-primary);margin-bottom:.5rem}.skill-details{color:var(--text-secondary);font-size:.9rem;line-height:1.6}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem}.project-card{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;overflow:hidden;transition:all .3s ease;display:flex;flex-direction:column}.project-card:hover{border-color:var(--border-hover);box-shadow:0 8px 30px var(--glow);transform:translateY(-6px)}.project-image{width:100%;height:200px;background:linear-gradient(135deg,var(--bg-secondary),var(--bg-card));display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--border);position:relative;overflow:hidden}.project-image img{width:100%;height:100%;object-fit:cover;display:block}.project-image .coming-soon-icon{color:var(--text-muted);opacity:.4}.project-image .project-status-badge{position:absolute;top:1rem;right:1rem;padding:.25rem .75rem;border-radius:50px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-completed{background:#10b98126;color:var(--accent-green);border:1px solid rgba(16,185,129,.3)}.status-in-progress{background:#eab30826;color:#eab308;border:1px solid rgba(234,179,8,.3)}.status-coming-soon{background:#6366f126;color:var(--accent-primary);border:1px solid var(--border)}.project-info{padding:1.5rem;flex:1;display:flex;flex-direction:column}.project-title{font-size:1.15rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.project-description{color:var(--text-secondary);font-size:.9rem;line-height:1.6;margin-bottom:1rem;flex:1}.project-tech{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.tech-tag{padding:.25rem .75rem;background:#6366f11a;border:1px solid var(--border);border-radius:6px;font-size:.8rem;color:var(--accent-primary);font-family:Fira Code,monospace}.project-links{display:flex;gap:.75rem}.project-link{display:inline-flex;align-items:center;gap:.4rem;color:var(--text-secondary);text-decoration:none;font-size:.85rem;transition:color .2s}.project-link:hover{color:var(--accent-primary)}.certifications-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.25rem}.certification-card{padding:1.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;justify-content:space-between;transition:all .3s ease}.certification-card:hover{border-color:var(--border-hover);box-shadow:0 4px 20px var(--glow);transform:translateY(-4px)}.certification-title{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem;line-height:1.4}.certification-issuer{color:var(--accent-primary);font-weight:500;font-size:.9rem;margin-bottom:.25rem}.certification-date{color:var(--text-muted);font-size:.85rem;margin-bottom:1rem}.btn-certificate{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#6366f11a;border:1px solid var(--border);color:var(--accent-primary);text-decoration:none;border-radius:8px;font-size:.85rem;font-weight:500;transition:all .2s;width:fit-content}.btn-certificate:hover{background:#6366f133;border-color:var(--accent-primary)}.contact-content{text-align:center;max-width:600px;margin:0 auto}.contact-text{color:var(--text-secondary);font-size:1.1rem;margin-bottom:2rem;line-height:1.7}.contact-links{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;margin-bottom:2rem}.contact-item{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;color:var(--text-primary);text-decoration:none;transition:all .3s ease;font-size:.9rem}.contact-item:hover{border-color:var(--accent-primary);background:#6366f11a;transform:translateY(-2px);box-shadow:0 4px 15px var(--glow)}.contact-item svg{color:var(--accent-primary)}.footer{padding:2rem 0;border-top:1px solid var(--border);text-align:center;color:var(--text-muted);font-size:.85rem;margin-bottom:5rem}.footer a{color:var(--accent-primary);text-decoration:none}.footer a:hover{text-decoration:underline}.btn-primary:focus-visible,.btn-outline:focus-visible,.btn-certificate:focus-visible,.hero-social-link:focus-visible,.nav-item:focus-visible,.contact-item:focus-visible,.project-link:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}@media(max-width:768px){.hero-content{grid-template-columns:1fr;gap:2.5rem;text-align:center}.hero-left{align-items:center}.hero-description{max-width:100%}.hero-actions{justify-content:center}.hero-code{display:none}.about-content{grid-template-columns:1fr;text-align:center}.about-photo-wrapper{justify-self:center}.about-languages{justify-content:center}.timeline{padding-left:1.5rem}.timeline-header{flex-direction:column;gap:.25rem}.timeline-meta{text-align:left}.skills-grid,.projects-grid,.certifications-grid{grid-template-columns:1fr}.section{padding:3rem 0}.container{padding:0 1.25rem}.navbar{bottom:1rem;gap:.15rem;padding:.35rem}.nav-item{width:40px;height:40px}}@media(max-width:480px){.hero-name{font-size:2rem}.contact-links{flex-direction:column;align-items:center}}
