:root{--primary-gradient:linear-gradient(45deg,#667eea,#764ba2);--primary-color:#667eea;--secondary-color:#764ba2;--text-dark:#2c3e50;--text-medium:#555;--text-light:#7f8c8d;--text-muted:#666;--border-color:#e0e0e0;--white:#fff;--white-transparent:#fffffff2;--background-gradient:linear-gradient(135deg,#667eea,#764ba2);--card-background:#fffffff2;--input-background:#fff;--input-border:#e0e0e0;--input-focus-border:#667eea;--success-color:#4caf50;--error-color:#f44336;--info-color:#2196f3;--spacing-xs:5px;--spacing-sm:10px;--spacing-md:15px;--spacing-lg:20px;--spacing-xl:30px;--spacing-xxl:40px;--border-radius-sm:8px;--border-radius-md:10px;--border-radius-lg:12px;--border-radius-xl:20px;--border-radius-circle:50%;--shadow-light:0 10px 20px #667eea4d;--shadow-medium:0 10px 25px #00000026;--shadow-heavy:0 20px 40px #0000001a;--font-size-xs:0.875rem;--font-size-sm:1rem;--font-size-md:1.1rem;--font-size-lg:1.2rem;--font-size-xl:1.5rem;--font-size-xxl:2rem;--font-size-xxxl:2.5rem;--font-size-hero:3rem;--transition-fast:0.2s ease;--transition-medium:0.3s ease;--transition-slow:0.5s ease}.dark-theme{--primary-gradient:linear-gradient(45deg,#4f46e5,#7c3aed);--primary-color:#4f46e5;--secondary-color:#7c3aed;--text-dark:#f8fafc;--text-medium:#e2e8f0;--text-light:#cbd5e1;--text-muted:#94a3b8;--border-color:#334155;--white:#0f172a;--white-transparent:#0f172af2;--background-gradient:linear-gradient(135deg,#0f172a,#1e293b 50%,#334155);--card-background:#1e293bf2;--input-background:#1e293b;--input-border:#475569;--input-focus-border:#4f46e5;--success-color:#22c55e;--error-color:#ef4444;--info-color:#3b82f6}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--background-gradient);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;min-height:100vh;transition:background var(--transition-medium),color var(--transition-medium)}.section-title,body{color:var(--text-dark)}.section-title{font-size:2rem;margin-bottom:30px;text-align:center;transition:color var(--transition-medium)}@media (max-width:600px){.section-title{font-size:1.5rem}}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes slideOutRight{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.container{display:flex;flex-direction:column;justify-content:center;margin:0 auto;max-width:800px;min-height:100vh;padding:var(--spacing-lg)}.portfolio-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--card-background);border-radius:var(--border-radius-xl);box-shadow:var(--shadow-heavy);overflow:hidden;padding:var(--spacing-xxl);position:relative;transition:background var(--transition-medium),box-shadow var(--transition-medium)}.portfolio-card.transitioning{overflow:hidden}.page-content{opacity:1;transform:translateX(0);transition:all .3s ease-in-out}.portfolio-card.transitioning .page-content{opacity:0;transform:translateX(-20px)}.view-transition-enter{opacity:0;transform:translateX(100px) scale(.95)}.view-transition-enter-active{transition:all .4s ease-out}.view-transition-enter-active,.view-transition-exit{opacity:1;transform:translateX(0) scale(1)}.view-transition-exit-active{opacity:0;transform:translateX(-100px) scale(.95);transition:all .4s ease-in}.portfolio-card.fade-in{animation:fadeInSlide .5s ease-out}.portfolio-card.fade-out{animation:fadeOutSlide .5s ease-in forwards}@keyframes fadeInSlide{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fadeOutSlide{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-30px) scale(.95)}}.contact-section{margin-top:var(--spacing-xxl)}.tech-stack-button-container{display:flex;justify-content:center;margin:var(--spacing-xl) 0}.tech-stack-button{align-items:center;background:var(--primary-gradient);border:none;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-medium);color:var(--white);cursor:pointer;display:flex;font-size:var(--font-size-md);font-weight:600;gap:var(--spacing-sm);letter-spacing:.5px;padding:var(--spacing-md) var(--spacing-xl);text-transform:uppercase;transition:all var(--transition-fast)}.tech-stack-button:hover{box-shadow:var(--shadow-heavy);transform:translateY(-2px)}.tech-stack-button:active{transform:translateY(0)}.page-header{border-bottom:2px solid var(--border-color);gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-md)}.back-button,.page-header{align-items:center;display:flex}.back-button{background:#0000;border:2px solid var(--border-color);border-radius:var(--border-radius-md);color:var(--text-dark);cursor:pointer;font-size:var(--font-size-sm);font-weight:500;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);transition:all var(--transition-fast)}.back-button:hover{background:var(--primary-gradient);border-color:#0000;color:var(--white);transform:translateX(-2px)}.back-button:active{transform:translateX(0)}.page-title{-webkit-text-fill-color:#0000;background:var(--primary-gradient);background-clip:text;-webkit-background-clip:text;color:var(--text-dark);font-size:var(--font-size-xxl);font-weight:700;margin:0}.button-icon{align-items:center;display:flex;font-size:var(--font-size-lg)}.portfolio-page{animation:slideInFromLeft .4s ease-out}.tech-stack-page{animation:slideInFromRight .4s ease-out}@keyframes slideInFromLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInFromRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@media (max-width:600px){.container{padding:var(--spacing-sm)}.portfolio-card{padding:var(--spacing-lg)}.tech-stack-button{font-size:var(--font-size-sm);padding:var(--spacing-sm) var(--spacing-lg)}.page-header{align-items:flex-start;flex-direction:column;gap:var(--spacing-md)}.back-button{align-self:flex-start}.page-title{font-size:var(--font-size-xl)}}.theme-toggle{align-items:center;background:#0000;border:2px solid var(--border-color);border-radius:var(--border-radius-circle);color:var(--text-dark);cursor:pointer;display:flex;height:44px;justify-content:center;position:relative;transition:all var(--transition-medium);width:44px}.theme-toggle:hover{border-color:var(--primary-color);box-shadow:0 0 15px #4f46e54d;transform:scale(1.05)}.theme-toggle:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #4f46e533;outline:none}.theme-toggle:active{transform:scale(.95)}.toggle-icon{height:20px;width:20px}.toggle-icon,.toggle-icon svg{transition:all var(--transition-medium)}.toggle-icon svg{height:100%;width:100%}.toggle-icon.light{transform:rotate(0deg)}.toggle-icon.dark{transform:rotate(180deg)}@media (prefers-reduced-motion:no-preference){.theme-toggle{transition:all var(--transition-medium)}.toggle-icon{animation-duration:var(--transition-medium)}}@media (prefers-reduced-motion:reduce){.theme-toggle,.toggle-icon,.toggle-icon svg{animation:none;transition:none}}.header{margin-bottom:var(--spacing-xxl);position:relative;text-align:center}.header-top{display:flex;justify-content:flex-end;margin-bottom:var(--spacing-lg)}.profile-image{align-items:center;background:var(--primary-gradient);border-radius:var(--border-radius-circle);color:var(--white);display:flex;font-size:48px;font-weight:700;height:150px;justify-content:center;margin:0 auto var(--spacing-lg);width:150px}.name{color:var(--text-dark);font-size:var(--font-size-xxxl);margin-bottom:var(--spacing-sm)}.name,.title{transition:color var(--transition-medium)}.title{color:var(--text-light);font-size:var(--font-size-lg);margin-bottom:var(--spacing-lg)}.bio{color:var(--text-medium);margin:0 auto var(--spacing-lg);max-width:600px;transition:color var(--transition-medium)}.bio,.profile-button{font-size:var(--font-size-md)}.profile-button{background:var(--primary-gradient);border:none;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);color:var(--white);cursor:pointer;font-weight:600;padding:var(--spacing-md) var(--spacing-xl);transition:all .3s ease}.profile-button:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}@media (max-width:600px){.name{font-size:var(--font-size-xxl)}.profile-image{font-size:36px;height:120px;width:120px}}.tech-stack-section{margin:0;padding:0}.section-subtitle{color:var(--text-light);font-size:var(--font-size-md);margin-bottom:var(--spacing-xl);margin-top:var(--spacing-sm);text-align:center}.tech-categories{grid-gap:var(--spacing-xl);display:grid;gap:var(--spacing-xl);margin:0 auto;max-width:1200px}.tech-category{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--card-background);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-medium);padding:var(--spacing-xl)}.category-header{align-items:center;border-bottom:2px solid var(--border-color);display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md)}.category-icon{font-size:var(--font-size-xl)}.category-title{color:var(--text-dark);font-size:var(--font-size-lg);font-weight:600;margin:0}.tech-grid{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.tech-item{align-items:center;background:var(--input-background);border:1px solid var(--input-border);border-radius:var(--border-radius-sm);display:flex;gap:var(--spacing-sm);padding:var(--spacing-md);transition:var(--transition-fast)}.tech-icon{flex-shrink:0;font-size:var(--font-size-lg)}.tech-name{color:var(--text-dark);font-size:var(--font-size-sm);font-weight:500;margin:0}@media (max-width:768px){.tech-stack-section{padding:0 var(--spacing-md)}.tech-category{padding:var(--spacing-lg)}.tech-grid{gap:var(--spacing-sm);grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.tech-item{flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-sm);text-align:center}.tech-name{font-size:var(--font-size-xs)}}@media (max-width:480px){.category-header{flex-direction:column;gap:var(--spacing-sm);text-align:center}.tech-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.tech-item{padding:var(--spacing-xs)}}@media (prefers-reduced-motion:reduce){.tech-item{transition:none}}@media (prefers-contrast:high){.tech-category{border:2px solid var(--text-dark)}.tech-item{border:1px solid var(--text-dark)}}.form-group{margin-bottom:var(--spacing-lg)}.form-group,.input-container{display:flex;flex-direction:column}.input-container{position:relative}.form-input{background:var(--input-background);border:2px solid var(--input-border);border-radius:var(--border-radius-sm);color:var(--text-dark);font-size:16px;outline:none;padding:18px 16px 8px;transition:all var(--transition-medium)}.form-input:focus{border-color:var(--input-focus-border);box-shadow:0 0 0 3px #4f46e533}.form-input[as=textarea],textarea.form-input{min-height:120px;padding-top:24px;resize:vertical}.floating-label{background:#0000;color:var(--text-light);font-size:16px;font-weight:500;left:16px;padding:0 4px;pointer-events:none;position:absolute;top:14px;transform-origin:left center;transition:all var(--transition-medium)}.floating-label.floating{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:var(--card-background);border:1px solid #4f46e54d;border-radius:4px;box-shadow:0 2px 4px #4f46e51a;font-size:12px;font-weight:600;padding:2px 6px;top:-10px;transform:scale(1)}.floating-label.floating,.form-input:focus+.floating-label{color:var(--primary-color)}.input-container:has(textarea) .floating-label{top:20px}.input-container:has(textarea) .floating-label.floating{top:-10px}.submit-btn{background:var(--primary-gradient);border:none;border-radius:var(--border-radius-sm);color:var(--white);cursor:pointer;font-size:16px;font-weight:600;padding:var(--spacing-md) var(--spacing-xl);transition:transform var(--transition-medium),box-shadow var(--transition-medium)}.submit-btn:hover{box-shadow:var(--shadow-light);transform:translateY(-2px)}.contact-form{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg)}.contact-item{align-items:center;background:#4f46e51a;border-radius:var(--border-radius-md);display:flex;gap:var(--spacing-md);overflow:hidden;padding:var(--spacing-md);position:relative;transition:all var(--transition-medium)}.contact-item.copyable,.contact-item.linkable{cursor:pointer}.contact-item.copyable:hover,.contact-item.linkable:hover{background:#4f46e526}.contact-item.copyable:hover .contact-details,.contact-item.copyable:hover .contact-icon,.contact-item.linkable:hover .contact-details,.contact-item.linkable:hover .contact-icon{transform:translateX(-60px)}.contact-icon{align-items:center;background:var(--primary-gradient);border-radius:var(--border-radius-circle);color:var(--white);display:flex;font-weight:700;height:40px;justify-content:center;width:40px}.contact-details,.contact-icon{transition:transform var(--transition-medium)}.contact-details h3{color:var(--text-dark);margin:0}.contact-details h3,.contact-details p{transition:color var(--transition-medium)}.contact-details p{color:var(--text-muted);margin:var(--spacing-xs) 0 0}.copy-button{align-items:center;background:#4caf50;border:none;border-radius:0;bottom:0;cursor:pointer;display:flex;justify-content:center;position:absolute;right:-60px;top:0;transition:right var(--transition-medium);width:60px}.contact-item.copyable:hover .copy-button{right:0}.copy-button:hover{background:#45a049}.copy-icon{color:#fff;font-size:14px;transition:all var(--transition-fast)}.copy-button:hover .copy-icon{transform:scale(1.1)}.link-button{align-items:center;background:#2196f3;border:none;border-radius:0;bottom:0;cursor:pointer;display:flex;justify-content:center;position:absolute;right:-60px;top:0;transition:right var(--transition-medium);width:60px}.contact-item.linkable:hover .link-button{right:0}.link-button:hover{background:#1976d2}.link-icon{color:#fff;font-size:14px;transition:all var(--transition-fast)}.link-button:hover .link-icon{transform:scale(1.1)}.contact-info{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:var(--spacing-xl)}@media (max-width:600px){.contact-info{grid-template-columns:1fr}}.notification{animation:slideInRight var(--transition-medium);max-width:400px;position:fixed;right:var(--spacing-lg);top:var(--spacing-lg);z-index:1000}.notification.notification-closing{animation:slideOutRight var(--transition-medium) forwards}.notification-content{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--white-transparent);border:1px solid #fff3;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-medium);display:flex;gap:12px;padding:16px var(--spacing-lg);position:relative}.notification-success .notification-content{border-left:4px solid var(--success-color)}.notification-error .notification-content{border-left:4px solid var(--error-color)}.notification-info .notification-content{border-left:4px solid var(--info-color)}.notification-icon{font-size:18px;font-weight:700;min-width:20px;text-align:center}.notification-success .notification-icon{color:var(--success-color)}.notification-error .notification-icon{color:var(--error-color)}.notification-info .notification-icon{color:var(--info-color)}.notification-message{color:#333;flex:1 1;font-weight:500}.notification-close{align-items:center;background:none;border:none;border-radius:var(--border-radius-circle);color:var(--text-muted);cursor:pointer;display:flex;font-size:20px;height:20px;justify-content:center;padding:0;transition:all var(--transition-fast);width:20px}.notification-close:hover{background:#0000001a;color:#333}@media (max-width:600px){.notification{left:var(--spacing-sm);max-width:none;right:var(--spacing-sm);top:var(--spacing-sm)}}
/*# sourceMappingURL=main.36213b28.css.map*/