.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-glass);background:#0a0a1ad9;padding:12px 0}.navbar__inner{justify-content:space-between;align-items:center;display:flex}.navbar__logo{letter-spacing:-.5px;font-size:1.4rem;font-weight:800}.navbar__links{gap:32px;display:flex}.navbar__links a{color:var(--text-secondary);transition:var(--transition);font-size:.95rem;font-weight:500;position:relative}.navbar__links a:after{content:"";background:var(--gradient-primary);width:0;height:2px;transition:width .3s;position:absolute;bottom:-4px;left:0}.navbar__links a:hover{color:var(--text-primary)}.navbar__links a:hover:after{width:100%}.navbar__toggle{color:var(--text-primary);background:0 0;display:none}.navbar__mobile{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid var(--border-glass);background:#0a0a1af2;overflow:hidden}.navbar__mobile ul{flex-direction:column;gap:16px;padding:20px 24px;display:flex}.navbar__mobile a{color:var(--text-secondary);transition:var(--transition);font-size:1.1rem;font-weight:500}.navbar__mobile a:hover{color:var(--text-primary)}@media (width<=768px){.navbar__links{display:none}.navbar__toggle{display:block}}.hero{flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:120px 0 60px;display:flex;position:relative}.hero__content{grid-template-columns:1fr 1fr;align-items:center;gap:60px;width:100%;display:grid}.hero__greeting{color:var(--accent-blue);letter-spacing:1px;text-transform:uppercase;margin-bottom:8px;font-size:1.1rem;font-weight:500}.hero__name{letter-spacing:-1px;margin-bottom:16px;font-size:clamp(2.5rem,6vw,4.5rem);font-weight:900;line-height:1.1}.hero__title{color:var(--text-secondary);margin-bottom:20px;font-size:clamp(1.1rem,2.5vw,1.5rem);font-weight:600}.hero__desc{color:var(--text-secondary);max-width:520px;margin-bottom:32px;font-size:1.1rem;line-height:1.8}.hero__cta{flex-wrap:wrap;gap:16px;margin-bottom:32px;display:flex}.hero__socials{gap:16px;display:flex}.hero__socials a{border:1px solid var(--border-glass);width:44px;height:44px;color:var(--text-secondary);transition:var(--transition);border-radius:50%;justify-content:center;align-items:center;display:flex}.hero__socials a:hover{color:var(--accent-blue);border-color:var(--accent-blue);background:#4f8fff1a;transform:translateY(-3px)}.hero__image{justify-content:center;align-items:center;display:flex}.hero__avatar-wrapper{width:340px;height:340px;position:relative}.hero__avatar{object-fit:cover;z-index:2;border-radius:50%;width:100%;height:100%;position:relative}.hero__avatar-placeholder{background:var(--gradient-card);border:2px solid var(--border-glass);width:100%;height:100%;color:var(--accent-blue);z-index:2;border-radius:50%;justify-content:center;align-items:center;font-size:4rem;font-weight:800;display:flex;position:relative}.hero__avatar-ring{background:var(--gradient-primary) border-box;-webkit-mask-composite:xor;border:2px solid #0000;border-radius:50%;animation:8s linear infinite spin;position:absolute;inset:-12px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:padding-box,border-box;-webkit-mask-origin:padding-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}@keyframes spin{to{transform:rotate(360deg)}}.hero__scroll-indicator{color:var(--text-muted);position:absolute;bottom:40px}@media (width<=768px){.hero__content{text-align:center;grid-template-columns:1fr;gap:40px}.hero__text{order:2}.hero__image{order:1}.hero__cta,.hero__socials{justify-content:center}.hero__desc{margin-left:auto;margin-right:auto}.hero__avatar-wrapper{width:240px;height:240px}}.about__grid{grid-template-columns:1.2fr 1fr;align-items:start;gap:40px;display:grid}.about__text{padding:40px}.about__text p{color:var(--text-secondary);margin-bottom:16px;font-size:1.05rem;line-height:1.9}.about__text p:last-child{margin-bottom:0}.about__text strong{color:var(--text-primary)}.about__stats{flex-direction:column;gap:20px;display:flex}.about__stat-card{transition:var(--transition);align-items:center;gap:20px;padding:28px 32px;display:flex}.about__stat-card:hover{box-shadow:var(--shadow-glow);border-color:#4f8fff33;transform:translate(8px)}.about__stat-icon{color:var(--accent-blue);background:#4f8fff1a;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:50px;height:50px;font-size:1.8rem;display:flex}.about__stat-value{font-size:2rem;font-weight:800;line-height:1}.about__stat-label{color:var(--text-muted);margin-top:4px;font-size:.9rem}@media (width<=768px){.about__grid{grid-template-columns:1fr}.about__text{padding:24px}}.skills__grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;display:grid}.skills__card{transition:var(--transition);padding:32px}.skills__card:hover{border-color:#4f8fff26}.skills__card-icon{border-radius:14px;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:20px;font-size:1.6rem;display:flex}.skills__card-title{color:var(--text-primary);margin-bottom:16px;font-size:1.15rem;font-weight:700}.skills__card-list{flex-wrap:wrap;gap:8px;display:flex}.skills__tag{color:var(--text-secondary);border:1px solid var(--border-glass);white-space:nowrap;background:#ffffff0a;border-radius:20px;padding:5px 12px;font-size:.8rem;font-weight:500}@media (width<=640px){.skills__grid{grid-template-columns:1fr}.skills__card{padding:24px}}.projects{overflow:hidden}.projects__carousel{perspective:1200px;padding:40px 0;position:relative}.projects__bg-cards{pointer-events:none;perspective:800px;width:100%;height:100%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.projects__bg-card{border-radius:var(--radius-lg);pointer-events:auto;cursor:pointer;width:300px;height:200px;margin-top:-100px;margin-left:-150px;transition:box-shadow .3s;position:absolute;top:50%;left:50%}.projects__bg-card--active{box-shadow:var(--shadow-glow)}.projects__main-card{z-index:10;max-width:900px;transform-style:preserve-3d;margin:0 auto;padding:40px;position:relative}.projects__card-content{grid-template-columns:1fr 1fr;align-items:start;gap:40px;display:grid}.projects__images{width:100%}.projects__image-grid{grid-template-columns:1fr;gap:12px;display:grid}.projects__image-grid:has(>:nth-child(2)){grid-template-columns:1fr 1fr}.projects__image-grid:has(>:nth-child(3)) .projects__image-wrapper:first-child{grid-column:1/-1}.projects__image-wrapper{border-radius:var(--radius-md);cursor:pointer;aspect-ratio:16/10;background:var(--bg-secondary);position:relative;overflow:hidden}.projects__image-wrapper img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.projects__image-wrapper:hover img{transform:scale(1.05)}.projects__image-placeholder{width:100%;height:100%;color:var(--text-muted);background:var(--bg-secondary);flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:.85rem;display:flex}.projects__image-overlay{color:#fff;opacity:0;background:#00000080;justify-content:center;align-items:center;gap:8px;font-weight:500;transition:opacity .3s;display:flex;position:absolute;inset:0}.projects__image-wrapper:hover .projects__image-overlay{opacity:1}.projects__no-image{aspect-ratio:16/10;border-radius:var(--radius-md);background:var(--bg-secondary);width:100%;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.projects__info{flex-direction:column;gap:12px;display:flex}.projects__card-number{color:var(--accent-blue);letter-spacing:2px;font-size:.85rem;font-weight:600}.projects__card-title{font-size:1.8rem;font-weight:800;line-height:1.2}.projects__card-subtitle{color:var(--accent-purple);font-size:1rem;font-weight:600}.projects__card-desc{color:var(--text-secondary);font-size:.95rem;line-height:1.8}.projects__tech{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.projects__links{margin-top:16px}.projects__github-btn{padding:10px 24px;font-size:.9rem}.projects__nav{justify-content:center;align-items:center;gap:24px;margin-top:40px;display:flex}.projects__nav-btn{width:48px;height:48px;color:var(--text-secondary);transition:var(--transition);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1rem;display:flex}.projects__nav-btn:hover{color:var(--accent-blue);border-color:var(--accent-blue)}.projects__dots{gap:10px;display:flex}.projects__dot{background:var(--text-muted);cursor:pointer;width:10px;height:10px;transition:var(--transition);border:none;border-radius:50%;padding:0}.projects__dot--active{background:var(--accent-blue);border-radius:5px;width:30px}.projects__lightbox{z-index:9999;background:#000000e6;justify-content:center;align-items:center;padding:40px;display:flex;position:fixed;inset:0}.projects__lightbox-close{color:#fff;cursor:pointer;z-index:10;background:0 0;border:none;position:absolute;top:20px;right:20px}.projects__lightbox-content{flex-direction:column;align-items:center;gap:16px;max-width:90vw;max-height:85vh;display:flex}.projects__lightbox-content img{border-radius:var(--radius-md);object-fit:contain;max-width:100%;max-height:75vh}.projects__lightbox-nav{align-items:center;gap:20px;display:flex}.projects__lightbox-nav button{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:background .3s;display:flex}.projects__lightbox-nav button:hover{background:#fff3}.projects__lightbox-nav span{color:var(--text-secondary);font-size:.9rem}@media (width<=768px){.projects__main-card{padding:24px}.projects__card-content{grid-template-columns:1fr;gap:24px}.projects__bg-cards{display:none}.projects__card-title{font-size:1.4rem}}.experience__timeline{max-width:900px;position:relative}.experience__item{gap:32px;display:flex;position:relative}.experience__marker{flex-direction:column;flex-shrink:0;align-items:center;width:48px;display:flex}.experience__dot{background:var(--bg-secondary);border:2px solid var(--border-glass);width:48px;height:48px;color:var(--text-muted);z-index:2;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;display:flex}.experience__dot--active{border-color:var(--accent-blue);color:var(--accent-blue);background:#4f8fff26;box-shadow:0 0 20px #4f8fff4d}.experience__line{background:linear-gradient(to bottom, var(--border-glass), transparent);flex:1;width:2px;margin-top:8px}.experience__content{flex:1;margin-bottom:32px;padding:32px}.experience__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.experience__role{font-size:1.3rem;font-weight:700}.experience__company{color:var(--accent-blue);margin-top:4px;font-size:1rem;font-weight:600}.experience__period{color:var(--text-muted);background:var(--bg-glass);border:1px solid var(--border-glass);white-space:nowrap;border-radius:20px;padding:6px 14px;font-size:.85rem}.experience__period--current{color:var(--accent-blue);background:#4f8fff14;border-color:#4f8fff4d}.experience__achievements{flex-direction:column;gap:12px;display:flex}.experience__achievements li{color:var(--text-secondary);align-items:flex-start;gap:12px;font-size:.95rem;line-height:1.7;display:flex}.experience__check{color:var(--accent-cyan);flex-shrink:0;margin-top:4px;font-size:.85rem}@media (width<=768px){.experience__item{gap:16px}.experience__content{padding:20px}.experience__header{flex-direction:column}.experience__marker{width:36px}.experience__dot{width:36px;height:36px;font-size:.85rem}}.contact__grid{grid-template-columns:1fr 1fr;align-items:start;gap:40px;display:grid}.contact__info-title{margin-bottom:12px;font-size:1.5rem;font-weight:700}.contact__info-desc{color:var(--text-secondary);margin-bottom:32px;line-height:1.8}.contact__items{flex-direction:column;gap:16px;display:flex}.contact__item{transition:var(--transition);align-items:center;gap:16px;padding:18px 24px;display:flex}.contact__item:hover{border-color:#4f8fff33;transform:translate(8px)}.contact__item-icon{width:44px;height:44px;color:var(--accent-blue);background:#4f8fff1a;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;display:flex}.contact__item-label{color:var(--text-muted);margin-bottom:2px;font-size:.8rem}.contact__item-value{color:var(--text-primary);font-size:.95rem;font-weight:500}.contact__form{flex-direction:column;gap:24px;padding:40px;display:flex}.contact__field label{color:var(--text-secondary);margin-bottom:8px;font-size:.9rem;font-weight:600;display:block}.contact__field input,.contact__field textarea{border-radius:var(--radius-md);border:1px solid var(--border-glass);background:var(--bg-glass);width:100%;color:var(--text-primary);font-family:var(--font-main);transition:var(--transition);resize:vertical;padding:14px 18px;font-size:1rem}.contact__field input:focus,.contact__field textarea:focus{border-color:var(--accent-blue);outline:none;box-shadow:0 0 0 3px #4f8fff1a}.contact__field input::placeholder,.contact__field textarea::placeholder{color:var(--text-muted)}.contact__submit{align-self:flex-start;margin-top:8px}@media (width<=768px){.contact__grid{grid-template-columns:1fr}.contact__form{padding:24px}}.admin{background:var(--bg-primary);min-height:100vh;padding:40px 24px}.admin__login{justify-content:center;align-items:center;min-height:100vh;margin:-40px -24px;padding:40px 24px;display:flex}.admin__login-card{text-align:center;width:100%;max-width:400px;padding:48px}.admin__login-icon{color:var(--accent-blue);margin-bottom:24px}.admin__login-card h2{margin-bottom:8px;font-size:1.5rem;font-weight:700}.admin__login-card p{color:var(--text-muted);margin-bottom:32px}.admin__login-card form{flex-direction:column;gap:16px;display:flex}.admin__login-card input{border-radius:var(--radius-md);border:1px solid var(--border-glass);background:var(--bg-glass);color:var(--text-primary);font-family:var(--font-main);padding:14px 18px;font-size:1rem}.admin__login-card input:focus{border-color:var(--accent-blue);outline:none}.admin__error{color:#ef4444;font-size:.9rem}.admin__back-btn{color:var(--text-muted);cursor:pointer;width:100%;transition:var(--transition);background:0 0;border:none;justify-content:center;align-items:center;gap:8px;margin-top:24px;font-size:.9rem;display:flex}.admin__back-btn:hover{color:var(--text-primary)}.admin__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:40px;display:flex}.admin__header h1{background:var(--gradient-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:800}.admin__header p{color:var(--text-muted);margin-top:4px}.admin__header-actions{gap:12px;display:flex}.admin__list{flex-direction:column;gap:16px;max-width:900px;display:flex}.admin__project-card{transition:var(--transition);justify-content:space-between;align-items:center;gap:20px;padding:20px 24px;display:flex}.admin__project-card:hover{border-color:#4f8fff26}.admin__project-info{flex:1;align-items:center;gap:16px;min-width:0;display:flex}.admin__project-images{border-radius:var(--radius-sm);background:var(--bg-secondary);flex-shrink:0;width:80px;height:60px;overflow:hidden}.admin__project-images img{object-fit:cover;width:100%;height:100%}.admin__project-no-img{width:100%;height:100%;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.admin__project-info h3{margin-bottom:4px;font-size:1rem;font-weight:600}.admin__project-info p{color:var(--text-muted);margin-bottom:8px;font-size:.85rem}.admin__project-tech{flex-wrap:wrap;gap:6px;display:flex}.admin__project-tech span{color:var(--accent-blue);background:#4f8fff1a;border-radius:12px;padding:3px 8px;font-size:.7rem}.admin__project-actions{flex-shrink:0;gap:8px;display:flex}.admin__project-actions button{border:1px solid var(--border-glass);background:var(--bg-glass);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:var(--transition);border-radius:8px;justify-content:center;align-items:center;font-size:.85rem;display:flex}.admin__project-actions button:hover:not(:disabled){color:var(--accent-blue);border-color:var(--accent-blue)}.admin__project-actions button:disabled{opacity:.3;cursor:not-allowed}.admin__delete-btn:hover:not(:disabled){color:#ef4444!important;border-color:#ef4444!important}.admin__overlay{z-index:9999;background:#000000b3;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.admin__form-card{width:100%;max-width:700px;max-height:90vh;padding:40px;overflow-y:auto}.admin__form-header{justify-content:space-between;align-items:center;margin-bottom:32px;display:flex}.admin__form-header h2{font-size:1.3rem;font-weight:700}.admin__form-header button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:1.2rem}.admin__form-grid{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px;display:grid}.admin__field{flex-direction:column;gap:8px;display:flex}.admin__field.full{grid-column:1/-1}.admin__field label{color:var(--text-secondary);font-size:.85rem;font-weight:600}.admin__field input,.admin__field textarea{border-radius:var(--radius-sm);border:1px solid var(--border-glass);background:var(--bg-glass);color:var(--text-primary);font-family:var(--font-main);resize:vertical;padding:12px 16px;font-size:.95rem}.admin__field input:focus,.admin__field textarea:focus{border-color:var(--accent-blue);outline:none}.admin__field input:disabled{opacity:.5}.admin__image-upload{margin-bottom:16px}.admin__upload-btn{border-radius:var(--radius-sm);border:1px dashed var(--border-glass);background:var(--bg-glass);color:var(--text-secondary);cursor:pointer;transition:var(--transition);align-items:center;gap:8px;padding:10px 20px;font-size:.9rem;display:inline-flex}.admin__upload-btn:hover{border-color:var(--accent-blue);color:var(--accent-blue)}.admin__upload-hint{color:var(--text-muted);margin-top:8px;font-size:.8rem}.admin__image-preview{flex-wrap:wrap;gap:12px;margin-top:12px;display:flex}.admin__preview-item{border-radius:8px;width:100px;height:70px;position:relative;overflow:hidden}.admin__preview-item img{object-fit:cover;width:100%;height:100%}.admin__preview-item button{color:#fff;cursor:pointer;background:#000000b3;border:none;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:.7rem;display:flex;position:absolute;top:4px;right:4px}.admin__form-actions{justify-content:flex-end;gap:12px;margin-top:32px;display:flex}@media (width<=640px){.admin__form-grid{grid-template-columns:1fr}.admin__project-card{flex-direction:column;align-items:flex-start}.admin__header{flex-direction:column}}:root{--bg-primary:#0a0a1a;--bg-secondary:#0f0f2a;--bg-card:#14143299;--bg-glass:#ffffff0a;--border-glass:#ffffff14;--text-primary:#f0f0ff;--text-secondary:#a0a0c0;--text-muted:#6a6a8a;--accent-blue:#4f8fff;--accent-purple:#a855f7;--accent-cyan:#06b6d4;--accent-pink:#ec4899;--gradient-primary:linear-gradient(135deg, #4f8fff 0%, #a855f7 50%, #ec4899 100%);--gradient-bg:linear-gradient(135deg, #0a0a1a 0%, #0f0f2a 50%, #0a0a1a 100%);--gradient-card:linear-gradient(135deg, #4f8fff14 0%, #a855f714 100%);--shadow-glow:0 0 40px #4f8fff26;--shadow-card:0 8px 32px #0006;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:28px;--font-main:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--transition:all .3s cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-main);background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;outline:none;font-family:inherit}img{max-width:100%;display:block}ul{list-style:none}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--accent-blue);border-radius:3px}::selection{color:var(--text-primary);background:#4f8fff4d}.container{max-width:1200px;margin:0 auto;padding:0 24px}.section{padding:100px 0;position:relative}.section-title{background:var(--gradient-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:16px;font-size:clamp(2rem,5vw,3rem);font-weight:800}.section-subtitle{color:var(--text-secondary);max-width:600px;margin-bottom:60px;font-size:1.1rem}.glass-card{background:var(--bg-glass);border:1px solid var(--border-glass);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(20px)}.gradient-text{background:var(--gradient-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.btn-primary{background:var(--gradient-primary);color:#fff;border-radius:var(--radius-xl);transition:var(--transition);align-items:center;gap:8px;padding:14px 32px;font-size:1rem;font-weight:600;display:inline-flex;box-shadow:0 4px 20px #4f8fff4d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px #4f8fff80}.btn-secondary{color:var(--text-primary);border-radius:var(--radius-xl);border:2px solid var(--border-glass);transition:var(--transition);background:0 0;align-items:center;gap:8px;padding:14px 32px;font-size:1rem;font-weight:600;display:inline-flex}.btn-secondary:hover{border-color:var(--accent-blue);background:#4f8fff14;transform:translateY(-2px)}.bg-gradient-animated{z-index:-1;width:100%;height:100%;position:fixed;top:0;left:0;overflow:hidden}.bg-gradient-animated .orb{filter:blur(80px);opacity:.3;border-radius:50%;animation:20s ease-in-out infinite float;position:absolute}.bg-gradient-animated .orb-1{background:var(--accent-blue);width:600px;height:600px;animation-delay:0s;top:-200px;right:-200px}.bg-gradient-animated .orb-2{background:var(--accent-purple);width:500px;height:500px;animation-delay:-7s;bottom:-150px;left:-150px}.bg-gradient-animated .orb-3{background:var(--accent-pink);width:400px;height:400px;animation-delay:-14s;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes float{0%,to{transform:translate(0)scale(1)}25%{transform:translate(50px,-50px)scale(1.1)}50%{transform:translate(-30px,30px)scale(.95)}75%{transform:translate(40px,20px)scale(1.05)}}@media (width<=768px){.section{padding:60px 0}.container{padding:0 16px}}
