:root{--primary:#6c3ce1;--primary-light:#8b5cf6;--primary-dark:#5b21b6;--secondary:#3b82f6;--bg:#fafafa;--surface:#fff;--text-primary:#1e1b4b;--text-secondary:#64748b;--border:#e2e8f0;--accent-gradient:linear-gradient(135deg, #6c3ce1, #3b82f6);--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--shadow-accent:0 10px 20px -5px #6c3ce14d;--selection-bg:#6c3ce133;--github-color:#181717;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--space-24:6rem;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--transition-fast:.15s ease;--transition-normal:.3s ease;--transition-slow:.5s ease;--max-width:1200px;--navbar-height:80px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}[data-theme=dark]{--bg:#0f0b1a;--surface:#1a1432;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--border:#2d2654;--shadow-sm:0 1px 2px 0 #0000004d;--shadow-md:0 4px 6px -1px #0006, 0 2px 4px -1px #0000004d;--shadow-lg:0 10px 15px -3px #00000080, 0 4px 6px -2px #0006;--shadow-accent:0 10px 25px -5px #6c3ce180;--selection-bg:#8b5cf64d;--github-color:#f1f5f9}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px}body{font-family:var(--font-sans);background-color:var(--bg);color:var(--text-primary);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--transition-normal), color var(--transition-normal);line-height:1.6}::selection{background-color:var(--selection-bg)}h1,h2,h3,h4,h5,h6{color:var(--text-primary);font-weight:700;line-height:1.25}a{color:inherit;transition:color var(--transition-fast);text-decoration:none}.container{width:100%;max-width:var(--max-width);padding-left:var(--space-6);padding-right:var(--space-6);margin:0 auto}section{padding-top:var(--space-24);padding-bottom:var(--space-24)}@media (width<=768px){section{padding-top:var(--space-16);padding-bottom:var(--space-16)}}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.btn{border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal);justify-content:center;align-items:center;gap:var(--space-2);border:none;font-size:.95rem;font-weight:600;display:inline-flex}.btn-primary{background:var(--accent-gradient);color:#fff;box-shadow:var(--shadow-accent);padding:calc(.75rem + 2px) calc(1.5rem + 2px)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 24px -5px #6c3ce173}.btn-secondary{border:2px solid var(--primary-light);color:var(--primary);background:0 0;padding:.75rem 1.5rem}[data-theme=dark] .btn-secondary{color:var(--primary-light)}.btn-secondary:hover{background:#6c3ce10d;transform:translateY(-2px)}.btn:active{transform:translateY(0)}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}.theme-toggle-btn{cursor:pointer;border-radius:var(--radius-md);width:40px;height:40px;color:var(--text-primary);background:0 0;background-color:var(--bg);border:none;border:1px solid var(--border);transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.theme-toggle-btn:hover{background-color:var(--border);color:var(--primary);transform:scale(1.05)}.theme-icon{transition:transform var(--transition-normal);font-size:1.2rem}.theme-toggle-btn:hover .theme-icon.sun{transform:rotate(45deg)}.theme-toggle-btn:hover .theme-icon.moon{transform:rotate(-15deg)}.theme-icon.sun{color:#fbbf24}.theme-icon.moon{color:#6366f1}.navbar{height:var(--navbar-height);z-index:1000;box-shadow:none;background-color:#0000;border:1px solid #0000;border-radius:0;align-items:center;transition:top .8s cubic-bezier(.25,1,.5,1),left .8s cubic-bezier(.25,1,.5,1),right .8s cubic-bezier(.25,1,.5,1),height .8s cubic-bezier(.25,1,.5,1),background-color .8s cubic-bezier(.25,1,.5,1),border-color .8s cubic-bezier(.25,1,.5,1),border-radius .8s cubic-bezier(.25,1,.5,1),box-shadow .8s cubic-bezier(.25,1,.5,1);display:flex;position:fixed;top:0;left:0;right:0}.navbar.scrolled{top:var(--space-4);left:var(--space-6);right:var(--space-6);max-width:var(--max-width);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);background-color:#fafafacc;height:65px;margin:0 auto}[data-theme=dark] .navbar.scrolled{background-color:#1a1432d9;box-shadow:0 10px 30px -10px #00000080}.navbar-container{justify-content:space-between;align-items:center;width:100%;height:100%;display:flex}.navbar-logo{letter-spacing:-.05em;color:var(--text-primary);cursor:pointer;transition:transform var(--transition-fast);font-size:1.5rem;font-weight:800}.navbar-logo:hover{transform:scale(1.03)}.navbar-logo span{color:var(--primary);background:var(--accent-gradient);-webkit-text-fill-color:transparent;transition:filter var(--transition-fast);-webkit-background-clip:text}.navbar-logo:hover span{filter:drop-shadow(0 0 8px #6c3ce199)}.navbar-menu-desktop{align-items:center;gap:var(--space-8);display:flex}.nav-link{color:var(--text-secondary);cursor:pointer;padding:var(--space-2) 0;transition:color var(--transition-fast);font-size:.95rem;font-weight:500;position:relative}.nav-link:after{content:"";background:var(--accent-gradient);border-radius:var(--radius-full);transform-origin:100%;width:100%;height:2px;transition:transform var(--transition-normal);position:absolute;bottom:0;left:0;transform:scaleX(0)}.nav-link:hover{color:var(--primary)}.nav-link:hover:after,.nav-link.active:after{transform-origin:0;transform:scaleX(1)}.nav-link.active{color:var(--primary);font-weight:600}.navbar-mobile-actions{align-items:center;gap:var(--space-4);display:none}.navbar-toggle-btn{color:var(--text-primary);cursor:pointer;border-radius:var(--radius-md);border:none;border:1px solid var(--border);background:0 0;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.25rem;display:flex}.navbar-menu-mobile{top:calc(100% + var(--space-2));background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-lg);position:absolute;left:0;overflow:hidden}.mobile-links-container{padding:var(--space-4) var(--space-6);gap:var(--space-4);flex-direction:column;display:flex}.nav-link-mobile{color:var(--text-secondary);padding:var(--space-2) 0;cursor:pointer;border-bottom:1px solid #0000000d;font-size:1.1rem;font-weight:500}[data-theme=dark] .nav-link-mobile{border-bottom-color:#ffffff0d}.nav-link-mobile.active{color:var(--primary);border-left:3px solid var(--primary);padding-left:var(--space-2);font-weight:600}@media (width<=768px){.navbar-menu-desktop{display:none}.navbar-mobile-actions{display:flex}.navbar.scrolled{height:70px}}.hero-section{min-height:100vh;padding-top:calc(var(--navbar-height) + var(--space-8));padding-bottom:var(--space-12);background:radial-gradient(circle at 10% 20%,#6c3ce108 0%,#0000 40%),radial-gradient(circle at 90% 80%,#3b82f608 0%,#0000 40%);align-items:center;display:flex;overflow:hidden}.hero-container{gap:var(--space-12);grid-template-columns:1.2fr .8fr;align-items:center;display:grid}.hero-content{flex-direction:column;align-items:flex-start;display:flex}.hero-greeting{color:var(--primary);letter-spacing:.05em;text-transform:uppercase;margin-bottom:var(--space-2);font-size:1.1rem;font-weight:600}[data-theme=dark] .hero-greeting{color:var(--primary-light)}.hero-name{letter-spacing:-.03em;margin-bottom:var(--space-1);color:var(--text-primary);font-size:4rem;font-weight:800;display:inline-block}.typing-cursor{color:var(--primary);margin-left:4px;font-weight:300;animation:.5s step-end infinite blink-caret}[data-theme=dark] .typing-cursor{color:var(--primary-light)}@keyframes blink-caret{0%,to{color:#0000}50%{color:inherit}}.hero-title{margin-bottom:var(--space-6);background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:2.25rem;font-weight:700;display:inline-block}.hero-description{color:var(--text-secondary);max-width:600px;margin-bottom:var(--space-8);font-size:1.15rem;line-height:1.7}.hero-cta{gap:var(--space-4);margin-bottom:var(--space-8);display:flex}.hero-socials{gap:var(--space-6);display:flex}.hero-socials a{color:var(--text-secondary);transition:all var(--transition-fast);font-size:1.5rem}.hero-socials a:hover{color:var(--primary);transform:translateY(-3px)}[data-theme=dark] .hero-socials a:hover{color:var(--primary-light)}.hero-image-container{justify-content:center;align-items:center;display:flex;position:relative}.hero-image-wrapper{border-radius:var(--radius-xl);justify-content:center;align-items:center;width:320px;height:320px;display:flex;position:relative}.hero-image-background{background:var(--accent-gradient);border-radius:var(--radius-xl);z-index:1;opacity:.15;filter:blur(8px);width:calc(100% + 20px);height:calc(100% + 20px);animation:8s ease-in-out infinite alternate blob-bounce;position:absolute;top:-10px;left:-10px}[data-theme=dark] .hero-image-background{opacity:.3;filter:blur(12px)}.hero-profile-img{object-fit:cover;border-radius:var(--radius-xl);z-index:2;border:4px solid var(--surface);width:100%;height:100%;box-shadow:var(--shadow-lg);background-color:var(--surface)}@keyframes blob-bounce{0%{border-radius:var(--radius-xl);transform:translate(0)scale(1)}33%{border-radius:40% 60% 70% 30%/40% 50% 60%;transform:translate(5px,-10px)scale(1.02)}66%{border-radius:60% 40% 30% 70%/50% 30% 70% 50%;transform:translate(-10px,5px)scale(.98)}to{border-radius:var(--radius-xl);transform:translate(0)scale(1)}}@media (width<=1024px){.hero-name{font-size:3.25rem}.hero-title{font-size:1.85rem}.hero-image-wrapper{width:280px;height:280px}}@media (width<=768px){.hero-section{padding-top:calc(var(--navbar-height) + var(--space-4));min-height:auto}.hero-container{gap:var(--space-8);text-align:center;grid-template-columns:1fr}.hero-content{order:2;align-items:center}.hero-image-container{margin-bottom:var(--space-4);order:1}.hero-description{margin-bottom:var(--space-6)}.hero-cta{justify-content:center}.hero-image-wrapper{width:240px;height:240px}}.section-title-container{text-align:center;margin-bottom:var(--space-12);flex-direction:column;align-items:center;display:flex}.section-title{margin-bottom:var(--space-3);letter-spacing:-.025em;background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:2.25rem;font-weight:700}.section-title-line{background:var(--accent-gradient);border-radius:var(--radius-full);width:60px;height:4px;margin-bottom:var(--space-4)}.section-subtitle{color:var(--text-secondary);max-width:600px;font-size:1.1rem;line-height:1.5}@media (width<=768px){.section-title{font-size:1.85rem}}.about-section{background-color:var(--surface);position:relative;overflow:hidden}.about-content{gap:var(--space-12);margin-top:var(--space-8);grid-template-columns:1.1fr .9fr;align-items:center;display:grid}.about-text h3{margin-bottom:var(--space-4);color:var(--text-primary);font-size:1.75rem}.about-text p{color:var(--text-secondary);margin-bottom:var(--space-4);font-size:1.05rem;line-height:1.7}.about-text p strong{color:var(--primary)}[data-theme=dark] .about-text p strong{color:var(--primary-light)}.about-pillars{gap:var(--space-4);margin-top:var(--space-6);grid-template-columns:1fr 1fr;display:grid}.pillar-card{background-color:var(--bg);border:1px solid var(--border);padding:var(--space-4);border-radius:var(--radius-md);gap:var(--space-3);transition:transform var(--transition-normal), border-color var(--transition-normal), box-shadow var(--transition-normal);display:flex}.pillar-card:hover{border-color:var(--primary-light);box-shadow:var(--shadow-md);transform:translateY(-2px)}.pillar-icon{color:var(--primary);padding:var(--space-2);background:#6c3ce114;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:1.2rem;display:flex}[data-theme=dark] .pillar-icon{color:var(--primary-light);background:#8b5cf626}.pillar-info h4{color:var(--text-primary);margin-bottom:var(--space-1);font-size:.95rem;font-weight:600}.pillar-info p{color:var(--text-secondary);margin-bottom:0;font-size:.8rem;line-height:1.4}.about-code-container{justify-content:center;align-items:center;width:100%;display:flex;position:relative}.about-code-container:before{content:"";filter:blur(40px);z-index:0;pointer-events:none;background:radial-gradient(circle,#6c3ce126 0%,#3b82f60d 50%,#0000 100%);width:80%;height:80%;position:absolute}.code-window{border-radius:var(--radius-lg);z-index:1;width:100%;max-width:480px;font-family:var(--font-mono);background-color:#110d1a;border:1px solid #ffffff14;overflow:hidden;box-shadow:0 20px 40px #00000059}[data-theme=dark] .code-window{box-shadow:var(--shadow-accent);border-color:#8b5cf626}.window-header{padding:var(--space-3) var(--space-4);background-color:#0d0a14;border-bottom:1px solid #ffffff0d;align-items:center;display:flex}.window-dots{gap:6px;display:flex;position:absolute}.dot{border-radius:50%;width:10px;height:10px;display:inline-block}.dot.red{background-color:#ff5f56}.dot.yellow{background-color:#ffbd2e}.dot.green{background-color:#27c93f}.window-title{color:#64748b;letter-spacing:.5px;margin:0 auto;font-size:.75rem;font-weight:500}.code-body{padding:var(--space-4);display:flex;overflow-x:auto}.line-numbers{margin-right:var(--space-4);color:#ffffff26;-webkit-user-select:none;user-select:none;flex-direction:column;align-items:flex-end;font-size:.8rem;line-height:1.6;display:flex}.code-text{color:#a9b2c3;white-space:pre;margin:0;font-size:.8rem;line-height:1.6}.code-text .keyword{color:#ff79c6;font-weight:700}.code-text .string{color:#50fa7b}.code-text .type{color:#8be9fd}.code-text .comment{color:#6272a4;font-style:italic}@media (width<=1024px){.about-content{gap:var(--space-8);grid-template-columns:1fr}.about-code-container{max-width:500px;margin:0 auto}}@media (width<=640px){.about-pillars{gap:var(--space-3);grid-template-columns:1fr}}.skills-section{background-color:var(--bg)}.skills-grid{gap:var(--space-8);margin-top:var(--space-8);grid-template-columns:repeat(3,1fr);display:grid}.skills-card{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6);transition:all var(--transition-normal);flex-direction:column;display:flex}.skills-card:hover{border-color:var(--primary-light);box-shadow:0 0 20px #6c3ce140,0 15px 35px -5px #6c3ce126;transform:translateY(-8px)scale(1.02)!important}[data-theme=dark] .skills-card:hover{box-shadow:0 0 30px #8b5cf673,0 15px 40px -5px #8b5cf64d}.skills-card-header{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.category-icon{border-radius:var(--radius-md);background-color:var(--bg);border:1px solid var(--border);width:40px;height:40px;color:var(--primary);transition:all var(--transition-normal);justify-content:center;align-items:center;font-size:1.2rem;display:flex}[data-theme=dark] .category-icon{color:var(--primary-light)}.skills-card:hover .category-icon{background:var(--accent-gradient);color:#fff;border-color:#0000;transform:translateY(-2px)scale(1.08)rotate(5deg)}.skills-card-header h3{color:var(--text-primary);font-size:1.25rem;font-weight:700}.category-desc{color:var(--text-secondary);margin-bottom:var(--space-6);flex-grow:1;font-size:.9rem;line-height:1.5}.skills-list{gap:var(--space-2);flex-wrap:wrap;display:flex}.skill-chip{align-items:center;gap:var(--space-2);background-color:var(--bg);border:1px solid var(--border);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--text-primary);transition:all var(--transition-fast);font-size:.85rem;font-weight:500;display:flex}.skill-chip:hover{background-color:var(--border);border-color:var(--primary-light);transform:translateY(-3px)}.skill-tech-icon{font-size:1.05rem}@media (width<=1024px){.skills-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.skills-grid{gap:var(--space-6);grid-template-columns:1fr}}.experience-section{background-color:var(--surface);position:relative}.timeline-wrapper{max-width:1000px;margin:var(--space-12) auto 0;padding:var(--space-4) 0;position:relative}.timeline-line{background:var(--border);z-index:1;width:3px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.timeline-item{margin-bottom:var(--space-12);justify-content:flex-end;width:100%;display:flex;position:relative}.timeline-item.left{justify-content:flex-start}.timeline-dot-wrapper{z-index:2;background-color:var(--surface);padding:4px;position:absolute;top:24px;left:50%;transform:translate(-50%)}.timeline-dot{border-radius:var(--radius-full);background:var(--accent-gradient);width:16px;height:16px;box-shadow:0 0 10px #6c3ce180}.timeline-card{background-color:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);width:45%;padding:var(--space-6);box-shadow:var(--shadow-sm);transition:all var(--transition-normal);z-index:3}.timeline-card:hover{border-color:var(--primary-light);box-shadow:var(--shadow-md);transform:translateY(-5px)}.timeline-period{color:var(--primary);background-color:var(--accent-bg);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);margin-bottom:var(--space-3);font-size:.85rem;font-weight:600;display:inline-block}[data-theme=dark] .timeline-period{color:var(--primary-light)}.timeline-role{margin-bottom:var(--space-1);font-size:1.35rem;font-weight:700}.timeline-company{color:var(--text-secondary);margin-bottom:var(--space-4);font-size:1rem;font-weight:500}.timeline-description{margin-bottom:var(--space-6);padding:0;list-style:none}.timeline-description li{padding-left:var(--space-4);color:var(--text-secondary);margin-bottom:var(--space-2);font-size:.95rem;line-height:1.6;position:relative}.timeline-description li:before{content:"•";color:var(--primary);font-weight:700;position:absolute;left:0}[data-theme=dark] .timeline-description li:before{color:var(--primary-light)}.timeline-tech-stack{gap:var(--space-2);flex-wrap:wrap;display:flex}.timeline-tech-badge{background-color:var(--surface);border:1px solid var(--border);color:var(--text-secondary);padding:var(--space-1) var(--space-3);border-radius:var(--radius-md);font-size:.8rem;font-weight:600}@media (width<=768px){.timeline-line{left:20px}.timeline-item{margin-bottom:var(--space-8);justify-content:flex-start;padding-left:45px}.timeline-item.left{justify-content:flex-start}.timeline-dot-wrapper{left:20px}.timeline-card{width:100%}}.projects-section{background-color:var(--bg)}.projects-grid{gap:var(--space-8);margin-top:var(--space-8);padding:var(--space-2) var(--space-2) var(--space-6) var(--space-2);scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch;display:flex;overflow-x:auto}.projects-grid::-webkit-scrollbar{display:none}.projects-carousel-wrapper{width:100%;position:relative}.carousel-nav-btn{border-radius:var(--radius-full);background-color:var(--surface);border:1px solid var(--border);width:50px;height:50px;color:var(--text-primary);cursor:pointer;z-index:10;box-shadow:var(--shadow-md);transition:all var(--transition-normal);justify-content:center;align-items:center;font-size:1.1rem;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.carousel-nav-btn:hover{background-color:var(--primary);color:#fff;border-color:var(--primary);transform:translateY(-50%)scale(1.1);box-shadow:0 0 15px #6c3ce166}.carousel-nav-btn.prev{left:-25px}.carousel-nav-btn.next{right:-25px}@media (width<=1024px){.carousel-nav-btn{display:none}}.project-card{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);max-width:85vw;height:auto;min-height:480px;transition:all var(--transition-normal);flex-direction:column;flex:0 0 380px;display:flex;overflow:hidden}.project-card:hover{border-color:var(--primary-light);box-shadow:0 0 20px #6c3ce140,0 15px 35px -5px #6c3ce126;transform:translateY(-8px)scale(1.01)!important}[data-theme=dark] .project-card:hover{box-shadow:0 0 30px #8b5cf673,0 15px 40px -5px #8b5cf64d}.project-image-wrapper{background-color:var(--bg);border-bottom:1px solid var(--border);width:100%;height:200px;position:relative;overflow:hidden}.project-image{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-slow)}.project-card:hover .project-image{transform:scale(1.08)}.project-overlay{-webkit-backdrop-filter:blur(4px);opacity:0;width:100%;height:100%;transition:opacity var(--transition-normal);background:#6c3ce166;justify-content:center;align-items:center;display:flex;position:absolute;top:0;left:0}.project-card:hover .project-overlay{opacity:1}.project-links{gap:var(--space-4);display:flex}.project-links a{border-radius:var(--radius-full);background-color:var(--surface);width:50px;height:50px;color:var(--text-primary);box-shadow:var(--shadow-md);transition:all var(--transition-fast);justify-content:center;align-items:center;font-size:1.5rem;display:flex}.project-links a:hover{background-color:var(--primary);color:#fff;transform:scale(1.1)}.project-info{padding:var(--space-6);flex-direction:column;flex-grow:1;display:flex}.project-title{margin-bottom:var(--space-2);color:var(--text-primary);font-size:1.25rem;font-weight:700}.project-desc{color:var(--text-secondary);margin-bottom:var(--space-6);flex-grow:1;font-size:.92rem;line-height:1.6}.project-tech-stack{gap:var(--space-2);flex-wrap:wrap;display:flex}.project-tech-badge{background-color:var(--bg);border:1px solid var(--border);color:var(--text-secondary);padding:var(--space-1) var(--space-3);border-radius:var(--radius-md);transition:all var(--transition-fast);font-size:.8rem;font-weight:600}.project-card:hover .project-tech-badge{color:var(--primary);border-color:#6c3ce14d}[data-theme=dark] .project-card:hover .project-tech-badge{color:var(--primary-light)}@media (width<=768px){.projects-grid{gap:var(--space-4);padding-bottom:var(--space-4)}.project-card{flex:0 0 300px}}.contact-section{background-color:var(--bg);position:relative;overflow:hidden}.contact-bento-grid{gap:var(--space-6);margin-top:var(--space-12);grid-template-columns:repeat(3,1fr);display:grid}.bento-card{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(10px);flex-direction:column;transition:transform .4s cubic-bezier(.16,1,.3,1),border-color .4s,box-shadow .4s;display:flex;position:relative;overflow:hidden}.bento-card:hover{transform:translateY(-5px)}.bento-card-main{justify-content:space-between;gap:var(--space-6);grid-column:span 2}.bento-badge{color:var(--primary);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.08em;background:#6c3ce114;border:1px solid #6c3ce126;align-self:flex-start;padding:.4rem .85rem;font-size:.78rem;font-weight:700}[data-theme=dark] .bento-badge{color:var(--primary-light);background:#8b5cf626;border-color:#8b5cf640}.bento-main-title{margin-top:var(--space-2);margin-bottom:var(--space-3);background:linear-gradient(135deg, var(--text-primary) 30%, var(--primary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:clamp(1.6rem,3.2vw,2.2rem);font-weight:800;line-height:1.2}[data-theme=dark] .bento-main-title{background:linear-gradient(135deg, var(--text-primary) 35%, var(--primary-light));-webkit-text-fill-color:transparent;-webkit-background-clip:text}.bento-main-desc{color:var(--text-secondary);margin-bottom:var(--space-4);max-width:95%;font-size:1rem;line-height:1.6}.bento-email-box{background-color:var(--bg);border:1px solid var(--border);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);justify-content:space-between;align-items:center;gap:var(--space-4);margin-top:auto;display:flex}.bento-email-address{font-family:var(--font-mono);color:var(--text-primary);-webkit-user-select:all;user-select:all;text-overflow:ellipsis;white-space:nowrap;font-size:.98rem;font-weight:600;overflow:hidden}.bento-email-actions{gap:var(--space-2);flex-shrink:0;display:flex}.bento-btn-copy,.bento-btn-send{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);padding:.6rem 1.1rem;font-size:.88rem;font-weight:600;display:flex}.bento-btn-copy{background:var(--surface);border:1px solid var(--border);color:var(--text-primary)}.bento-btn-copy:hover{background:var(--bg);border-color:var(--text-secondary)}.bento-btn-copy.copied{color:#16a34a;background:#22c55e14;border-color:#22c55e59}[data-theme=dark] .bento-btn-copy.copied{color:#4ade80;background:#4ade801f;border-color:#4ade8059}.bento-btn-send{background:var(--accent-gradient);color:#fff;border:none}.bento-btn-send:hover{transform:translateY(-1px);box-shadow:0 4px 12px #6c3ce140}[data-theme=dark] .bento-btn-send:hover{box-shadow:0 4px 12px #8b5cf659}.bento-btn-copy .copy-icon,.bento-btn-send svg{font-size:.95rem}.bento-card-status{justify-content:space-between;gap:var(--space-4);grid-column:span 1}.status-header{align-items:center;gap:var(--space-3);display:flex}.status-indicator{justify-content:center;align-items:center;width:10px;height:10px;display:flex;position:relative}.status-dot{background-color:#22c55e;border-radius:50%;width:8px;height:8px;position:absolute}.status-pulse-ring{opacity:0;border:2px solid #22c55e;border-radius:50%;width:18px;height:18px;animation:2s cubic-bezier(.24,0,.38,1) infinite status-pulse;position:absolute}@keyframes status-pulse{0%{opacity:0;transform:scale(.5)}50%{opacity:.5}to{opacity:0;transform:scale(1.4)}}.status-text{color:#16a34a;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:700}[data-theme=dark] .status-text{color:#4ade80}.status-title{color:var(--text-primary);margin-bottom:var(--space-1);font-size:1.3rem;font-weight:800}.status-desc{color:var(--text-secondary);font-size:.95rem;line-height:1.5}.status-footer{align-items:center;gap:var(--space-2);color:var(--text-secondary);border-top:1px solid var(--border);padding-top:var(--space-4);margin-top:auto;font-size:.9rem;display:flex}.status-footer svg{color:var(--primary)}[data-theme=dark] .status-footer svg{color:var(--primary-light)}.bento-card-social{padding:var(--space-6);color:inherit;cursor:pointer;flex-direction:row;grid-column:span 1;justify-content:space-between;align-items:center;text-decoration:none}.social-left{align-items:center;gap:var(--space-4);display:flex}.social-icon-wrapper{border-radius:var(--radius-md);justify-content:center;align-items:center;width:48px;height:48px;font-size:1.3rem;transition:transform .3s cubic-bezier(.175,.885,.32,1.275);display:flex}.bento-card-social:hover .social-icon-wrapper{transform:scale(1.1)rotate(-3deg)}.social-title{color:var(--text-primary);margin:0;font-size:1.1rem;font-weight:700}.social-desc{color:var(--text-secondary);margin:2px 0 0;font-size:.82rem}.social-desc.font-lowercase{text-transform:none}.social-arrow{color:var(--text-secondary);opacity:.6;align-items:center;font-size:.9rem;transition:transform .3s,color .3s;display:flex}.bento-card-social:hover .social-arrow{opacity:1;color:var(--text-primary)}.bento-linkedin .social-icon-wrapper{color:#0a66c2;background:#0a66c214}.bento-linkedin:hover{border-color:#0a66c24d;box-shadow:0 10px 30px -10px #0a66c226}.bento-github .social-icon-wrapper{color:var(--text-primary);background:#24292e14}.bento-github:hover{border-color:#6c3ce140;box-shadow:0 10px 30px -10px #6c3ce11f}.bento-resume .social-icon-wrapper{color:#10b981;background:#10b98114}.bento-resume:hover{border-color:#10b9814d;box-shadow:0 10px 30px -10px #10b98126}.bento-linkedin:hover .social-arrow,.bento-github:hover .social-arrow{transform:translate(2px,-2px)}.bento-resume:hover .social-arrow{transform:translateY(2px)}.bento-card-glow{filter:blur(40px);opacity:.04;pointer-events:none;border-radius:50%;width:140px;height:140px;transition:opacity .4s;position:absolute;top:-45px;right:-45px}.bento-glow-primary{background:var(--primary)}.bento-glow-status{background:#22c55e}.social-glow{filter:blur(30px);opacity:0;pointer-events:none;border-radius:50%;width:80px;height:80px;transition:opacity .4s;position:absolute;bottom:-20px;left:-20px}.bento-linkedin .social-glow{background:#0a66c2}.bento-github .social-glow{background:var(--primary)}.bento-resume .social-glow{background:#10b981}.bento-card:hover .social-glow,.bento-card:hover .bento-card-glow{opacity:.12}[data-theme=dark] .bento-card-main:hover{border-color:#8b5cf64d;box-shadow:0 10px 30px -5px #8b5cf633}[data-theme=dark] .bento-card-status:hover{border-color:#22c55e4d;box-shadow:0 10px 30px -5px #22c55e33}[data-theme=dark] .bento-linkedin:hover{border-color:#0a66c266;box-shadow:0 10px 30px -5px #0a66c240}[data-theme=dark] .bento-github .social-icon-wrapper{color:#fff;background:#ffffff14}[data-theme=dark] .bento-github:hover{border-color:#8b5cf64d;box-shadow:0 10px 30px -5px #8b5cf633}[data-theme=dark] .bento-resume:hover{border-color:#10b98166;box-shadow:0 10px 30px -5px #10b98140}[data-theme=dark] .bento-card:hover .social-glow,[data-theme=dark] .bento-card:hover .bento-card-glow{opacity:.2}@media (width<=1024px){.contact-bento-grid{grid-template-columns:repeat(2,1fr)}.bento-card-main{grid-column:span 2}.bento-card-status,.bento-card-social{grid-column:span 1}}@media (width<=768px){.contact-bento-grid{gap:var(--space-4);grid-template-columns:1fr}.bento-card-main,.bento-card-status,.bento-card-social{grid-column:span 1!important}.bento-card{padding:var(--space-6)}.bento-email-box{align-items:stretch;gap:var(--space-3);padding:var(--space-4);flex-direction:column}.bento-email-address{text-align:center;font-size:.9rem}.bento-email-actions{gap:var(--space-2);flex-direction:column}.bento-btn-copy,.bento-btn-send{width:100%}}.footer{background-color:var(--bg);border-top:1px solid var(--border);padding:var(--space-12) 0 var(--space-8)}.footer-top{align-items:center;gap:var(--space-6);text-align:center;flex-direction:column;display:flex}.footer-logo{letter-spacing:-.05em;color:var(--text-primary);cursor:pointer;font-size:1.5rem;font-weight:800}.footer-logo span{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.footer-links{justify-content:center;gap:var(--space-6);flex-wrap:wrap;display:flex}.footer-link{color:var(--text-secondary);cursor:pointer;transition:color var(--transition-fast);font-size:.95rem;font-weight:500}.footer-link:hover{color:var(--primary)}.footer-socials{gap:var(--space-6);display:flex}.footer-socials a{color:var(--text-secondary);transition:all var(--transition-fast);font-size:1.25rem}.footer-socials a:hover{color:var(--primary);transform:translateY(-2px)}.footer-divider{background-color:var(--border);width:100%;height:1px;margin:var(--space-8) 0 var(--space-6)}.footer-bottom{color:var(--text-secondary);justify-content:space-between;align-items:center;font-size:.85rem;display:flex}.built-with{align-items:center;gap:4px;display:flex}.heart{color:#ef4444;animation:1.5s ease-in-out infinite alternate heartbeat;display:inline-block}@keyframes heartbeat{0%{transform:scale(1)}to{transform:scale(1.15)}}@media (width<=768px){.footer-bottom{gap:var(--space-2);text-align:center;flex-direction:column}}.app-shell{flex-direction:column;width:100%;min-height:100vh;display:flex}.main-content{flex-grow:1}section{scroll-margin-top:var(--navbar-height)}
