*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{margin-top:2%;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;color:var(--color-text);background-color:var(--color-bg);transition:background-color .3s ease,color .3s ease}:root{--color-primary: #3b82f6;--color-secondary: #8b5cf6;--color-accent: #f59e0b;--color-success: #10b981;--color-error: #ef4444;--color-bg: #ffffff;--color-bg-secondary: #f8fafc;--color-bg-tertiary: #f1f5f9;--color-text: #0f172a;--color-text-secondary: #475569;--color-text-muted: #94a3b8;--color-border: #e2e8f0;--color-border-hover: #cbd5e1;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .07);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .15);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--transition-fast: .15s ease-in-out;--transition-base: .3s ease-in-out;--transition-slow: .5s ease-in-out;--container-max-width: 1200px;--container-padding: var(--spacing-lg)}[data-theme=dark]{--color-bg: #0f172a;--color-bg-secondary: #1e293b;--color-bg-tertiary: #334155;--color-text: #f1f5f9;--color-text-secondary: #cbd5e1;--color-text-muted: #64748b;--color-border: #334155;--color-border-hover: #475569;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .6)}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;color:var(--color-text)}h1{font-size:var(--text-5xl)}h2{font-size:var(--text-4xl)}h3{font-size:var(--text-3xl)}h4{font-size:var(--text-2xl)}h5{font-size:var(--text-xl)}h6{font-size:var(--text-lg)}p{margin-bottom:var(--spacing-md);color:var(--color-text-secondary)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-secondary)}.container{max-width:var(--container-max-width);margin:0 auto;padding:0 var(--container-padding)}.section{padding:var(--spacing-3xl) 0}.text-center{text-align:center}.text-muted{color:var(--color-text-muted)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn var(--transition-base) forwards}.animate-slide-up{animation:slideUp var(--transition-base) forwards}.animate-slide-down{animation:slideDown var(--transition-base) forwards}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--color-bg-secondary)}::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-secondary)}@media (max-width: 768px){:root{--text-5xl: 2rem;--text-4xl: 1.75rem;--text-3xl: 1.5rem;--spacing-3xl: 2rem}.container{--container-padding: var(--spacing-md)}}.app{min-height:100vh;display:flex;flex-direction:column;background-color:var(--color-bg);transition:background-color var(--transition-base)}.app-main{flex:1;padding-top:80px}.app-loading{display:flex;justify-content:center;align-items:center;min-height:100vh}.spinner{width:50px;height:50px;border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:var(--radius-full);animation:spin .8s linear infinite}.theme-toggle-wrapper{display:flex;align-items:center;gap:var(--spacing-sm)}.theme-toggle{position:relative;width:50px;height:50px;background-color:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-base);display:flex;align-items:center;justify-content:center;overflow:hidden;padding:0}.theme-toggle:hover{background-color:var(--color-bg-tertiary);border-color:var(--color-primary);transform:scale(1.05)}.theme-toggle:active{transform:scale(.95)}.theme-toggle__icon{width:24px;height:24px;color:var(--color-text);transition:all var(--transition-base);animation:iconRotate .5s ease-in-out}@keyframes iconRotate{0%{transform:rotate(0) scale(1);opacity:0}50%{transform:rotate(180deg) scale(.8);opacity:.5}to{transform:rotate(360deg) scale(1);opacity:1}}[data-theme=light] .theme-toggle__icon{filter:drop-shadow(0 0 3px rgba(245,158,11,.5))}[data-theme=dark] .theme-toggle__icon{filter:drop-shadow(0 0 3px rgba(139,92,246,.5))}.language-toggle{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all var(--transition-base);white-space:nowrap}.language-toggle:hover{background-color:var(--color-bg-tertiary);border-color:var(--color-primary);transform:scale(1.05)}.language-toggle:active{transform:scale(.95)}.theme-toggle:after{content:attr(title);position:absolute;bottom:-35px;left:50%;transform:translate(-50%) scale(.9);background-color:var(--color-text);color:var(--color-bg);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--text-xs);white-space:nowrap;opacity:0;pointer-events:none;transition:all var(--transition-base)}.theme-toggle:hover:after{opacity:1;transform:translate(-50%) scale(1)}@keyframes pulse{0%,to{box-shadow:0 0 #3b82f666}50%{box-shadow:0 0 0 8px #3b82f600}}.theme-toggle:focus-visible{animation:pulse 1.5s infinite;outline:none}.theme-toggle:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));opacity:0;border-radius:inherit;transition:opacity var(--transition-base)}.theme-toggle:hover:before{opacity:.1}@media (max-width: 768px){.theme-toggle-wrapper{gap:var(--spacing-xs)}.theme-toggle{width:44px;height:44px}.theme-toggle__icon{width:20px;height:20px}.language-toggle{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--text-xs)}.theme-toggle:after{display:none}}.theme-toggle--compact{width:40px;height:40px}.theme-toggle--compact .theme-toggle__icon{width:20px;height:20px}@media (prefers-reduced-motion: reduce){.theme-toggle,.theme-toggle__icon,.language-toggle{transition:none;animation:none}}.controls-group{display:flex;align-items:center;gap:var(--spacing-sm);background-color:var(--color-bg-secondary);padding:var(--spacing-xs);border-radius:var(--radius-full);border:1px solid var(--color-border)}.controls-group .theme-toggle,.controls-group .language-toggle{border:none;background-color:transparent}.controls-group .theme-toggle:hover,.controls-group .language-toggle:hover{background-color:var(--color-bg)}@keyframes fadeInRight{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.theme-toggle-wrapper{animation:fadeInRight .5s ease-out}[data-theme=dark] .theme-toggle,[data-theme=dark] .language-toggle{background-color:var(--color-bg-tertiary)}.navbar{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-xl);width:100%}.navbar__list{display:flex;align-items:center;gap:var(--spacing-sm);list-style:none;margin:0;padding:0}.navbar__item{position:relative}.navbar__link{display:block;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--text-base);font-weight:500;color:var(--color-text-secondary);text-decoration:none;border-radius:var(--radius-md);transition:all var(--transition-fast);position:relative}.navbar__link:before{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%) scaleX(0);width:80%;height:2px;background:linear-gradient(90deg,var(--color-primary),var(--color-secondary));border-radius:var(--radius-full);transition:transform var(--transition-base)}.navbar__link:hover{color:var(--color-text);background-color:var(--color-bg-secondary)}.navbar__link:hover:before{transform:translate(-50%) scaleX(1)}.navbar__link--active{color:var(--color-primary);font-weight:600;background-color:var(--color-bg-secondary)}.navbar__link--active:before{transform:translate(-50%) scaleX(1)}.navbar__actions{display:flex;align-items:center;gap:var(--spacing-md)}.navbar__toggle{display:none;flex-direction:column;justify-content:space-around;width:30px;height:24px;background:transparent;border:none;cursor:pointer;padding:0;z-index:1001}.navbar__toggle-line{width:100%;height:3px;background-color:var(--color-text);border-radius:var(--radius-full);transition:all var(--transition-base);transform-origin:center}.navbar__toggle--open .navbar__toggle-line:nth-child(1){transform:translateY(10px) rotate(45deg)}.navbar__toggle--open .navbar__toggle-line:nth-child(2){opacity:0}.navbar__toggle--open .navbar__toggle-line:nth-child(3){transform:translateY(-11px) rotate(-45deg)}@media (max-width: 768px){.navbar{position:relative}.navbar__toggle{display:flex}.navbar__list{position:fixed;top:60px;left:0;right:0;flex-direction:column;gap:0;background-color:var(--color-bg);border-top:1px solid var(--color-border);box-shadow:var(--shadow-lg);max-height:0;overflow:hidden;opacity:0;transition:all var(--transition-base);padding:0}.navbar__list--open{max-height:400px;opacity:1;padding:var(--spacing-md) 0}.navbar__item{width:100%}.navbar__link{padding:var(--spacing-md) var(--spacing-lg);border-radius:0;width:100%}.navbar__link:before{display:none}.navbar__link--active{background-color:var(--color-bg-tertiary);border-left:4px solid var(--color-primary)}.navbar__actions{position:absolute;right:60px;top:50%;transform:translateY(-50%)}}.navbar__list--open .navbar__item{animation:slideDown var(--transition-base) ease-out forwards}.navbar__list--open .navbar__item:nth-child(1){animation-delay:50ms}.navbar__list--open .navbar__item:nth-child(2){animation-delay:.1s}.navbar__list--open .navbar__item:nth-child(3){animation-delay:.15s}.navbar__list--open .navbar__item:nth-child(4){animation-delay:.2s}.header{position:fixed;top:0;left:0;right:0;z-index:1000;background-color:var(--color-bg);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm);transition:all var(--transition-base);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#ffffffe6}[data-theme=dark] .header{background-color:#0f172ae6;border-bottom-color:var(--color-border)}.header__container{max-width:var(--container-max-width);margin:0 auto;padding:var(--spacing-md) var(--container-padding);display:flex;align-items:center;justify-content:space-between;min-height:70px}.header__logo{display:flex;align-items:center;gap:var(--spacing-sm)}.header__logo a{display:flex;align-items:center;gap:var(--spacing-sm);text-decoration:none;transition:transform var(--transition-fast)}.header__logo a:hover{transform:scale(1.05)}.header__logo-text{font-size:var(--text-xl);font-weight:700;color:var(--color-text);background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header--scrolled{box-shadow:var(--shadow-md)}.header--scrolled .header__container{min-height:60px}@media (max-width: 768px){.header__container{padding:var(--spacing-sm) var(--spacing-md);min-height:60px}.header__logo-text{font-size:var(--text-lg)}}.footer{background-color:var(--color-bg-secondary);border-top:1px solid var(--color-border);padding:var(--spacing-3xl) 0 var(--spacing-xl);margin-top:auto;transition:background-color var(--transition-base)}.footer__container{max-width:var(--container-max-width);margin:0 auto;padding:0 var(--container-padding)}.footer__content{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xl);text-align:center}.footer__social{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap;justify-content:center}.footer__social-link{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background-color:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius-full);transition:all var(--transition-base);position:relative;overflow:hidden}.footer__social-link:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));opacity:0;transition:opacity var(--transition-base);z-index:0}.footer__social-link:hover:before{opacity:1}.footer__social-link:hover{border-color:transparent;transform:translateY(-4px);box-shadow:var(--shadow-lg)}.footer__social-icon{width:24px;height:24px;filter:brightness(0) saturate(100%);opacity:.7;transition:all var(--transition-base);position:relative;z-index:1}.footer__social-link:hover .footer__social-icon{filter:brightness(0) saturate(100%) invert(1);opacity:1;transform:scale(1.1)}.footer__text{display:flex;flex-direction:column;gap:var(--spacing-xs)}.footer__text p{margin:0;font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.6}.footer__text p:first-child{font-weight:500;color:var(--color-text-secondary)}.footer__divider{width:100%;max-width:600px;height:1px;background:linear-gradient(90deg,transparent,var(--color-border),transparent);margin:var(--spacing-lg) 0}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.footer__social{animation:fadeInUp .6s ease-out}.footer__text{animation:fadeInUp .6s ease-out .2s backwards}@media (max-width: 768px){.footer{padding:var(--spacing-2xl) 0 var(--spacing-lg)}.footer__content{gap:var(--spacing-lg)}.footer__social{gap:var(--spacing-sm)}.footer__social-link{width:44px;height:44px}.footer__social-icon{width:20px;height:20px}.footer__text p{font-size:var(--text-xs)}}[data-theme=dark] .footer{background-color:var(--color-bg-secondary);border-top-color:var(--color-border)}[data-theme=dark] .footer__social-link{background-color:var(--color-bg-tertiary);border-color:var(--color-border)}[data-theme=dark] .footer__social-icon{filter:brightness(0) saturate(100%) invert(1);opacity:.8}[data-theme=dark] .footer__social-link:hover .footer__social-icon{opacity:1}.home-page{padding:var(--spacing-2xl) 0;min-height:calc(100vh - 80px)}.hero-section{padding:var(--spacing-xl) 0;animation:fadeIn .8s ease-out}.hero-content{display:grid;grid-template-columns:220px 1fr;gap:var(--spacing-2xl);align-items:center;margin-bottom:var(--spacing-xl)}.profile-column{display:flex;justify-content:center}.profile-image{width:270px;height:270px;border-radius:50%;object-fit:cover;box-shadow:var(--shadow-lg);transition:transform var(--transition-base);border:3px solid var(--color-border)}.profile-image:hover{transform:scale(1.05);box-shadow:0 15px 30px #3b82f64d}.info-column{text-align:left}.info-column h1{font-size:var(--text-4xl);margin-bottom:var(--spacing-sm);animation:slideDown .6s ease-out .2s backwards}.highlight-name{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:800}.info-column h2{color:var(--color-text-secondary);font-size:var(--text-xl);font-weight:500;margin-bottom:var(--spacing-md);animation:slideDown .6s ease-out .3s backwards}.info-column .lead{font-size:var(--text-base);line-height:1.7;animation:slideDown .6s ease-out .4s backwards}.download-cv{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:#fff;font-weight:600;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:all var(--transition-base);animation:slideUp .6s ease-out .5s backwards}.download-cv:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);color:#fff}.bio-content{margin-top:var(--spacing-xl);text-align:left;animation:fadeIn .8s ease-out .6s backwards}.bio-content p{font-size:var(--text-base);line-height:1.7;margin-bottom:var(--spacing-md);color:var(--color-text-secondary)}.bio-content p:last-child{margin-bottom:0}.tech-stack-section{margin:var(--spacing-2xl) 0;padding:var(--spacing-xl);background:linear-gradient(135deg,var(--color-bg-secondary) 0%,var(--color-bg-tertiary) 100%);border-radius:var(--radius-lg);border:1px solid var(--color-border);animation:fadeIn .8s ease-out}.tech-stack-section h2{text-align:center;margin-bottom:var(--spacing-xl);color:var(--color-text);font-size:var(--text-xl)}.tech-stack-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md)}.tech-column{background-color:var(--color-bg);padding:var(--spacing-md);border-radius:var(--radius-md);border:1px solid var(--color-border);transition:all var(--transition-base)}.tech-column:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--color-primary)}.tech-column strong{display:block;font-size:var(--text-base);margin-bottom:var(--spacing-xs);color:var(--color-text)}.tech-column span{display:block;font-size:var(--text-xs);color:var(--color-text-secondary);line-height:1.5}.stats-section{margin:var(--spacing-2xl) 0 0 0}.stats-section h2{text-align:center;margin-bottom:var(--spacing-lg);color:var(--color-text);font-size:var(--text-2xl)}.graph-stats-row{display:flex;justify-content:space-around;margin-bottom:var(--spacing-lg)}.graph-stats-row:last-child{margin-bottom:0}.github-stat-card{border-radius:var(--radius-md);box-shadow:var(--shadow-md);transition:all var(--transition-base);border:1px solid var(--color-border);max-width:49%}.github-stat-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}@media (max-width: 768px){.home-page{padding:var(--spacing-xl) 0}.hero-content{grid-template-columns:1fr;gap:var(--spacing-lg);text-align:center}.info-column{text-align:center}.profile-image{width:180px;height:180px}.info-column h1{font-size:var(--text-2xl)}.info-column h2{font-size:var(--text-lg)}.tech-stack-grid{grid-template-columns:1fr}.graph-stats-github{grid-template-columns:1fr;gap:var(--spacing-md)}.interests-section,.tech-stack-section{padding:var(--spacing-lg);margin:var(--spacing-xl) 0}}@media (max-width: 480px){.profile-image{width:150px;height:150px}.info-column h1{font-size:var(--text-xl)}.download-cv{width:100%;justify-content:center}.hero-content{gap:var(--spacing-md)}}.certificate-card{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;transition:all var(--transition-base);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;height:100%}.certificate-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:var(--color-secondary)}.certificate-image{width:100%;height:200px;overflow:hidden;background:linear-gradient(135deg,#3b82f61a,#8b5cf61a);display:flex;align-items:center;justify-content:center;padding:var(--spacing-md);position:relative}.certificate-image:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));opacity:0;transition:opacity var(--transition-base)}.certificate-card:hover .certificate-image:before{opacity:.1}.certificate-image img{width:100%!important;height:100%;object-fit:cover;border-radius:var(--radius-md)!important;transition:transform var(--transition-base);box-shadow:var(--shadow-md);position:relative;z-index:1}.certificate-card:hover .certificate-image img{transform:scale(1.05)}.certificate-content{padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-sm);flex:1}.certificate-title{font-size:var(--text-lg);font-weight:700;color:var(--color-text);margin:0;line-height:1.4}.certificate-issuer{font-size:var(--text-base);color:var(--color-text-secondary);font-weight:500;margin:0}.certificate-date{font-size:var(--text-sm);color:var(--color-text-muted);margin:0}.certificate-id{font-size:var(--text-xs);color:var(--color-text-muted);font-family:Courier New,monospace;background-color:var(--color-bg-secondary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);margin:var(--spacing-sm) 0}.certificate-skills{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin:var(--spacing-md) 0}.skill-tag{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--color-bg-tertiary);color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:600;border-radius:var(--radius-md);border:1px solid var(--color-border);transition:all var(--transition-fast)}.skill-tag:hover{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary);transform:translateY(-2px)}.certificate-verify-link{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:#fff;text-decoration:none;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;transition:all var(--transition-base);margin-top:auto}.certificate-verify-link:after{content:"↗";font-size:var(--text-base)}.certificate-verify-link:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);color:#fff}.certificate-verified-badge{position:absolute;top:var(--spacing-md);right:var(--spacing-md);width:32px;height:32px;background-color:var(--color-success);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:#fff;font-size:var(--text-sm);box-shadow:var(--shadow-md);z-index:2}@media (max-width: 768px){.certificate-image{height:180px}.certificate-content{padding:var(--spacing-md)}.certificate-title{font-size:var(--text-base)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.certificate-card{animation:fadeInScale .4s ease-out}.skill-tag{animation:slideIn .3s ease-out backwards}.skill-tag:nth-child(1){animation-delay:.05s}.skill-tag:nth-child(2){animation-delay:.1s}.skill-tag:nth-child(3){animation-delay:.15s}.skill-tag:nth-child(4){animation-delay:.2s}.skill-tag:nth-child(5){animation-delay:.25s}@keyframes slideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.about-page{padding:var(--spacing-3xl) 0;animation:fadeIn .6s ease-out}.about-header{text-align:center;margin-bottom:var(--spacing-3xl);animation:slideDown .6s ease-out}.about-header h1{font-size:var(--text-4xl);margin-bottom:var(--spacing-md);background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.about-header h2{font-size:var(--text-xl);color:var(--color-text-secondary);font-weight:400}.profile-bio{display:grid;grid-template-columns:300px 1fr;gap:var(--spacing-2xl);margin-bottom:var(--spacing-3xl);align-items:start}.bio-image{position:sticky;top:100px}.bio-image .feature-image{width:100%;box-shadow:var(--shadow-lg);transition:transform var(--transition-base);border:2px solid var(--color-border)}.bio-image .feature-image:hover{transform:scale(1.03)}.bio-text p{font-size:var(--text-base);line-height:1.8;margin-bottom:var(--spacing-lg);color:var(--color-text-secondary)}.personal-quote{background:linear-gradient(135deg,#3b82f61a,#8b5cf61a);border-left:4px solid var(--color-primary);padding:var(--spacing-lg);margin:var(--spacing-xl) 0;border-radius:var(--radius-md)}.personal-quote p{font-size:var(--text-lg);font-style:italic;color:var(--color-text);margin:0}.education-section{background-color:var(--color-bg-secondary);padding:var(--spacing-3xl);border-radius:var(--radius-xl);margin:var(--spacing-3xl) 0;border:1px solid var(--color-border)}.education-section h3{font-size:var(--text-3xl);margin-bottom:var(--spacing-2xl);text-align:center;color:var(--color-text)}.education-item{display:grid;grid-template-columns:150px 1fr;gap:var(--spacing-xl);margin-bottom:var(--spacing-2xl);padding:var(--spacing-xl);background-color:var(--color-bg);border-radius:var(--radius-lg);border:1px solid var(--color-border);transition:all var(--transition-base)}.education-item:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.education-logo{border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background-color:#fff;padding:var(--spacing-sm)}.education-item .details h4{font-size:var(--text-2xl);color:var(--color-text);margin-bottom:var(--spacing-sm)}.education-item .location,.education-item .status,.education-item .role{font-size:var(--text-sm);color:var(--color-text-secondary);margin-bottom:var(--spacing-xs);font-weight:500}.education-item .description{margin-top:var(--spacing-md);line-height:1.7;color:var(--color-text-secondary)}.education-item-other{display:grid;grid-template-columns:1fr;gap:var(--spacing-xl);padding:var(--spacing-xl);background-color:var(--color-bg);border-radius:var(--radius-lg);border:1px solid var(--color-border);transition:all var(--transition-base)}.education-item-other:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.education-item-other .details h4{font-size:var(--text-2xl);color:var(--color-text);margin-bottom:var(--spacing-sm)}.education-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-xl)}.gallery-item{text-align:center}.gallery-item .caption{display:block;font-size:var(--text-xs);color:var(--color-text-muted);margin-bottom:var(--spacing-xs);font-weight:500}.gallery-item img{width:100%;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:transform var(--transition-base);border:1px solid var(--color-border)}.gallery-item img:hover{transform:scale(1.05)}.certificates-section{margin:var(--spacing-3xl) 0}.certificates-section h2{font-size:var(--text-3xl);text-align:center;margin-bottom:var(--spacing-md);color:var(--color-text)}.certificates-intro{text-align:center;font-size:var(--text-lg);color:var(--color-text-secondary);max-width:700px;margin:0 auto var(--spacing-2xl)}.certificates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-xl)}.philosophy-section{background:linear-gradient(135deg,var(--color-bg-secondary) 0%,var(--color-bg-tertiary) 100%);padding:var(--spacing-3xl);border-radius:var(--radius-xl);margin:var(--spacing-3xl) 0;border:1px solid var(--color-border)}.philosophy-section h2{text-align:center;font-size:var(--text-3xl);margin-bottom:var(--spacing-2xl)}.philosophy-content{display:grid;grid-template-columns:400px 1fr;gap:var(--spacing-2xl);align-items:center;margin-bottom:var(--spacing-2xl)}.philosophy-image img{box-shadow:var(--shadow-lg);border:2px solid var(--color-border)}.philosophy-text p{line-height:1.8;margin-bottom:var(--spacing-md);color:var(--color-text-secondary)}.learning-highlight img{box-shadow:var(--shadow-xl);border:2px solid var(--color-border)}@media (max-width: 1024px){.profile-bio{grid-template-columns:250px 1fr;gap:var(--spacing-xl)}.philosophy-content{grid-template-columns:300px 1fr}}@media (max-width: 768px){.about-page{padding:var(--spacing-2xl) 0}.profile-bio{grid-template-columns:1fr;gap:var(--spacing-lg)}.bio-image{position:static}.bio-image .feature-image{max-width:300px;margin:0 auto;display:block}.education-item{grid-template-columns:1fr;gap:var(--spacing-md)}.education-logo{margin:0 auto}.education-gallery,.certificates-grid,.philosophy-content{grid-template-columns:1fr}.philosophy-image img,.learning-highlight img{max-width:100%!important}}@media (max-width: 480px){.about-header h1{font-size:var(--text-3xl)}.education-section,.philosophy-section{padding:var(--spacing-xl)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-weight:600;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);font-family:inherit;text-decoration:none;position:relative;overflow:hidden}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn--sm{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--text-sm)}.btn--md{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--text-base)}.btn--lg{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--text-lg)}.btn--primary{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:#fff;box-shadow:var(--shadow-md)}.btn--primary:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--color-secondary),var(--color-primary));opacity:0;transition:opacity var(--transition-base)}.btn--primary:hover:before{opacity:.2}.btn--primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn--primary:active{transform:translateY(0)}.btn--primary>*{position:relative;z-index:1}.btn--secondary{background-color:var(--color-secondary);color:#fff;box-shadow:var(--shadow-sm)}.btn--secondary:hover{background-color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn--outline{background-color:transparent;color:var(--color-primary);border:2px solid var(--color-primary);box-shadow:none}.btn--outline:hover{background-color:var(--color-primary);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn--ghost{background-color:transparent;color:var(--color-text-secondary);box-shadow:none}.btn--ghost:hover{background-color:var(--color-bg-secondary);color:var(--color-text)}.btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn--loading{pointer-events:none;opacity:.7}.btn--loading:after{content:"";position:absolute;width:16px;height:16px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.btn svg{width:1em;height:1em}.btn--full{width:100%}@media (max-width: 768px){.btn--lg{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--text-base)}}.project-card{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;transition:all var(--transition-base);box-shadow:var(--shadow-sm);display:flex;flex-direction:column}.project-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl);border-color:var(--color-primary)}.project-card__image-wrapper{position:relative;width:100%;height:250px;overflow:hidden;background-color:var(--color-bg-secondary)}.project-carousel{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.project-card__image{width:100%!important;height:100%;object-fit:cover;border-radius:0!important;transition:transform var(--transition-slow)}.project-card:hover .project-card__image{transform:scale(1.05)}.carousel-control{position:absolute;top:50%;transform:translateY(-50%);background-color:#0009;color:#fff;border:none;width:40px;height:40px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-base);opacity:0;z-index:2}.project-card:hover .carousel-control{opacity:1}.carousel-control:hover{background-color:#000c;transform:translateY(-50%) scale(1.1)}.carousel-control--prev{left:var(--spacing-md)}.carousel-control--next{right:var(--spacing-md)}.carousel-indicators{position:absolute;bottom:var(--spacing-md);left:50%;transform:translate(-50%);display:flex;gap:var(--spacing-xs);z-index:2}.carousel-indicator{width:8px;height:8px;border-radius:var(--radius-full);background-color:#ffffff80;border:none;cursor:pointer;transition:all var(--transition-base);padding:0}.carousel-indicator.active{width:24px;background-color:#fff}.carousel-indicator:hover{background-color:#fffc}.carousel-counter{position:absolute;top:var(--spacing-md);right:var(--spacing-md);background-color:#000000b3;color:#fff;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:600;z-index:2}.project-card__overlay{position:absolute;top:0;left:0;right:0;padding:var(--spacing-md);background:linear-gradient(180deg,rgba(0,0,0,.7) 0%,transparent 100%)}.project-card__technologies{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.project-card__tech-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);background-color:#3b82f6e6;color:#fff;font-size:var(--text-xs);font-weight:600;border-radius:var(--radius-md);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.project-card__content{padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-md);flex:1}.project-card__title{font-size:var(--text-xl);font-weight:700;color:var(--color-text);margin:0;line-height:1.3}.project-card__description{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.6;margin:0;flex:1}.project-card__actions{display:flex;gap:var(--spacing-sm);margin-top:auto}.project-card__actions button{flex:1}@media (max-width: 768px){.project-card__image-wrapper{height:200px}.project-card__content{padding:var(--spacing-md)}.carousel-control{width:36px;height:36px}.carousel-control--prev{left:var(--spacing-sm)}.carousel-control--next{right:var(--spacing-sm)}.project-card__actions{flex-direction:column}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.project-card__tech-badge{animation:slideIn .3s ease-out backwards}.project-card__tech-badge:nth-child(1){animation-delay:.05s}.project-card__tech-badge:nth-child(2){animation-delay:.1s}.project-card__tech-badge:nth-child(3){animation-delay:.15s}.project-card__tech-badge:nth-child(4){animation-delay:.2s}.project-card__tech-badge:nth-child(5){animation-delay:.25s}.projects-page{padding:var(--spacing-3xl) 0;min-height:calc(100vh - 80px);animation:fadeIn .6s ease-out}.projects-page h1{font-size:var(--text-4xl);text-align:center;margin-bottom:var(--spacing-md);background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:slideDown .6s ease-out}.projects-page .lead{text-align:center;font-size:var(--text-lg);color:var(--color-text-secondary);max-width:700px;margin:0 auto var(--spacing-3xl);line-height:1.8;animation:slideDown .6s ease-out .2s backwards}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--spacing-2xl);margin-top:var(--spacing-3xl)}.projects-grid>*{animation:fadeInUp .6s ease-out backwards}.projects-grid>*:nth-child(1){animation-delay:.1s}.projects-grid>*:nth-child(2){animation-delay:.2s}.projects-grid>*:nth-child(3){animation-delay:.3s}.projects-grid>*:nth-child(4){animation-delay:.4s}.projects-grid>*:nth-child(5){animation-delay:.5s}.projects-grid>*:nth-child(6){animation-delay:.6s}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.projects-filters{display:flex;justify-content:center;gap:var(--spacing-sm);flex-wrap:wrap;margin-bottom:var(--spacing-2xl)}.filter-btn{padding:var(--spacing-sm) var(--spacing-lg);background-color:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-secondary);font-weight:500;cursor:pointer;transition:all var(--transition-base)}.filter-btn:hover{background-color:var(--color-bg-tertiary);border-color:var(--color-primary);color:var(--color-text)}.filter-btn.active{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:#fff;border-color:transparent}.projects-empty{text-align:center;padding:var(--spacing-3xl);color:var(--color-text-muted)}.projects-empty svg{width:100px;height:100px;margin-bottom:var(--spacing-lg);opacity:.3}.projects-empty h3{font-size:var(--text-2xl);margin-bottom:var(--spacing-sm);color:var(--color-text-secondary)}@media (max-width: 1024px){.projects-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-xl)}}@media (max-width: 768px){.projects-page{padding:var(--spacing-2xl) 0}.projects-page h1{font-size:var(--text-3xl)}.projects-grid{grid-template-columns:1fr;gap:var(--spacing-lg)}.projects-filters{gap:var(--spacing-xs)}.filter-btn{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--text-sm)}}@media (max-width: 480px){.projects-page h1{font-size:var(--text-2xl)}.projects-page .lead{font-size:var(--text-base)}}.contact-form{display:flex;flex-direction:column;gap:var(--spacing-lg);max-width:600px;margin:0 auto}.contact-form__group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.contact-form__label{font-size:var(--text-base);font-weight:600;color:var(--color-text);display:flex;align-items:center;gap:var(--spacing-xs)}.contact-form__input,.contact-form__textarea{width:100%;padding:var(--spacing-md);font-size:var(--text-base);color:var(--color-text);background-color:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius-md);font-family:inherit;transition:all var(--transition-base)}.contact-form__input:focus,.contact-form__textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #3b82f61a}.contact-form__input::placeholder,.contact-form__textarea::placeholder{color:var(--color-text-muted)}.contact-form__textarea{resize:vertical;min-height:120px;line-height:1.6}.contact-form__input--error,.contact-form__textarea.contact-form__input--error{border-color:var(--color-error);background-color:#ef44440d}.contact-form__input--error:focus,.contact-form__textarea.contact-form__input--error:focus{box-shadow:0 0 0 3px #ef44441a}.contact-form__error{font-size:var(--text-sm);color:var(--color-error);display:flex;align-items:center;gap:var(--spacing-xs);animation:slideDown .3s ease-out}.contact-form__error:before{content:"⚠";font-size:var(--text-base)}.contact-form__message{padding:var(--spacing-md);border-radius:var(--radius-md);font-size:var(--text-base);font-weight:500;display:flex;align-items:center;gap:var(--spacing-sm);animation:slideDown .3s ease-out}.contact-form__message--success{background-color:#10b9811a;color:var(--color-success);border:2px solid var(--color-success)}.contact-form__message--success:before{content:"✓";font-size:var(--text-xl);font-weight:700}.contact-form__message--error{background-color:#ef44441a;color:var(--color-error);border:2px solid var(--color-error)}.contact-form__message--error:before{content:"✕";font-size:var(--text-xl);font-weight:700}.contact-form__submit{margin-top:var(--spacing-md);width:100%}.contact-form__char-count{font-size:var(--text-xs);color:var(--color-text-muted);text-align:right;margin-top:calc(var(--spacing-xs) * -1)}.contact-form__char-count--warning{color:var(--color-accent)}.contact-form__char-count--error{color:var(--color-error)}.contact-form__required{color:var(--color-error);font-weight:700}.contact-form__hint{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.5}.contact-form--loading{pointer-events:none;opacity:.6}.contact-form--loading .contact-form__input,.contact-form--loading .contact-form__textarea{background-color:var(--color-bg-secondary)}@media (max-width: 768px){.contact-form{gap:var(--spacing-md)}.contact-form__input,.contact-form__textarea{padding:var(--spacing-sm);font-size:var(--text-sm)}.contact-form__label{font-size:var(--text-sm)}.contact-form__textarea{min-height:100px}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.contact-form__input--error,.contact-form__textarea.contact-form__input--error{animation:shake .3s ease-in-out}[data-theme=dark] .contact-form__input,[data-theme=dark] .contact-form__textarea{background-color:var(--color-bg-secondary)}[data-theme=dark] .contact-form__input:focus,[data-theme=dark] .contact-form__textarea:focus{background-color:var(--color-bg)}.contact-form__input:focus-visible,.contact-form__textarea:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.contact-page{padding:var(--spacing-3xl) 0;min-height:calc(100vh - 80px);animation:fadeIn .6s ease-out}.contact-page .container{max-width:800px}.contact-page h1{font-size:var(--text-4xl);text-align:center;margin-bottom:var(--spacing-md);background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:slideDown .6s ease-out}.contact-page .lead{text-align:center;font-size:var(--text-lg);color:var(--color-text-secondary);max-width:600px;margin:0 auto var(--spacing-3xl);line-height:1.8;animation:slideDown .6s ease-out .2s backwards}.contact-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-xl);margin-bottom:var(--spacing-3xl)}.contact-info-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-base)}.contact-info-item:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--color-primary)}.contact-info-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));border-radius:var(--radius-full);color:#fff;font-size:var(--text-xl);flex-shrink:0}.contact-info-text h3{font-size:var(--text-base);color:var(--color-text);margin-bottom:var(--spacing-xs);font-weight:600}.contact-info-text p{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0}.contact-info-text a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}.contact-info-text a:hover{color:var(--color-secondary);text-decoration:underline}.contact-form-wrapper{background-color:var(--color-bg-secondary);padding:var(--spacing-3xl);border-radius:var(--radius-xl);border:1px solid var(--color-border);box-shadow:var(--shadow-md);animation:fadeInUp .6s ease-out .4s backwards}.contact-social{text-align:center;margin-top:var(--spacing-3xl);padding-top:var(--spacing-2xl);border-top:1px solid var(--color-border)}.contact-social h3{font-size:var(--text-xl);color:var(--color-text);margin-bottom:var(--spacing-lg)}.contact-social-links{display:flex;justify-content:center;gap:var(--spacing-md);flex-wrap:wrap}.contact-social-link{display:flex;align-items:center;justify-content:center;width:56px;height:56px;background-color:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius-full);transition:all var(--transition-base);position:relative;overflow:hidden}.contact-social-link:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));opacity:0;transition:opacity var(--transition-base)}.contact-social-link:hover:before{opacity:1}.contact-social-link:hover{border-color:transparent;transform:translateY(-5px);box-shadow:var(--shadow-lg)}.contact-social-link svg,.contact-social-link img{width:28px;height:28px;position:relative;z-index:1;transition:all var(--transition-base)}.contact-social-link:hover svg,.contact-social-link:hover img{filter:brightness(0) invert(1);transform:scale(1.1)}.contact-success{text-align:center;padding:var(--spacing-3xl);background-color:#10b9811a;border:2px solid var(--color-success);border-radius:var(--radius-xl);animation:fadeInUp .6s ease-out}.contact-success svg{width:80px;height:80px;color:var(--color-success);margin-bottom:var(--spacing-lg)}.contact-success h3{font-size:var(--text-2xl);color:var(--color-success);margin-bottom:var(--spacing-sm)}.contact-success p{color:var(--color-text-secondary);margin:0}@media (max-width: 768px){.contact-page{padding:var(--spacing-2xl) 0}.contact-page h1{font-size:var(--text-3xl)}.contact-form-wrapper{padding:var(--spacing-xl)}.contact-info{grid-template-columns:1fr;gap:var(--spacing-md)}.contact-social-links{gap:var(--spacing-sm)}.contact-social-link{width:48px;height:48px}.contact-social-link svg,.contact-social-link img{width:24px;height:24px}}@media (max-width: 480px){.contact-page h1{font-size:var(--text-2xl)}.contact-page .lead{font-size:var(--text-base)}.contact-form-wrapper{padding:var(--spacing-lg)}}
