@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Fira+Code:wght@400;500&display=swap";:root{--bg-primary:#0a0a14;--bg-secondary:#0f0f1e;--bg-card:#ffffff0a;--bg-card-hover:#ffffff12;--accent:#7c3aed;--accent-2:#06b6d4;--accent-glow:#7c3aed66;--text-primary:#f0f0ff;--text-secondary:#9ca3af;--text-muted:#6b7280;--border:#ffffff14;--border-accent:#7c3aed66;--gradient:linear-gradient(135deg, #7c3aed, #06b6d4);--gradient-hero:radial-gradient(ellipse 80% 60% at 50% -10%, #7c3aed59 0%, transparent 70%);--font-main:"Inter", sans-serif;--font-mono:"Fira Code", monospace;--radius:16px;--radius-sm:8px;--transition:.35s cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--accent) var(--bg-secondary)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--accent);border-radius:3px}body{font-family:var(--font-main);background-color:var(--bg-primary);color:var(--text-primary);line-height:1.7;overflow-x:hidden}::selection{background:var(--accent);color:#fff}body:before{content:"";z-index:0;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");position:fixed;inset:0}#navbar{z-index:1000;transition:var(--transition);padding:20px 0;position:fixed;top:0;left:0;right:0}#navbar.scrolled{-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border);background:#0a0a14e0;padding:12px 0;box-shadow:0 4px 30px #0006}.navbar-brand{letter-spacing:-.5px;background:var(--gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.5rem;font-weight:800;text-decoration:none!important}.nav-link{letter-spacing:.3px;border-radius:var(--radius-sm);transition:var(--transition);font-size:.875rem;font-weight:500;position:relative;color:var(--text-secondary)!important;padding:8px 14px!important}.nav-link:after{content:"";background:var(--gradient);transform-origin:0;height:1.5px;transition:transform var(--transition);border-radius:2px;position:absolute;bottom:4px;left:14px;right:14px;transform:scaleX(0)}.nav-link:hover{color:var(--text-primary)!important}.nav-link:hover:after{transform:scaleX(1)}.nav-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28240,240,255,0.85%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")!important}.navbar-toggler{border-color:var(--border)!important}#hero{text-align:center;background:var(--bg-primary);justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero-gradient{z-index:0;background:var(--gradient-hero);position:absolute;inset:0}.hero-grid{z-index:0;background-image:linear-gradient(#7c3aed0d 1px,#0000 1px),linear-gradient(90deg,#7c3aed0d 1px,#0000 1px);background-size:60px 60px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 80%,#000 30%,#0000 100%);mask-image:radial-gradient(80% 80%,#000 30%,#0000 100%)}.hero-content{z-index:1;position:relative}.hero-badge{border:1px solid var(--border-accent);font-size:.8rem;font-family:var(--font-mono);color:var(--accent-2);background:#06b6d414;border-radius:100px;align-items:center;gap:8px;margin-bottom:28px;padding:6px 16px;animation:.8s forwards fadeInDown;display:inline-flex}.hero-badge .dot{background:var(--accent-2);border-radius:50%;width:7px;height:7px;animation:1.8s ease-in-out infinite pulse}.hero-name{letter-spacing:-2px;background:linear-gradient(160deg,#fff 0%,#a78bfa 60%,#06b6d4 100%);-webkit-text-fill-color:transparent;opacity:0;-webkit-background-clip:text;background-clip:text;margin-bottom:20px;font-size:clamp(3rem,8vw,6rem);font-weight:900;line-height:1.05;animation:.9s .2s forwards fadeInUp}.hero-title-wrap{font-size:clamp(1.1rem,2.5vw,1.5rem);font-family:var(--font-mono);color:var(--text-secondary);opacity:0;margin-bottom:32px;font-weight:400;animation:.9s .4s forwards fadeInUp}.hero-title-wrap .cursor{background:var(--accent-2);vertical-align:middle;width:2px;height:1.1em;margin-left:2px;animation:.9s infinite blink;display:inline-block}.hero-desc{color:var(--text-muted);opacity:0;max-width:560px;margin:0 auto 40px;font-size:1.05rem;animation:.9s .6s forwards fadeInUp}.hero-actions{opacity:0;flex-wrap:wrap;justify-content:center;gap:16px;animation:.9s .8s forwards fadeInUp;display:flex}.hero-scroll-hint{color:var(--text-muted);letter-spacing:.5px;flex-direction:column;align-items:center;gap:8px;font-size:.8rem;animation:2.5s ease-in-out 1.5s infinite bounce;display:flex;position:absolute;bottom:36px;left:50%;transform:translate(-50%)}.hero-scroll-hint svg{opacity:.5}.btn-primary-custom{background:var(--gradient);color:#fff;cursor:pointer;transition:var(--transition);box-shadow:0 0 32px var(--accent-glow);border:none;border-radius:100px;align-items:center;gap:8px;padding:12px 28px;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary-custom:hover{box-shadow:0 0 48px var(--accent-glow);color:#fff;transform:translateY(-2px)}.btn-outline-custom{color:var(--text-primary);border:1px solid var(--border);cursor:pointer;transition:var(--transition);background:0 0;border-radius:100px;align-items:center;gap:8px;padding:11px 28px;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-outline-custom:hover{border-color:var(--accent);color:var(--text-primary);background:#7c3aed1a;transform:translateY(-2px)}section{padding:100px 0;position:relative}.section-label{font-family:var(--font-mono);color:var(--accent-2);letter-spacing:2px;text-transform:uppercase;margin-bottom:12px;font-size:.8rem;display:block}.section-title{letter-spacing:-1px;color:var(--text-primary);margin-bottom:16px;font-size:clamp(2rem,4vw,2.8rem);font-weight:800;line-height:1.15}.section-sub{color:var(--text-muted);max-width:500px;margin-bottom:56px;font-size:1.05rem}.glass-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);transition:var(--transition);padding:32px;position:relative;overflow:hidden}.glass-card:before{content:"";opacity:0;transition:opacity var(--transition);background:linear-gradient(135deg,#7c3aed0f 0%,#0000 60%);position:absolute;inset:0}.glass-card:hover{border-color:var(--border-accent);background:var(--bg-card-hover);transform:translateY(-4px);box-shadow:0 20px 60px #00000059}.glass-card:hover:before{opacity:1}#about{background:var(--bg-secondary)}.about-stat-box{text-align:center;border-radius:var(--radius);background:var(--bg-card);border:1px solid var(--border);transition:var(--transition);padding:24px}.about-stat-box:hover{border-color:var(--border-accent);transform:translateY(-3px)}.stat-value{background:var(--gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:2.2rem;font-weight:900;line-height:1;display:block}.stat-label{color:var(--text-muted);letter-spacing:.5px;margin-top:6px;font-size:.8rem}#skills .skill-category-title{font-size:.75rem;font-family:var(--font-mono);color:var(--accent-2);letter-spacing:2px;text-transform:uppercase;margin-bottom:14px}.skill-pill{border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);transition:var(--transition);cursor:default;border-radius:100px;align-items:center;gap:6px;margin:4px;padding:7px 16px;font-size:.85rem;font-weight:500;display:inline-flex}.skill-pill:hover{border-color:var(--accent);color:var(--text-primary);background:#7c3aed1f;transform:translateY(-2px)}.skill-icon-dot{background:var(--gradient);border-radius:50%;flex-shrink:0;width:7px;height:7px}#experience{background:var(--bg-secondary)}.exp-timeline{padding-left:40px;position:relative}.exp-timeline:before{content:"";background:linear-gradient(to bottom, var(--accent), var(--accent-2), transparent);border-radius:2px;width:2px;position:absolute;top:10px;bottom:10px;left:0}.exp-item{margin-bottom:40px;position:relative}.exp-item:before{content:"";background:var(--gradient);width:12px;height:12px;box-shadow:0 0 16px var(--accent-glow);border-radius:50%;position:absolute;top:8px;left:-46px}.exp-period{font-family:var(--font-mono);color:var(--accent-2);letter-spacing:.5px;background:#06b6d41a;border:1px solid #06b6d433;border-radius:100px;margin-bottom:6px;padding:2px 10px;font-size:.78rem;display:inline-block}.exp-company{color:var(--text-muted);margin-bottom:4px;font-size:.85rem}.exp-role{color:var(--text-primary);margin-bottom:10px;font-size:1.15rem;font-weight:700}.exp-desc{color:var(--text-secondary);font-size:.92rem}.exp-tag{color:#a78bfa;background:#7c3aed26;border:1px solid #7c3aed40;border-radius:100px;margin:3px 2px 0;padding:3px 10px;font-size:.75rem;font-weight:500;display:inline-block}.project-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);transition:var(--transition);height:100%;padding:32px;position:relative;overflow:hidden}.project-card:after{content:"";background:var(--gradient);transform-origin:0;height:3px;transition:transform var(--transition);position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.project-card:hover{border-color:var(--border-accent);transform:translateY(-6px);box-shadow:0 24px 64px #0006}.project-card:hover:after{transform:scaleX(1)}.project-icon{background:#7c3aed26;border:1px solid #7c3aed4d;border-radius:14px;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:20px;font-size:1.4rem;display:flex}.project-title{color:var(--text-primary);margin-bottom:10px;font-size:1.15rem;font-weight:700}.project-desc{color:var(--text-secondary);margin-bottom:20px;font-size:.9rem;line-height:1.65}.project-tag{color:#67e8f9;background:#06b6d41a;border:1px solid #06b6d433;border-radius:100px;margin:3px 2px 0;padding:3px 10px;font-size:.75rem;font-weight:500;display:inline-block}#education{background:var(--bg-secondary)}.edu-card{align-items:flex-start;gap:24px;display:flex}.edu-icon{background:#7c3aed26;border:1px solid #7c3aed4d;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:1.4rem;display:flex}.edu-degree{color:var(--text-primary);margin-bottom:4px;font-size:1.1rem;font-weight:700}.edu-school{color:var(--accent-2);margin-bottom:4px;font-size:.9rem;font-weight:500}.edu-period{color:var(--text-muted);font-size:.8rem;font-family:var(--font-mono)}.edu-grade{color:#c4b5fd;background:#7c3aed26;border:1px solid #7c3aed4d;border-radius:100px;margin-top:8px;padding:3px 12px;font-size:.78rem;font-weight:600;display:inline-block}.contact-link{border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);transition:var(--transition);align-items:center;gap:16px;margin-bottom:12px;padding:18px 24px;font-size:.95rem;font-weight:500;text-decoration:none;display:flex}.contact-link:hover{border-color:var(--border-accent);color:var(--text-primary);background:var(--bg-card-hover);transform:translate(6px)}.contact-link-icon{background:var(--gradient);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:1.1rem;display:flex}.contact-link-arrow{opacity:.4;transition:var(--transition);margin-left:auto}.contact-link:hover .contact-link-arrow{opacity:1;transform:translate(4px)}footer{border-top:1px solid var(--border);text-align:center;color:var(--text-muted);padding:28px 0;font-size:.85rem}footer strong{color:var(--text-secondary)}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(36px)}.reveal.visible{opacity:1;transform:translateY(0)}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes bounce{0%,to{transform:translate(-50%)translateY(0)}50%{transform:translate(-50%)translateY(8px)}}@media (width<=768px){.exp-timeline{padding-left:28px}.exp-item:before{left:-34px}section{padding:70px 0}.edu-card{flex-direction:column;gap:14px}}
