.nav{position:fixed;top:0;left:0;right:0;z-index:var(--z-fixed);padding:var(--space-4) var(--space-6);transition:all var(--transition-base)}.nav.scrolled{background:#0a0a0fcc;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.nav-container{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.logo{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--text-primary);text-decoration:none;position:relative}.logo-text{position:relative;z-index:1}.logo:before{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--primary-color);transition:width var(--transition-base)}.logo:hover:before{width:100%}.nav-links{display:flex;gap:var(--space-6);align-items:center}.nav-links.desktop{display:none}.nav-link{color:var(--text-secondary);font-size:var(--text-base);font-weight:var(--font-medium);transition:color var(--transition-base);position:relative}.nav-link:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--primary-color);transition:width var(--transition-base)}.nav-link:hover{color:var(--text-primary)}.nav-link:hover:after{width:100%}.mobile-menu-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background:transparent;border:none}.hamburger{position:relative;width:24px;height:18px;display:flex;flex-direction:column;justify-content:space-between}.hamburger span{width:100%;height:2px;background:var(--text-primary);transition:all var(--transition-base);transform-origin:center}.hamburger.open span:nth-child(1){transform:translateY(8px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.mobile-menu{overflow:hidden;background:var(--bg-secondary);border-top:1px solid var(--border-color);margin-top:var(--space-4);padding:var(--space-4) 0}.mobile-link{display:block;padding:var(--space-3) var(--space-6);color:var(--text-secondary);font-size:var(--text-lg);font-weight:var(--font-medium);transition:all var(--transition-base);border-left:3px solid transparent}.mobile-link:hover{color:var(--text-primary);background:var(--bg-tertiary);border-left-color:var(--primary-color)}@media(min-width:768px){.nav-links.desktop{display:flex}.mobile-menu-toggle{display:none}}@media(max-width:767px){.nav{padding:var(--space-3) var(--space-4)}}.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(ellipse at center,var(--bg-secondary) 0%,var(--bg-color) 100%)}.hero-scene-container{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0}.spline-scene-container{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:auto}.spline-loader{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:transparent}.spline-loader:after{content:"";width:50px;height:50px;border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.hero-content{position:relative;z-index:1;max-width:1200px;padding:var(--space-6);text-align:center}.hero-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-full);font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-6);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.badge-dot{width:8px;height:8px;background:var(--success-color);border-radius:50%;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.1)}}.hero-title{font-size:clamp(var(--text-4xl),8vw,var(--text-7xl));font-weight:var(--font-bold);line-height:var(--leading-tight);margin-bottom:var(--space-6);color:var(--text-primary)}.gradient-text{background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-hover) 50%,#a78bfa 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;position:relative;display:inline-block}.gradient-text:after{content:"";position:absolute;bottom:-4px;left:0;width:100%;height:3px;background:linear-gradient(90deg,transparent,var(--primary-color),transparent);opacity:.5}.hero-description{font-size:clamp(var(--text-base),2vw,var(--text-xl));color:var(--text-secondary);max-width:600px;margin:0 auto var(--space-8);line-height:var(--leading-relaxed)}.hero-cta{display:flex;gap:var(--space-4);justify-content:center;flex-wrap:wrap;margin-bottom:var(--space-10)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-4) var(--space-6);font-size:var(--text-base);font-weight:var(--font-medium);border-radius:var(--radius-lg);transition:all var(--transition-base);position:relative;overflow:hidden;white-space:nowrap}.btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff1a;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn:hover:before{width:300px;height:300px}.btn-primary{background:var(--primary-color);color:#fff;box-shadow:0 0 20px var(--glow-accent)}.btn-primary:hover{background:var(--primary-hover);box-shadow:0 0 30px var(--glow-primary);transform:translateY(-2px)}.btn-secondary{background:transparent;color:var(--text-primary);border:2px solid var(--border-hover)}.btn-secondary:hover{border-color:var(--primary-color);background:#6366f11a;transform:translateY(-2px)}.hero-scroll{position:absolute;bottom:var(--space-8);left:50%;transform:translate(-50%)}.scroll-indicator{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);color:var(--text-tertiary);font-size:var(--text-sm);animation:bounce 2s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.scroll-indicator svg{opacity:.6}@media(max-width:768px){.hero-content{padding:var(--space-4)}.hero-title{margin-bottom:var(--space-4)}.hero-description{margin-bottom:var(--space-6)}.hero-cta{flex-direction:column;gap:var(--space-3)}.btn{width:100%;max-width:300px}.hero-scroll{bottom:var(--space-4)}}@media(prefers-reduced-motion:reduce){.badge-dot,.scroll-indicator,.btn:before{animation:none}.btn:hover{transform:none}}.magnetic-button{position:relative;display:inline-block;cursor:none}.magnetic-button a{display:block;width:100%;height:100%;color:inherit;text-decoration:none}.tilt-card{transform-style:preserve-3d;position:relative}.tilt-card>*{transform:translateZ(20px)}.js-tilt-glare{border-radius:inherit}.about-section{min-height:100vh;padding:var(--space-16) var(--space-6);background:var(--bg-color);position:relative}.about-section:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:1px;height:100%;background:linear-gradient(to bottom,transparent,var(--border-color) 50%,transparent)}.container{max-width:1200px;margin:0 auto}.about-content{max-width:800px;margin:0 auto}.about-header{margin-bottom:var(--space-8)}.section-label{display:inline-block;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--primary-color);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-4)}.section-title{font-size:clamp(var(--text-3xl),5vw,var(--text-5xl));font-weight:var(--font-bold);line-height:var(--leading-tight);color:var(--text-primary)}.about-text{font-size:var(--text-lg);color:var(--text-secondary);line-height:var(--leading-relaxed);margin-bottom:var(--space-6)}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);margin-top:var(--space-10)}.skill-card{position:relative;padding:var(--space-5);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:var(--space-2);transition:all var(--transition-base);overflow:hidden}.skill-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,var(--primary-color),var(--primary-hover));transform:scaleX(0);transform-origin:left;transition:transform var(--transition-base)}.skill-card:hover:before{transform:scaleX(1)}.skill-card:hover{border-color:var(--border-hover);background:var(--bg-tertiary);box-shadow:var(--shadow-md)}.skill-number{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-tertiary);font-family:var(--font-mono)}.skill-name{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary)}@media(max-width:768px){.about-section{padding:var(--space-12) var(--space-4)}.skills-grid{grid-template-columns:1fr;gap:var(--space-3)}}.projects-section{min-height:100vh;padding:var(--space-16) var(--space-6);background:var(--bg-secondary)}.section-header{margin-bottom:var(--space-12);text-align:center}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--space-6);max-width:1200px;margin:0 auto}.project-card{background:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-xl);overflow:hidden;transition:all var(--transition-base);position:relative;cursor:pointer}.project-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--primary-color),var(--primary-hover));transform:scaleX(0);transform-origin:left;transition:transform var(--transition-base)}.project-card:hover:before{transform:scaleX(1)}.project-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-lg),0 0 30px var(--glow-accent)}.project-visual{aspect-ratio:16 / 9;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.project-number{font-size:var(--text-6xl);font-weight:var(--font-bold);color:#ffffff1a;font-family:var(--font-mono);position:absolute;bottom:var(--space-4);right:var(--space-4)}.project-category{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--primary-color);text-transform:uppercase;letter-spacing:1px;background:#6366f11a;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);border:1px solid rgba(99,102,241,.3);position:absolute;top:var(--space-4);left:var(--space-4)}.tag.more{background:var(--bg-color);color:var(--text-tertiary);cursor:default}.project-content{padding:var(--space-6)}.project-title{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--text-primary);margin-bottom:var(--space-3)}.project-description{font-size:var(--text-base);color:var(--text-secondary);line-height:var(--leading-relaxed);margin-bottom:var(--space-4)}.project-tags{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-5)}.tag{font-size:var(--text-sm);color:var(--text-tertiary);background:var(--bg-secondary);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);border:1px solid var(--border-color)}.project-link{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--primary-color);font-weight:var(--font-medium);transition:gap var(--transition-base)}.project-card:hover .project-link{gap:var(--space-3)}.project-link svg{transition:transform var(--transition-base)}.project-card:hover .project-link svg{transform:translate(4px)}@media(max-width:768px){.projects-section{padding:var(--space-12) var(--space-4)}.projects-grid{grid-template-columns:1fr;gap:var(--space-4)}.section-header{margin-bottom:var(--space-8)}}.smooth-tilt-card{position:relative;transform-style:preserve-3d}.tilt-glare{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:inherit;pointer-events:none;z-index:1;mix-blend-mode:overlay}.smooth-tilt-card>div{position:relative;z-index:2}.contact-section{min-height:100vh;padding:var(--space-16) var(--space-6);background:var(--bg-color);position:relative;overflow:hidden;display:flex;align-items:center}.contact-content{max-width:800px;margin:0 auto;position:relative;z-index:1}.contact-header{margin-bottom:var(--space-8);text-align:center}.contact-text{font-size:var(--text-xl);color:var(--text-secondary);line-height:var(--leading-relaxed);text-align:center;margin-bottom:var(--space-10)}.social-links{display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-12);max-width:500px;margin-left:auto;margin-right:auto}.social-link{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);color:var(--text-primary);font-size:var(--text-lg);font-weight:var(--font-medium);transition:all var(--transition-base);position:relative;overflow:hidden}.social-link:before{content:"";position:absolute;left:0;top:0;height:100%;width:3px;background:var(--primary-color);transform:scaleY(0);transition:transform var(--transition-base)}.social-link:hover:before{transform:scaleY(1)}.social-link:hover{border-color:var(--primary-color);background:var(--bg-tertiary);box-shadow:var(--shadow-md)}.link-arrow{color:var(--primary-color);font-size:var(--text-2xl);transition:transform var(--transition-base)}.social-link:hover .link-arrow{transform:translate(5px)}.link-text{flex:1}.cta-large{text-align:center}.btn-large{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-5) var(--space-8);font-size:var(--text-xl);font-weight:var(--font-semibold);color:#fff;background:linear-gradient(135deg,var(--primary-color),var(--primary-hover));border-radius:var(--radius-lg);box-shadow:0 0 30px var(--glow-accent);transition:all var(--transition-base);position:relative;overflow:hidden}.btn-large:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#fff3;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn-large:hover:before{width:400px;height:400px}.btn-large:hover{transform:translateY(-3px);box-shadow:0 0 50px var(--glow-primary)}.contact-bg{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;overflow:hidden}.gradient-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.3;animation:float 20s ease-in-out infinite}.orb-1{width:400px;height:400px;background:radial-gradient(circle,var(--primary-color),transparent);top:-200px;right:-200px}.orb-2{width:300px;height:300px;background:radial-gradient(circle,#8b5cf6,transparent);bottom:-150px;left:-150px;animation-delay:-10s}@keyframes float{0%,to{transform:translate(0)}33%{transform:translate(30px,-30px)}66%{transform:translate(-20px,20px)}}@media(max-width:768px){.contact-section{padding:var(--space-12) var(--space-4)}.contact-text{font-size:var(--text-lg)}.social-link{font-size:var(--text-base)}.btn-large{font-size:var(--text-lg);padding:var(--space-4) var(--space-6);width:100%}}@media(prefers-reduced-motion:reduce){.gradient-orb{animation:none}}.project-detail{min-height:100vh;background:var(--bg-color);padding-top:var(--space-20)}.project-detail-header{background:var(--bg-secondary);padding:var(--space-8) var(--space-6);margin-bottom:var(--space-12)}.back-button{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);background:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-lg);color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-base);margin-bottom:var(--space-8)}.back-button:hover{background:var(--bg-secondary);border-color:var(--primary-color);color:var(--primary-color);transform:translate(-4px)}.back-button svg{transition:transform var(--transition-base)}.back-button:hover svg{transform:translate(-4px)}.project-hero{display:grid;grid-template-columns:1.5fr 1fr;gap:var(--space-12);max-width:1200px;margin:0 auto;align-items:center}.project-category-badge{display:inline-block;font-size:var(--text-xs);font-weight:var(--font-bold);color:var(--primary-color);text-transform:uppercase;letter-spacing:1.5px;background:#6366f11a;padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);border:1px solid rgba(99,102,241,.3);margin-bottom:var(--space-4)}.project-hero-title{font-size:var(--text-5xl);font-weight:var(--font-bold);color:var(--text-primary);margin-bottom:var(--space-4);line-height:var(--leading-tight)}.project-hero-description{font-size:var(--text-lg);color:var(--text-secondary);line-height:var(--leading-relaxed);margin-bottom:var(--space-6)}.project-hero-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}.hero-tag{font-size:var(--text-sm);color:var(--text-tertiary);background:var(--bg-color);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);border:1px solid var(--border-color);transition:all var(--transition-fast)}.hero-tag:hover{border-color:var(--primary-color);color:var(--primary-color)}.project-hero-actions{display:flex;gap:var(--space-4);margin-top:var(--space-6)}.project-action-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:var(--font-medium);text-decoration:none;transition:all var(--transition-base);cursor:pointer}.project-action-btn.primary{background:var(--primary-color);color:#fff;border:2px solid var(--primary-color)}.project-action-btn.primary:hover{background:var(--primary-hover);border-color:var(--primary-hover);transform:translateY(-2px);box-shadow:0 10px 25px #6366f14d}.project-action-btn.secondary{background:transparent;color:var(--text-primary);border:2px solid var(--border-color)}.project-action-btn.secondary:hover{background:var(--bg-color);border-color:var(--text-primary);transform:translateY(-2px)}.project-action-btn svg{transition:transform var(--transition-fast)}.project-action-btn:hover svg{transform:scale(1.1)}.project-hero-visual{aspect-ratio:1;border-radius:var(--radius-2xl);display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);position:relative;overflow:hidden}.project-hero-number{font-size:8rem;font-weight:var(--font-bold);color:#ffffff26;font-family:var(--font-mono);-webkit-user-select:none;user-select:none}.project-detail-content{max-width:1200px;margin:0 auto;padding:0 var(--space-6) var(--space-16)}.project-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);margin-bottom:var(--space-16)}.stat-card{background:var(--bg-secondary);padding:var(--space-6);border-radius:var(--radius-xl);border:1px solid var(--border-color);text-align:center;transition:all var(--transition-base)}.stat-card:hover{border-color:var(--primary-color);transform:translateY(-4px);box-shadow:var(--shadow-lg)}.stat-label{font-size:var(--text-sm);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:1px;margin-bottom:var(--space-2)}.stat-value{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--text-primary)}.project-section{margin-bottom:var(--space-16)}.section-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text-primary);margin-bottom:var(--space-3)}.section-description{font-size:var(--text-base);color:var(--text-secondary);line-height:var(--leading-relaxed);margin-bottom:var(--space-6)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-4)}.feature-card{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-5);background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-color);transition:all var(--transition-base)}.feature-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md)}.feature-icon{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#6366f11a;border-radius:var(--radius-lg)}.feature-text{font-size:var(--text-base);color:var(--text-secondary);line-height:var(--leading-relaxed)}.prompt-section{background:var(--bg-secondary);padding:var(--space-8);border-radius:var(--radius-2xl);border:1px solid var(--border-color)}.prompt-container{background:var(--bg-color);border-radius:var(--radius-xl);border:1px solid var(--border-color);overflow:hidden}.prompt-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-6);background:#6366f10d;border-bottom:1px solid var(--border-color)}.prompt-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--primary-color);text-transform:uppercase;letter-spacing:1px}.copy-button{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-base)}.copy-button:hover{background:var(--primary-hover);transform:scale(1.05)}.copy-button:active{transform:scale(.95)}.prompt-code{padding:var(--space-6);overflow-x:auto;max-height:600px;overflow-y:auto}.prompt-code code{font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--leading-loose);color:var(--text-secondary);white-space:pre-wrap;word-break:break-word}.tech-stack-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-6)}.tech-category{background:var(--bg-secondary);padding:var(--space-6);border-radius:var(--radius-xl);border:1px solid var(--border-color)}.tech-category-title{font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--text-primary);text-transform:capitalize;margin-bottom:var(--space-4)}.tech-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}.tech-tag{font-size:var(--text-sm);color:var(--text-secondary);background:var(--bg-color);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border-color);transition:all var(--transition-fast)}.tech-tag:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}.project-navigation{display:flex;gap:var(--space-4);justify-content:center;margin-top:var(--space-16)}.nav-button{padding:var(--space-4) var(--space-8);font-size:var(--text-base);font-weight:var(--font-medium);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);border:1px solid}.nav-button.primary{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--border-color)}.nav-button.primary:hover{background:var(--bg-color);border-color:var(--primary-color);color:var(--primary-color)}.nav-button.secondary{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.nav-button.secondary:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:var(--shadow-lg),0 0 20px var(--glow-accent)}.project-detail-not-found{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-6);text-align:center}.project-detail-not-found h1{font-size:var(--text-4xl);color:var(--text-primary)}.project-detail-not-found button{padding:var(--space-4) var(--space-8);background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--text-base);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-base)}.project-detail-not-found button:hover{background:var(--primary-hover);transform:scale(1.05)}@media(max-width:968px){.project-hero{grid-template-columns:1fr;gap:var(--space-8)}.project-hero-visual{order:-1}.project-hero-title{font-size:var(--text-4xl)}.features-grid,.tech-stack-grid{grid-template-columns:1fr}.project-navigation{flex-direction:column}.nav-button{width:100%}}@media(max-width:640px){.project-detail{padding-top:var(--space-16)}.project-detail-header{padding:var(--space-6) var(--space-4);margin-bottom:var(--space-8)}.project-hero-title{font-size:var(--text-3xl)}.project-stats{grid-template-columns:repeat(2,1fr)}.project-hero-actions{flex-direction:column}.project-action-btn{justify-content:center;width:100%}.prompt-code{font-size:var(--text-xs);padding:var(--space-4)}}.cursor-dot,.cursor-outline{position:fixed;top:0;left:0;pointer-events:none;z-index:var(--z-cursor);border-radius:var(--radius-full);mix-blend-mode:screen}.cursor-dot{width:8px;height:8px;background-color:var(--primary-color);transform:translate(-50%,-50%);box-shadow:0 0 10px var(--glow-primary)}.cursor-outline{width:32px;height:32px;border:2px solid var(--primary-color);transform:translate(-50%,-50%);opacity:.5}@media(hover:none)and (pointer:coarse){.cursor-dot,.cursor-outline{display:none}body{cursor:auto!important}a,button{cursor:pointer!important}}.interactive-background{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;overflow:hidden;pointer-events:none}.gradient-orb{position:absolute;width:600px;height:600px;border-radius:50%;filter:blur(100px);opacity:.15;transform:translate(-50%,-50%);pointer-events:none}.gradient-orb.primary{background:radial-gradient(circle,var(--primary-color) 0%,transparent 70%)}.gradient-orb.secondary{background:radial-gradient(circle,#8b5cf6 0%,transparent 70%);width:400px;height:400px}.grid-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(var(--border-color) 1px,transparent 1px),linear-gradient(90deg,var(--border-color) 1px,transparent 1px);background-size:100px 100px;opacity:.03;-webkit-mask-image:radial-gradient(ellipse 80% 50% at 50% 50%,black 0%,transparent 100%);mask-image:radial-gradient(ellipse 80% 50% at 50% 50%,black 0%,transparent 100%)}@media(max-width:768px){.gradient-orb{width:300px;height:300px}.gradient-orb.secondary{width:200px;height:200px}.grid-overlay{background-size:50px 50px}}@media(prefers-reduced-motion:reduce){.gradient-orb{display:none}}.app{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-color)}.app-main{flex:1;width:100%}.loading{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-color)}.loading-spinner{width:50px;height:50px;border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.app-footer{background:var(--bg-secondary);border-top:1px solid var(--border-color);padding:var(--space-8) var(--space-6);margin-top:auto}.footer-content{max-width:1200px;margin:0 auto;text-align:center;display:flex;flex-direction:column;gap:var(--space-2)}.footer-content p{color:var(--text-tertiary);font-size:var(--text-sm)}.footer-tagline{color:var(--text-secondary);font-family:var(--font-mono)}html{scroll-padding-top:80px}.gradient-text{background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-hover) 50%,#a78bfa 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.container{max-width:1200px;margin:0 auto;padding:0 var(--space-6)}@media(max-width:768px){.app-footer{padding:var(--space-6) var(--space-4)}.container{padding:0 var(--space-4)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root{--primary-color: #6366f1;--primary-hover: #818cf8;--primary-dim: #4f46e5;--bg-color: #0a0a0f;--bg-secondary: #12121a;--bg-tertiary: #1a1a24;--bg-accent: #1f1f2e;--text-primary: #e4e4e7;--text-secondary: #a1a1aa;--text-tertiary: #71717a;--text-inverse: #0a0a0f;--neutral-100: #f4f4f5;--neutral-200: #e4e4e7;--neutral-300: #d4d4d8;--neutral-400: #a1a1aa;--neutral-500: #71717a;--neutral-600: #52525b;--neutral-700: #3f3f46;--neutral-800: #27272a;--neutral-900: #18181b;--success-color: #10b981;--success-bg: #064e3b;--error-color: #ef4444;--error-bg: #7f1d1d;--warning-color: #f59e0b;--warning-bg: #78350f;--info-color: #3b82f6;--info-bg: #1e3a8a;--border-color: #27272a;--border-hover: #3f3f46;--border-focus: #6366f1;--glow-primary: rgba(99, 102, 241, .4);--glow-accent: rgba(99, 102, 241, .2);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5);--shadow-glow: 0 0 20px var(--glow-primary);--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-mono: "SF Mono", "Monaco", "Cascadia Code", "Courier New", monospace;--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;--text-6xl: 3.75rem;--text-7xl: 4.5rem;--font-regular: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.75;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-8: 3rem;--space-10: 4rem;--space-12: 6rem;--space-16: 8rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--z-base: 0;--z-dropdown: 1000;--z-sticky: 1100;--z-fixed: 1200;--z-modal: 1300;--z-popover: 1400;--z-tooltip: 1500;--z-cursor: 9999}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{font-family:var(--font-family);color:var(--text-primary);background-color:var(--bg-color);line-height:var(--leading-normal);font-size:var(--text-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;cursor:none}code{font-family:var(--font-mono)}h1,h2,h3,h4,h5,h6{line-height:1.2;font-weight:700}img{max-width:100%;height:auto;display:block}a{color:var(--primary-color);text-decoration:none;transition:color var(--transition-base);cursor:none}a:hover{color:var(--primary-hover)}a:focus-visible{outline:2px solid var(--border-focus);outline-offset:4px;border-radius:var(--radius-sm)}button{cursor:none;font-family:inherit;border:none;background:none;color:inherit}button:focus-visible{outline:2px solid var(--border-focus);outline-offset:4px;border-radius:var(--radius-sm)}::selection{background-color:var(--primary-color);color:var(--text-inverse)}::-moz-selection{background-color:var(--primary-color);color:var(--text-inverse)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--neutral-700);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--neutral-600)}.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}
