import { ChangeDetectionStrategy, Component } from '@angular/core'; import { RouterLink, RouterLinkActive, RouterOutlet } from '@angular/router'; import { MatButtonModule } from '@angular/material/button'; @Component({ selector: 'app-root', standalone: true, imports: [ RouterOutlet, RouterLink, RouterLinkActive, MatButtonModule, ], template: `
`, styles: [` .app-shell { min-height: 100vh; display: flex; flex-direction: column; } .topline-inner, .header-inner, .footer-inner { width: min(100%, var(--azionelab-shell-width)); margin: 0 auto; } .site-header { position: sticky; top: 0; z-index: 20; background: var(--azionelab-surface); border-bottom: 1px solid var(--azionelab-border); } .header-inner { display: flex; justify-content: space-between; align-items: center; gap: 20px; min-height: 72px; padding: 0 24px; } .brand { display: inline-flex; align-items: center; justify-content: flex-start; flex: 0 0 auto; background: transparent; box-shadow: none; filter: none; opacity: 1; mix-blend-mode: normal; backdrop-filter: none; -webkit-backdrop-filter: none; color: inherit; text-decoration: none; } .brand-logo { width: 164px; height: auto; max-height: 44px; display: block; background: transparent; box-shadow: none; filter: none; opacity: 1; mix-blend-mode: normal; mask: none; -webkit-mask: none; } .main-nav { display: flex; align-items: center; justify-content: flex-end; gap: 4px; flex-wrap: wrap; } .main-nav .active { color: var(--azionelab-accent-strong); } .page-shell { flex: 1; padding: 40px 0 88px; } .site-footer { border-top: 1px solid var(--azionelab-border); background: var(--azionelab-bg-strong); } .footer-inner { display: grid; grid-template-columns: minmax(0, 1.5fr) auto; gap: 20px; align-items: start; padding: 32px 24px 36px; } .footer-title { margin: 0 0 8px; font-family: var(--azionelab-serif); font-size: 1.25rem; font-weight: 600; color: var(--azionelab-ink); } .footer-copy { margin: 0 0 6px; max-width: 52ch; color: var(--azionelab-muted); line-height: 1.6; } .footer-meta { margin: 0; color: var(--azionelab-muted); line-height: 1.6; } .footer-nav { display: flex; flex-wrap: wrap; gap: 14px; justify-content: flex-end; } .footer-nav a { color: var(--azionelab-ink-soft); text-decoration: none; } @media (max-width: 800px) { .header-inner { flex-direction: column; align-items: flex-start; min-height: auto; padding: 14px 16px; gap: 14px; } .main-nav { width: 100%; justify-content: flex-start; } .brand { justify-content: flex-start; } .brand-logo { width: 150px; max-height: 40px; } .footer-inner { grid-template-columns: 1fr; padding: 28px 16px 32px; } .footer-nav { justify-content: flex-start; } } `], changeDetection: ChangeDetectionStrategy.OnPush, }) export class AppComponent {}