@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700;900&family=JetBrains+Mono:wght@400;500&display=swap);@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;700;800&family=JetBrains+Mono:wght@400;600&display=swap);@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap);@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;700;800&family=JetBrains+Mono:wght@500;700&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--background-primary);color:var(--text-primary);font-family:var(--font-family-primary);margin:0;padding:0}code{font-family:var(--font-family-mono)}a{color:inherit;text-decoration:none}ul{list-style:none}:root{--background-primary:#0a0a0a;--background-secondary:#121212;--background-accent:#1a1a1a;--background-glass:#121212cc;--text-primary:#fff;--text-secondary:#a3a3a3;--text-muted:#525252;--text-accent:#3b82f6;--text-white:#fff;--primary-color:#3b82f6;--primary-dark:#2563eb;--primary-gradient:linear-gradient(135deg,#3b82f6,#2563eb);--primary-gradient-subtle:#3b82f61a;--success-color:#10b981;--error-color:#ef4444;--border-light:#262626;--font-family-heading:"Inter",sans-serif;--font-family-mono:"JetBrains Mono","Fira Code",monospace;--container-3xl:768px;--container-4xl:896px;--container-5xl:1024px;--container-6xl:1152px;--container-7xl:1100px;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--font-size-6xl:3.75rem;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--spacing-3xl:64px;--spacing-4xl:80px;--spacing-5xl:128px;--radius-sm:2px;--radius-md:4px;--radius-lg:8px;--radius-xl:12px;--radius-full:9999px;--shadow-md:0 4px 6px -1px #0000004d;--shadow-lg:0 10px 15px -3px #0006;--shadow-xl:0 20px 25px -5px #00000080;--blur-md:12px;--transition-normal:0.2s cubic-bezier(0.4,0,0.2,1);--transition-bounce:cubic-bezier(0.68,-0.55,0.265,1.55)}.site-layout{display:flex;flex-direction:column;min-height:100vh}.container{margin:0 auto;max-width:var(--container-7xl);padding:0 var(--spacing-lg);width:100%}.container--sm{max-width:var(--container-3xl)}.container--md{max-width:var(--container-4xl)}.grid{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg)}.grid--2{grid-template-columns:repeat(2,1fr)}.grid--auto-fit{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.card{background:var(--background-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--spacing-xl);transition:all var(--transition-normal)}.card:hover{border-color:var(--primary-color);transform:translateY(-2px)}.tag{background:var(--background-accent);border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--text-secondary);display:inline-flex;font-family:var(--font-family-mono);font-size:var(--font-size-xs);padding:4px 10px}.tag--primary{border-color:var(--primary-color);color:var(--primary-color)}:root{--font-family-main:"Inter",sans-serif;--font-family-mono:"JetBrains Mono",monospace}.app{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1 1;padding-bottom:var(--spacing-4xl)}.fade-in{animation:fadeIn .5s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}body,html{margin:0;max-width:100vw;overflow-x:hidden;padding:0}*{box-sizing:border-box}.header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a0a0ad9;border-bottom:1px solid var(--border-light);left:0;position:fixed;top:0;width:100%;z-index:9999}.header .container{margin:0;max-width:100%!important;padding:0 var(--spacing-xl);width:100%}.header-content{height:64px;justify-content:space-between;padding-left:80px;padding-right:80px}.header-content,.main-nav{align-items:center;display:flex}.main-nav{gap:var(--spacing-lg)}.nav-links{display:flex;gap:var(--spacing-xs)}.nav-link{color:var(--text-secondary);font-size:1rem;font-weight:500;letter-spacing:1px;padding:8px 12px;transition:all .2s ease}.nav-link.active,.nav-link:hover{color:var(--primary-color);text-shadow:0 0 8px #3b82f61a}.avatar{border:1px solid var(--border-light);border-radius:4px;height:32px;object-fit:cover;width:32px}@media (max-width:600px){.header-logo{display:none}.header-content{justify-content:center}.nav-link{font-size:.65rem;padding:6px}}.nav-list{gap:var(--spacing-xl)}.header-logo{font-size:1.2rem;padding:6px 10px}.footer{background:var(--background-primary);border-top:1px solid var(--border-light);padding:var(--spacing-5xl) 0 var(--spacing-xl) 0;width:100%}.footer .container{box-sizing:border-box;max-width:100%!important;padding:0 5%;width:100%}.footer-brand{align-items:flex-start;display:flex;flex-direction:column;gap:12px}.footer-logo{align-items:center;display:flex;margin-left:-2px}.footer-logo svg{display:block}.footer-name{color:var(--text-primary);font-family:var(--font-family-mono);font-size:1.1rem;font-weight:700;letter-spacing:1px;line-height:1;margin:0;text-transform:uppercase}.footer-main{align-items:flex-start;display:flex;justify-content:space-between;width:100%}.footer-links{display:flex;flex-direction:row;gap:80px}.footer-section{display:flex;flex-direction:column;gap:var(--spacing-lg)}.footer-section h3{color:var(--text-primary);font-size:.75rem;font-weight:600;letter-spacing:2px;margin:0;opacity:.4;text-transform:uppercase}.footer-section ul{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}.footer-section a{color:var(--text-secondary);font-size:.9rem;text-decoration:none;transition:color .2s ease}.footer-section a:hover{color:var(--primary-color)}.footer-actions{align-items:center;border-top:1px solid var(--border-light);display:flex;justify-content:space-between;margin-top:var(--spacing-4xl);padding-top:var(--spacing-xl)}.social-links{display:flex;gap:15px}.back-to-top,.social-link{align-items:center;background:var(--background-secondary);border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .2s ease;width:40px}.back-to-top:hover,.social-link:hover{border-color:var(--primary-color);color:var(--primary-color)}.footer-bottom{color:var(--text-muted);font-family:var(--font-family-mono);font-size:10px;margin-top:40px;opacity:.5;text-align:center}.footer-link:hover{color:var(--primary-color);text-shadow:0 0 8px var(--primary-color);transition:all .3s ease}.home-page{background:var(--background-primary);width:100%}.hero-section{align-items:center;background:radial-gradient(circle at 20% 30%,#3b82f60d,#0000 40%),var(--background-primary);display:flex;min-height:100vh;padding:var(--spacing-5xl) 0}.hero-section .container{margin:0 auto;max-width:1400px;width:100%}.hero-content{grid-gap:var(--spacing-5xl);align-items:start;display:grid;gap:var(--spacing-5xl);grid-template-columns:320px 1fr}.hero-avatar{align-items:flex-start;display:flex;flex-direction:column;gap:var(--spacing-xl)}.avatar-image{border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);height:300px;object-fit:cover;transition:transform var(--transition-normal);width:300px}.avatar-image:hover{border-color:var(--primary-color);transform:translateY(-5px)}.avatar-status{align-items:center;background:#22c55e0d;border:1px solid #22c55e26;border-radius:var(--radius-sm);color:var(--success-color);display:inline-flex;font-size:.75rem;gap:var(--spacing-sm);letter-spacing:.5px;padding:10px 16px}.status-dot{animation:pulse 2s infinite;background:var(--success-color);box-shadow:0 0 1px var(--success-color)}.hero-text{display:flex;flex-direction:column;gap:var(--spacing-xl);padding-top:var(--spacing-md)}.hero-title{color:var(--text-primary);font-size:4rem;font-weight:800;letter-spacing:-2px;line-height:1.1;margin:0}.hero-subtitle{color:var(--text-secondary);font-size:1.75rem;font-weight:400;margin:0;max-width:800px}.hero-location{align-items:center;color:var(--text-muted);display:flex;font-size:var(--font-size-md);gap:var(--spacing-sm)}.hero-description{color:var(--text-secondary);font-size:1.2rem;line-height:1.8;margin:var(--spacing-md) 0;max-width:750px}.hero-actions{display:flex;gap:var(--spacing-xl);margin-top:var(--spacing-lg)}.btn-lg{align-items:center;border-radius:var(--radius-sm);display:flex;font-size:.85rem;gap:12px;letter-spacing:1px;padding:16px 32px;text-transform:uppercase;transition:all .3s ease}.btn-primary{background:var(--primary-color);border:1px solid var(--primary-color);color:#fff}.btn-primary:hover{background:var(--primary-dark);box-shadow:0 10px 20px #3b82f633;transform:translateY(-2px)}.btn-outline{background:#0000;border:1px solid var(--border-light);color:var(--text-primary)}.btn-outline:hover{background:#ffffff0d;border-color:var(--text-primary)}.cta-section{background:var(--background-secondary);border-top:1px solid var(--border-light);padding:var(--spacing-5xl) 0}.cta-content{max-width:800px}.cta-content h2{font-size:2.5rem;margin-bottom:var(--spacing-md)}@media (max-width:1024px){.hero-content{gap:var(--spacing-3xl);grid-template-columns:1fr}.hero-avatar,.hero-text{align-items:center}.hero-text{text-align:center}.hero-title{font-size:3rem}.hero-actions{justify-content:center}}@media (max-width:768px){.hero-title{font-size:2.5rem}.avatar-image{height:200px;width:200px}}:root{--font-family-primary:"Inter",system-ui,sans-serif}.resume-page{background:var(--background-primary);font-family:Inter,system-ui,sans-serif;font-family:var(--font-family-primary);min-height:100vh;padding-top:var(--spacing-5xl)}.resume-page .container{box-sizing:border-box;max-width:100%!important;padding:0 var(--spacing-2xl);width:100%}.resume-grid{grid-gap:100px;display:grid;gap:100px;grid-template-columns:350px 1fr}.resume-group{margin-bottom:100px}.group-title{font-size:clamp(2.5rem,5vw,3.5rem);margin-bottom:40px}.timeline{border-left:2px solid #3b82f6;display:flex;flex-direction:column;margin-left:5px}.resume-item{padding-bottom:60px;padding-left:40px;position:relative}.resume-item:last-child{padding-bottom:0}.resume-item:before{background:var(--background-primary);border:2px solid #3b82f6;content:"";height:12px;left:-7px;position:absolute;top:8px;transform:rotate(45deg);width:12px;z-index:2}.date{color:#3b82f6;display:block;font-size:.9rem;font-weight:700;margin-bottom:8px}.title{color:#fff;font-size:2.2rem;font-weight:800;line-height:1.1;margin:5px 0}.organization{color:#3b82f6;display:block;font-size:1.1rem;font-weight:600;margin-bottom:15px;text-transform:uppercase}.desc{color:var(--text-secondary);font-size:1.05rem;line-height:1.7;max-width:850px;opacity:.85}.skills-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,1fr);margin-bottom:40px}.skill-chip{background:#ffffff0d;border:1px solid var(--border-light);padding:10px 4px;text-align:center}.skill-chip p{font-size:.7rem;font-weight:600;margin:0;text-transform:uppercase}.resume-btn{border:1px solid #3b82f6;color:#3b82f6;display:block;font-weight:700;padding:16px;text-align:center;text-decoration:none;transition:.3s ease}.resume-btn:hover{background:#3b82f61a}@media (max-width:1100px){.resume-grid{gap:50px;grid-template-columns:1fr}.resume-left{position:static}}.skills-page-tech{align-items:center;background:var(--background-primary);display:flex;flex-direction:column;min-height:100vh;padding-bottom:var(--spacing-5xl)}.skills-page-tech .container{box-sizing:border-box;max-width:1440px;padding:0 var(--spacing-2xl);width:100%}.tech-header{margin-bottom:var(--spacing-5xl);padding:var(--spacing-5xl) 0 0 0;width:100%}.status-badge{align-items:center;color:#10b981;display:flex;font-family:JetBrains Mono,monospace;font-size:.7rem;gap:8px;margin-bottom:15px;text-transform:uppercase}.status-badge .dot{animation:pulse 2s infinite;background:#10b981;border-radius:50%;box-shadow:0 0 8px #10b981;height:6px;width:6px}.group-subtitle{color:var(--text-secondary);font-size:1.1rem;line-height:1.6;margin-top:10px}.tech-section{margin-bottom:80px;width:100%}.section-meta{align-items:center;border-left:3px solid #3b82f6;display:flex;gap:15px;margin-bottom:35px;padding-left:20px}.section-index{color:#3b82f6;font-family:JetBrains Mono,monospace;font-size:.9rem;font-weight:700}.section-label{color:#fff;font-family:Inter,sans-serif;font-size:1.4rem;font-weight:700;margin:0;text-transform:uppercase}.tech-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));justify-content:center}@media (min-width:1300px){.tech-grid{grid-template-columns:repeat(5,1fr)}}.tech-card{background:var(--background-secondary);border:1px solid var(--border-light);border-radius:4px;padding:24px;transition:all .3s ease}.tech-card:hover{background:#ffffff05;border-color:#3b82f6;transform:translateY(-5px)}.card-header{align-items:baseline;display:flex;justify-content:space-between;margin-bottom:18px}.skill-name{color:#fff;font-family:Inter,sans-serif;font-size:1.1rem;font-weight:700}.skill-level-text{color:#3b82f6;font-family:JetBrains Mono,monospace;font-size:.7rem;text-transform:uppercase}.progress-track{background:#ffffff0d;border-radius:2px;height:4px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#3b82f6,#60a5fa);box-shadow:0 0 10px #3b82f64d;height:100%}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.projects-page{align-items:center;background:var(--background-primary);display:flex;flex-direction:column;min-height:100vh;padding-bottom:var(--spacing-5xl)}.projects-page .container{box-sizing:border-box;max-width:1400px!important;padding:0 var(--spacing-2xl);width:100%}.page-header{padding:var(--spacing-5xl) 0 0 0;width:100%}.group-title{align-items:center;color:#fff;display:flex;font-family:Inter,sans-serif;font-size:clamp(2.5rem,6vw,3.5rem);font-weight:800;letter-spacing:-2px;margin:0}.group-title:after{animation:blink 1s step-end infinite;color:#3b82f6;content:"_"}.projects-filters{display:flex;flex-wrap:wrap;gap:12px;margin:var(--spacing-4xl) 0;width:100%}.filter-btn{background:var(--background-secondary);border:1px solid var(--border-light);color:var(--text-muted);cursor:pointer;font-family:JetBrains Mono,monospace;font-size:.7rem;padding:8px 16px;text-transform:uppercase;transition:all .2s}.filter-btn.active,.filter-btn:hover{border-color:#3b82f6;box-shadow:0 0 15px #3b82f633;color:#3b82f6}.projects-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));justify-content:center;width:100%}@media (min-width:1200px){.projects-grid{grid-template-columns:repeat(3,1fr)}}.project-card{background:var(--background-secondary);border:1px solid var(--border-light);border-radius:4px;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:all .3s ease}.project-card:hover{border-color:#3b82f6;box-shadow:0 10px 40px #00000080;transform:translateY(-5px)}.project-image{aspect-ratio:16/9;background-position:50%;background-size:cover;border-bottom:1px solid var(--border-light);position:relative;width:100%}.project-image:after{background:linear-gradient(180deg,#0000001a,#0009);content:"";inset:0;position:absolute}.project-type-badge{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000d9;border:1px solid #ffffff1a;color:#fff;font-family:JetBrains Mono,monospace;font-size:10px;left:15px;padding:4px 10px;position:absolute;text-transform:uppercase;top:15px;z-index:2}.project-info{flex-grow:1;padding:24px}.project-info h3{color:#fff;font-family:Inter,sans-serif;font-size:1.4rem;font-weight:700;margin-bottom:12px}.project-info p{color:var(--text-secondary);font-size:.95rem;line-height:1.6;margin-bottom:20px}.tech-tag{background:#3b82f61a;border:1px solid #3b82f6;color:#3b82f6;display:inline-block;font-family:JetBrains Mono,monospace;font-size:10px;margin-bottom:8px;margin-right:8px;padding:4px 10px}.project-meta{align-items:center;background:#0003;border-top:1px solid var(--border-light);display:flex;justify-content:space-between;padding:16px 24px}.project-date,.project-status{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.8rem}.status-dot{border-radius:50%;display:inline-block;height:8px;margin-right:8px;width:8px}.main-card-link{inset:0;position:absolute;z-index:5}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@media (max-width:768px){.projects-grid{grid-template-columns:1fr}}
/*# sourceMappingURL=main.04cf2b3e.css.map*/