:root{--bg-main:#f8fafc;--bg-alt:#fff;--bg-card:#fff;--text-main:#0f172a;--text-muted:#64748b;--border-color:#e2e8f0;--accent-blue:#2563eb;--accent-cyan:#06b6d4;--nav-bg:#fffc;--shadow-sm:0 1px 3px #0000001a;--shadow-lg:0 10px 25px #0000001a}.dark{--bg-main:#020617;--bg-alt:#0f172a;--bg-card:#1e293b;--text-main:#f8fafc;--text-muted:#94a3b8;--border-color:#334155;--accent-blue:#3b82f6;--accent-cyan:#22d3ee;--nav-bg:#020617cc;--shadow-sm:0 1px 3px #00000080;--shadow-lg:0 10px 25px #00000080}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:var(--bg-main);color:var(--text-main);font-family:system-ui,-apple-system,sans-serif;transition:background-color .3s,color .3s}.container{max-width:1100px;margin:0 auto;padding:0 20px}.text-gradient{background:linear-gradient(to right, var(--accent-blue), var(--accent-cyan));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.text-accent{color:var(--accent-cyan)}.bg-alternate{background-color:var(--bg-alt)}.btn{cursor:pointer;border:none;border-radius:30px;align-items:center;gap:8px;padding:12px 28px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.btn-primary{background:var(--accent-blue);color:#fff;box-shadow:0 4px 15px #2563eb4d}.btn-primary:hover{background:var(--accent-cyan);transform:translateY(-2px)scale(1.02)}.btn-outline{border:2px solid var(--border-color);color:var(--text-main);background:0 0}.btn-outline:hover{background:var(--border-color)}.scroll-progress-bar{background:linear-gradient(to right, var(--accent-blue), var(--accent-cyan));transform-origin:0;z-index:999;width:100%;height:3px;transition:transform .1s ease-out;position:fixed;top:70px;left:0;transform:scaleX(0)}.navbar{background-color:var(--nav-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color);z-index:1000;align-items:center;width:100%;height:70px;transition:background-color .3s;display:flex;position:fixed;top:0}.nav-container{justify-content:space-between;align-items:center;width:100%;max-width:1100px;margin:0 auto;padding:0 20px;display:flex}.logo{letter-spacing:-1px;z-index:1001;font-size:1.5rem;font-weight:800}.theme-toggle{cursor:pointer;background:0 0;border:none;border-radius:50%;align-items:center;padding:8px;transition:background-color .2s;display:flex}.theme-toggle:hover{background-color:var(--border-color)}.icon-sun{color:#facc15}.icon-moon{color:var(--text-muted)}.desktop-only{display:none}.mobile-controls{z-index:1001;align-items:center;gap:10px;display:flex}.mobile-menu-btn{color:var(--text-main);cursor:pointer;background:0 0;border:none;align-items:center;padding:5px;display:flex}.mobile-menu{background-color:var(--bg-card);border-bottom:1px solid var(--border-color);opacity:0;visibility:hidden;width:100%;max-height:0;box-shadow:var(--shadow-lg);flex-direction:column;transition:all .3s ease-in-out;display:flex;position:absolute;top:70px;left:0;overflow:hidden}.mobile-menu.open{opacity:1;visibility:visible;max-height:400px}.mobile-nav-link{color:var(--text-main);text-align:center;border-bottom:1px solid var(--border-color);padding:15px 20px;font-weight:600;text-decoration:none;transition:background-color .2s,color .2s}.mobile-nav-link:last-child{border-bottom:none}.mobile-nav-link:hover,.mobile-nav-link.active{color:var(--accent-cyan);background-color:#06b6d40d}@media (width>=768px){.desktop-only{align-items:center;gap:30px;display:flex}.nav-link{color:var(--text-muted);font-weight:500;text-decoration:none;transition:color .2s}.nav-link:hover,.nav-link.active{color:var(--accent-cyan)}.mobile-controls{display:none}.mobile-menu{display:none!important}}.fade-in-section{opacity:0;will-change:opacity, visibility;transition:opacity 1s ease-out,transform 1s ease-out;transform:translateY(30px)}.fade-in-section.is-visible{opacity:1;transform:translateY(0)}.typewriter-text{color:var(--accent-cyan);font-weight:700}.typewriter-cursor{color:var(--text-main);margin-left:2px;animation:1s step-end infinite blink}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.hero-section{justify-content:center;align-items:center;min-height:100vh;padding-top:70px;display:flex;position:relative;overflow:hidden}@keyframes pulse-blob{0%,to{opacity:.2;transform:scale(1)}50%{opacity:.3;transform:scale(1.1)}}.blob{filter:blur(80px);z-index:-1;border-radius:50%;width:400px;height:400px;animation:6s ease-in-out infinite pulse-blob;position:absolute}.blob-1{background-color:var(--accent-blue);top:10%;left:20%}.blob-2{background-color:var(--accent-cyan);animation-delay:2s;bottom:10%;right:20%}.hero-container{text-align:center;max-width:800px;padding:0 20px}.hero-badge{border:1px solid var(--border-color);background-color:var(--bg-card);color:var(--accent-cyan);border-radius:30px;margin-bottom:20px;padding:8px 16px;font-size:.9rem;font-weight:600;display:inline-block}.hero-title{letter-spacing:-2px;margin-bottom:25px;font-size:4rem;font-weight:900;line-height:1.1}@media (width<=768px){.hero-title{font-size:2.5rem}}.hero-subtitle{color:var(--text-muted);margin-bottom:40px;font-size:1.2rem;line-height:1.6}.hero-buttons{justify-content:center;gap:20px;display:flex}.section-padding{padding:100px 0}.section-title{text-align:center;margin-bottom:50px;font-size:2.5rem;font-weight:800}.about-grid{grid-template-columns:1fr;align-items:center;gap:50px;display:grid}@media (width>=992px){.about-grid{grid-template-columns:1fr 1fr}}.about-card-wrapper{position:relative}.about-card-bg{background:linear-gradient(to right, var(--accent-blue), var(--accent-cyan));opacity:.2;border-radius:20px;transition:transform .5s;position:absolute;inset:0;transform:rotate(3deg)scale(1.02)}.about-card-wrapper:hover .about-card-bg{transform:rotate(6deg)scale(1.05)}.about-card{background-color:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-lg);border-radius:20px;padding:40px;position:relative}.about-card p{color:var(--text-muted);margin-bottom:20px;line-height:1.7}.timeline-container{flex-direction:column;gap:30px;margin-top:20px;padding-left:40px;display:flex;position:relative}.timeline-container:before{content:"";background:var(--border-color);z-index:0;width:2px;position:absolute;top:10px;bottom:20px;left:24px}.timeline-item{background-color:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);z-index:1;border-radius:15px;padding:25px;transition:transform .3s,box-shadow .3s;position:relative}.timeline-item:hover{box-shadow:var(--shadow-lg);border-color:var(--accent-cyan);transform:translate(5px)}.timeline-icon{border:4px solid var(--bg-main);z-index:2;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:45px;height:45px;display:flex;position:absolute;top:25px;left:-40px}.icon-cyan{background:var(--accent-cyan);color:#fff}.icon-blue{background:var(--accent-blue);color:#fff}.icon-purple{color:#fff;background:#a855f7}.timeline-content h3{color:var(--text-main);margin-bottom:5px;font-size:1.25rem}.timeline-role{color:var(--accent-cyan);margin-bottom:12px;font-size:.9rem;font-weight:700;display:block}.timeline-content p{color:var(--text-muted);margin:0;font-size:.95rem;line-height:1.6}.github-stats-card{background-color:var(--bg-card);border:1px solid var(--border-color);color:var(--text-main);box-shadow:var(--shadow-sm);border-radius:16px;align-items:center;gap:18px;margin-top:25px;padding:16px 24px 16px 16px;text-decoration:none;transition:all .3s;display:inline-flex;position:relative;overflow:hidden}.github-stats-card:hover{box-shadow:var(--shadow-lg);border-color:var(--accent-cyan);transform:translateY(-4px)}.github-avatar-wrapper{border-radius:50%;width:56px;height:56px;position:relative}.github-avatar{object-fit:cover;border:2px solid var(--border-color);border-radius:50%;width:100%;height:100%;transition:border-color .3s}.github-stats-card:hover .github-avatar{border-color:var(--accent-cyan)}.github-badge{background:var(--text-main);color:var(--bg-card);border:2px solid var(--bg-card);border-radius:50%;justify-content:center;align-items:center;padding:4px;display:flex;position:absolute;bottom:-2px;right:-2px}.github-info{flex-direction:column;display:flex}.github-name{font-size:1.05rem;font-weight:800;line-height:1.2}.github-username{color:var(--text-muted);margin-bottom:8px;font-size:.85rem}.github-metrics{gap:10px;display:flex}.metric-chip{color:var(--text-muted);background-color:var(--bg-main);border:1px solid var(--border-color);border-radius:20px;align-items:center;gap:6px;padding:4px 10px;font-size:.8rem;transition:all .2s;display:flex}.github-stats-card:hover .metric-chip{color:var(--accent-cyan);background-color:#06b6d41a;border-color:#06b6d44d}.metric-chip strong{color:var(--text-main)}.github-stats-card:hover .metric-chip strong{color:var(--accent-cyan)}.skeleton-mode{cursor:wait}.skeleton-avatar{background-color:var(--border-color);border-radius:50%;width:56px;height:56px;animation:1.5s ease-in-out infinite pulse}.skeleton-info{flex-direction:column;gap:10px;width:150px;display:flex}.skeleton-line{background-color:var(--border-color);border-radius:6px;height:12px;animation:1.5s ease-in-out infinite pulse}.skeleton-line.short{width:60%}.skeleton-line.long{border-radius:10px;width:100%;height:20px;margin-top:5px}@keyframes pulse{0%{opacity:.5}50%{opacity:.8}to{opacity:.5}}.section-subtitle{text-align:center;color:var(--text-muted);margin-top:-30px;margin-bottom:50px}.skills-grid{flex-wrap:wrap;justify-content:center;gap:15px;max-width:850px;margin:0 auto;display:flex}.skill-chip{background-color:var(--bg-card);border:1px solid var(--border-color);cursor:default;box-shadow:var(--shadow-sm);border-radius:30px;align-items:center;gap:10px;padding:12px 24px;font-weight:600;transition:all .3s;display:flex}.skill-chip:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px)}.skill-react:hover{color:#61dafb;background:#61dafb1a;border-color:#61dafb}.skill-node:hover{color:#393;background:#3399331a;border-color:#393}.skill-java:hover{color:#f89820;background:#f898201a;border-color:#f89820}.skill-csharp:hover{color:#9b4993;background:#9b49931a;border-color:#9b4993}.skill-c:hover{color:#00599c;background:#00599c1a;border-color:#00599c}.skill-python:hover{color:#3776ab;background:#3776ab1a;border-color:#3776ab}.skill-net:hover{color:#336791;background:#3367911a;border-color:#336791}.skill-tools:hover{color:#2496ed;background:#2496ed1a;border-color:#2496ed}.projects-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;display:grid}.project-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:20px;flex-direction:column;height:100%;transition:transform .3s,box-shadow .3s;display:flex;overflow:hidden}.project-card:hover{box-shadow:0 15px 35px #0003}.project-header{justify-content:center;align-items:center;height:180px;display:flex;position:relative}.header-blue{color:#60a5fa;background:linear-gradient(to bottom right,#1e3a8a,#0f172a)}.header-purple{color:#c084fc;background:linear-gradient(to bottom right,#4c1d95,#0f172a)}.header-cyan{color:#22d3ee;background:linear-gradient(to bottom right,#164e63,#0f172a)}.project-icon{transition:transform .5s}.project-card:hover .project-icon{transform:scale(1.15)}.project-body{flex-direction:column;flex-grow:1;padding:30px;display:flex}.project-card:hover h3{color:var(--accent-cyan)}.project-body p{color:var(--text-muted);flex-grow:1;margin-bottom:20px;font-size:.9rem;line-height:1.6}.project-tags{border-top:1px solid var(--border-color);flex-wrap:wrap;gap:10px;padding-top:20px;display:flex}.project-tags span{background-color:var(--border-color);border-radius:6px;padding:4px 10px;font-size:.75rem;font-weight:600}.project-title-wrapper{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:15px;display:flex}.project-body h3{margin-bottom:0;font-size:1.3rem;transition:color .3s}.status-badge{text-transform:uppercase;letter-spacing:.5px;color:#fff;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:20px;align-items:center;gap:6px;padding:4px 10px;font-size:.7rem;font-weight:700;animation:2.5s infinite pulse-soft;display:inline-flex;box-shadow:0 2px 10px #f59e0b66}.status-icon{animation:3s linear infinite spin-slow}@keyframes pulse-soft{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.05)}}@keyframes spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.filters-container{flex-wrap:wrap;justify-content:center;gap:15px;margin-bottom:50px;display:flex}.filter-btn{color:var(--text-muted);border:2px solid var(--border-color);cursor:pointer;background-color:#0000;border-radius:30px;padding:8px 20px;font-weight:600;transition:all .3s}.filter-btn:hover{border-color:var(--accent-cyan);color:var(--text-main)}.filter-btn.active{background:linear-gradient(to right, var(--accent-blue), var(--accent-cyan));color:#fff;border-color:#0000;box-shadow:0 4px 15px #06b6d44d}.contact-box{background-color:var(--bg-card);border:1px solid var(--border-color);max-width:800px;box-shadow:var(--shadow-sm);border-radius:24px;margin:0 auto;padding:50px}.contact-header{text-align:center;margin-bottom:40px}.contact-header p{color:var(--text-muted);margin-top:-20px}.contact-form{flex-direction:column;gap:20px;display:flex}.form-group-row{grid-template-columns:1fr;gap:20px;display:grid}@media (width>=768px){.form-group-row{grid-template-columns:1fr 1fr}}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{padding-left:5px;font-size:.9rem;font-weight:600}input,textarea{border:1px solid var(--border-color);background-color:var(--bg-main);width:100%;color:var(--text-main);border-radius:12px;outline:none;padding:15px;font-family:inherit;transition:border-color .2s,box-shadow .2s}input:focus,textarea:focus{border-color:var(--accent-cyan);box-shadow:0 0 0 3px #06b6d433}textarea{resize:vertical}.btn-submit{background:linear-gradient(to right, var(--accent-blue), var(--accent-cyan));color:#fff;justify-content:center;width:100%;margin-top:10px;padding:16px}.btn-submit:hover{transform:translateY(-2px);box-shadow:0 4px 15px #06b6d466}.social-links{border-top:1px solid var(--border-color);justify-content:center;gap:20px;margin-top:40px;padding-top:30px;display:flex}.social-links a{background-color:var(--bg-main);color:var(--text-muted);border-radius:50%;padding:12px;transition:all .3s}.social-links a:hover{background-color:var(--accent-blue);color:#fff;transform:translateY(-3px)}.footer{text-align:center;border-top:1px solid var(--border-color);color:var(--text-muted);background-color:var(--bg-main);padding:30px 20px;font-size:.9rem}.footer-built{justify-content:center;align-items:center;gap:8px;margin-top:10px;display:flex}
