.app-footer{background:linear-gradient(135deg,var(--bg-tertiary),var(--bg-secondary));color:var(--text-primary);margin-top:var(--space-20);padding:0;position:relative;overflow:hidden}.footer-waves{width:100%;height:80px;margin-bottom:var(--space-8);position:relative}.wave{background-size:1000px 100px;width:100%;height:100px;position:absolute;bottom:0;left:0}.wave1{z-index:3;opacity:.5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cpath fill='%23e600ff' d='M0,0V46.29c47.79,22.2,103.59,32.17,158,28,70.36-5.37,136.33-33.31,206.8-37.5C438.64,32.43,512.34,53.67,583,72.05c69.27,18,138.3,24.88,209.4,13.08,36.15-6,69.85-17.84,104.45-29.34C989.49,25,1113-14.29,1200,52.47V0Z' opacity='.25'%3E%3C/path%3E%3C/svg%3E");animation:30s linear infinite animate;bottom:0}.wave2{z-index:2;opacity:.3;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cpath fill='%23e600ff' d='M0,0V46.29c47.79,22.2,103.59,32.17,158,28,70.36-5.37,136.33-33.31,206.8-37.5C438.64,32.43,512.34,53.67,583,72.05c69.27,18,138.3,24.88,209.4,13.08,36.15-6,69.85-17.84,104.45-29.34C989.49,25,1113-14.29,1200,52.47V0Z' opacity='.25'%3E%3C/path%3E%3C/svg%3E");animation:15s linear -5s infinite animate2;bottom:10px}.wave3{z-index:1;opacity:.2;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cpath fill='%23e600ff' d='M0,0V46.29c47.79,22.2,103.59,32.17,158,28,70.36-5.37,136.33-33.31,206.8-37.5C438.64,32.43,512.34,53.67,583,72.05c69.27,18,138.3,24.88,209.4,13.08,36.15-6,69.85-17.84,104.45-29.34C989.49,25,1113-14.29,1200,52.47V0Z' opacity='.25'%3E%3C/path%3E%3C/svg%3E");animation:30s linear -2s infinite animate;bottom:15px}@keyframes animate{0%{background-position-x:0}to{background-position-x:1000px}}@keyframes animate2{0%{background-position-x:0}to{background-position-x:-1000px}}.footer-content{max-width:var(--container-max);padding:0 var(--space-5)var(--space-10);flex-wrap:wrap;justify-content:space-between;margin:0 auto;display:flex}.footer-section{min-width:250px;margin:0 var(--space-4)var(--space-8);flex:1}.footer-logo{margin-bottom:var(--space-4);align-items:center;display:flex}.footer-logo img{width:100px;margin-right:var(--space-3)}.footer-logo h2{font-size:var(--font-size-3xl);background:var(--gradient-primary);-webkit-text-fill-color:transparent;text-shadow:0 0 20px rgba(var(--color-primary-rgb),.3);-webkit-background-clip:text;background-clip:text;margin:0}.tagline{font-size:var(--font-size-base);margin-bottom:var(--space-5);color:var(--text-secondary)}.social-icons{gap:var(--space-4);display:flex}.social-icons a{border-radius:var(--radius-full);width:44px;height:44px;color:var(--text-primary);font-size:var(--font-size-xl);transition:all var(--transition-base)var(--ease-out-expo);border:var(--border-subtle);background:rgba(255,255,255,.08);justify-content:center;align-items:center;display:flex}.social-icons a:hover{background:var(--gradient-primary);box-shadow:var(--shadow-glow-md);border-color:transparent;transform:translateY(-4px)}.footer-section h3{font-size:var(--font-size-xl);margin-bottom:var(--space-5);padding-bottom:var(--space-3);color:var(--color-primary);font-weight:var(--font-weight-semibold);position:relative}.footer-section h3:after{content:"";background:var(--gradient-primary);width:50px;height:2px;position:absolute;bottom:0;left:0}.footer-section.links ul{margin:0;padding:0;list-style:none}.footer-section.links ul li{margin-bottom:var(--space-3)}.footer-section.links ul li a{color:var(--text-secondary);transition:all var(--transition-fast);align-items:center;gap:var(--space-2);text-decoration:none;display:flex;position:relative}.footer-section.links ul li a:hover{color:var(--color-primary);transform:translate(6px)}.footer-section.links ul li a:after{content:"";background:var(--gradient-primary);width:0;height:1px;transition:width var(--transition-base)var(--ease-out-expo);position:absolute;bottom:-2px;left:0}.footer-section.links ul li a:hover:after{width:100%}.newsletter-form{margin-top:var(--space-4);display:flex}.newsletter-form input{padding:var(--space-3)var(--space-4);border-radius:var(--radius-full)0 0 var(--radius-full);color:var(--text-primary);font-size:var(--font-size-sm);transition:background var(--transition-fast);background:rgba(255,255,255,.08);border:none;flex:1}.newsletter-form input::placeholder{color:var(--text-muted)}.newsletter-form input:focus{background:rgba(255,255,255,.12);outline:none}.newsletter-form button{padding:0 var(--space-5);border-radius:0 var(--radius-full)var(--radius-full)0;background:var(--gradient-primary);color:var(--text-primary);font-weight:var(--font-weight-bold);cursor:pointer;transition:all var(--transition-fast);border:none}.newsletter-form button:hover{box-shadow:var(--shadow-glow-md);transform:translate(2px)}.footer-bottom{padding:var(--space-5);justify-content:space-between;align-items:center;gap:var(--space-3);background:rgba(0,0,0,.3);flex-wrap:wrap;display:flex}.copyright{font-size:var(--font-size-sm);color:var(--text-muted)}.made-with-love{align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--text-muted);display:flex}.heart-icon{color:var(--color-primary);animation:1.5s ease-in-out infinite pulse}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}@media (max-width:768px){.app-footer{margin-top:var(--space-12)}.footer-content{padding:0 var(--space-4)var(--space-8);flex-direction:column}.footer-section{margin:0 0 var(--space-8);min-width:auto}.footer-bottom{text-align:center;padding:var(--space-4);flex-direction:column}.social-icons{justify-content:center}.newsletter-form{gap:var(--space-2);flex-direction:column}.newsletter-form input{border-radius:var(--radius-full)}.newsletter-form button{border-radius:var(--radius-full);padding:var(--space-3)}}@media (prefers-reduced-motion:reduce){.wave1,.wave2,.wave3,.heart-icon{animation:none}.social-icons a,.footer-section.links ul li a,.newsletter-form button{transition:none}}
