.bandeira-brasil { width: 1rem; height: 1rem; margin-right: 0.3rem; border: 1px solid rgba(200, 200, 200, 0.5); border-radius: 3px; } .footer-legal-link { color: rgba(255, 255, 255, 0.35); text-decoration: none; transition: color 0.2s; } .footer-legal-link:hover { color: #fa7785; } .pwa-banner { position: fixed; bottom: 0; left: 0; right: 0; z-index: 200; transform: translateY(100%); transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1); padding-bottom: env(safe-area-inset-bottom); } .pwa-banner--visible { transform: translateY(0); } .pwa-banner-inner { background: #1c1a17; border-top: 1px solid rgba(255, 255, 255, 0.1); box-shadow: 0 -4px 24px rgba(0, 0, 0, 0.4); padding: 0.85rem 1rem; display: flex; align-items: center; gap: 0.75rem; } .pwa-banner-icon { width: 40px; height: 40px; border-radius: 10px; flex-shrink: 0; } .pwa-banner-body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 0.15rem; } .pwa-banner-title { font-size: 0.875rem; color: #fff; font-weight: 600; } .pwa-banner-hint { font-size: 0.74rem; color: rgba(255, 255, 255, 0.45); margin: 0; line-height: 1.4; } .pwa-banner-hint i { color: rgba(255, 255, 255, 0.7); margin: 0 0.1rem; } .pwa-banner-hint strong { color: rgba(255, 255, 255, 0.65); font-weight: 600; } .pwa-banner-cta { background: #fa7785; color: #fff; border: none; border-radius: 8px; padding: 0.5rem 1rem; font-size: 0.82rem; font-weight: 600; font-family: inherit; cursor: pointer; flex-shrink: 0; white-space: nowrap; transition: opacity 0.2s; } .pwa-banner-cta:active { opacity: 0.75; } .pwa-banner-dismiss { background: none; border: none; color: rgba(255, 255, 255, 0.25); cursor: pointer; padding: 0.4rem; font-size: 0.9rem; flex-shrink: 0; line-height: 1; transition: color 0.2s; } .pwa-banner-dismiss:hover { color: rgba(255, 255, 255, 0.55); }