Spaces:
Running
Running
| class CustomFooter extends HTMLElement { | |
| connectedCallback() { | |
| this.attachShadow({ mode: 'open' }); | |
| this.shadowRoot.innerHTML = ` | |
| <style> | |
| :host { | |
| display: block; | |
| width: 100%; | |
| background-color: #111827; | |
| color: #f3f4f6; | |
| } | |
| .footer-container { | |
| max-width: 1200px; | |
| margin: 0 auto; | |
| padding: 4rem 2rem 2rem; | |
| display: grid; | |
| grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); | |
| gap: 2rem; | |
| } | |
| .footer-logo { | |
| font-size: 1.5rem; | |
| font-weight: 700; | |
| color: white; | |
| margin-bottom: 1rem; | |
| display: block; | |
| } | |
| .footer-description { | |
| color: #9ca3af; | |
| margin-bottom: 2rem; | |
| max-width: 300px; | |
| } | |
| .footer-links h3 { | |
| font-size: 1.125rem; | |
| font-weight: 600; | |
| margin-bottom: 1.5rem; | |
| } | |
| .footer-links ul { | |
| list-style: none; | |
| padding: 0; | |
| margin: 0; | |
| } | |
| .footer-links li { | |
| margin-bottom: 0.75rem; | |
| } | |
| .footer-links a { | |
| color: #9ca3af; | |
| text-decoration: none; | |
| transition: color 0.2s; | |
| } | |
| .footer-links a:hover { | |
| color: white; | |
| } | |
| .social-links { | |
| display: flex; | |
| gap: 1rem; | |
| margin-top: 1rem; | |
| } | |
| .social-link { | |
| width: 40px; | |
| height: 40px; | |
| border-radius: 50%; | |
| background-color: #1f2937; | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| transition: background-color 0.2s; | |
| } | |
| .social-link:hover { | |
| background-color: #4b5563; | |
| } | |
| .copyright { | |
| text-align: center; | |
| padding: 2rem 0; | |
| border-top: 1px solid #374151; | |
| color: #9ca3af; | |
| font-size: 0.875rem; | |
| } | |
| </style> | |
| <div class="footer-container"> | |
| <div class="footer-about"> | |
| <a href="/" class="footer-logo">AuthPortal</a> | |
| <p class="footer-description">Enterprise-grade authentication for your applications.</p> | |
| <div class="social-links"> | |
| <a href="#" class="social-link"><i data-feather="twitter"></i></a> | |
| <a href="#" class="social-link"><i data-feather="facebook"></i></a> | |
| <a href="#" class="social-link"><i data-feather="instagram"></i></a> | |
| <a href="#" class="social-link"><i data-feather="linkedin"></i></a> | |
| </div> | |
| </div> | |
| <div class="footer-links"> | |
| <h3>Product</h3> | |
| <ul> | |
| <li><a href="/features">Features</a></li> | |
| <li><a href="/pricing">Pricing</a></li> | |
| <li><a href="/api">API</a></li> | |
| <li><a href="/integrations">Integrations</a></li> | |
| </ul> | |
| </div> | |
| <div class="footer-links"> | |
| <h3>Company</h3> | |
| <ul> | |
| <li><a href="/about">About</a></li> | |
| <li><a href="/careers">Careers</a></li> | |
| <li><a href="/blog">Blog</a></li> | |
| <li><a href="/press">Press</a></li> | |
| </ul> | |
| </div> | |
| <div class="footer-links"> | |
| <h3>Resources</h3> | |
| <ul> | |
| <li><a href="/documentation">Documentation</a></li> | |
| <li><a href="/support">Support</a></li> | |
| <li><a href="/community">Community</a></li> | |
| <li><a href="/status">Status</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| <div class="copyright"> | |
| © ${new Date().getFullYear()} AuthPortal. All rights reserved. | |
| </div> | |
| <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script> | |
| `; | |
| } | |
| } | |
| customElements.define('custom-footer', CustomFooter); |