.PwaInstallBanner_banner__izN6J{position:fixed;left:0;right:0;bottom:0;z-index:500;display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);padding-bottom:calc(var(--spacing-sm) + env(safe-area-inset-bottom, 0px));background:var(--surface);border-top:1px solid var(--border);color:var(--text);font-family:var(--font);font-size:var(--font-size-small);font-weight:500;line-height:1.4}.PwaInstallBanner_text__JDh7a{flex:0 1 auto;min-width:0;color:var(--text)}.PwaInstallBanner_actions__aLTzf{display:flex;align-items:center;gap:var(--spacing-sm);flex-shrink:0}.PwaInstallBanner_installButton__yx7oT,.PwaInstallBanner_laterButton__BhZNa{display:inline-flex;align-items:center;justify-content:center;height:var(--button-height);padding:0 var(--spacing-md);border:1px solid transparent;border-radius:var(--radius-md);font-family:inherit;font-size:inherit;font-weight:600;line-height:1;cursor:pointer;transition:background var(--duration-fast) var(--ease-out-quart),color var(--duration-fast) var(--ease-out-quart)}.PwaInstallBanner_installButton__yx7oT{background:var(--accent);color:var(--bg)}.PwaInstallBanner_installButton__yx7oT:hover:not(:disabled){background:var(--accent-dark)}.PwaInstallBanner_laterButton__BhZNa{background:transparent;border-color:var(--border);color:var(--text)}.PwaInstallBanner_laterButton__BhZNa:hover:not(:disabled){background:var(--surface-raised)}.PwaInstallBanner_installButton__yx7oT:disabled,.PwaInstallBanner_laterButton__BhZNa:disabled{opacity:.6;cursor:not-allowed}@media (max-width:480px){.PwaInstallBanner_banner__izN6J{flex-direction:column;gap:var(--spacing-sm);text-align:center}.PwaInstallBanner_actions__aLTzf{width:100%;justify-content:center}}.PwaUpdateProvider_banner__VlEec{position:fixed;left:0;right:0;bottom:0;z-index:500;display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);padding-bottom:calc(var(--spacing-sm) + env(safe-area-inset-bottom, 0px));background:var(--surface);border-top:1px solid var(--border);color:var(--text);font-family:var(--font);font-size:var(--font-size-small);font-weight:500;line-height:1.4}.PwaUpdateProvider_text__NsGvE{flex:0 1 auto;min-width:0;color:var(--text)}.PwaUpdateProvider_actions__38HpZ{display:flex;align-items:center;gap:var(--spacing-sm);flex-shrink:0}.PwaUpdateProvider_laterButton__eVJuF,.PwaUpdateProvider_updateButton___1hjR{display:inline-flex;align-items:center;justify-content:center;height:var(--button-height);padding:0 var(--spacing-md);border:1px solid transparent;border-radius:var(--radius-md);font-family:inherit;font-size:inherit;font-weight:600;line-height:1;cursor:pointer;transition:background var(--duration-fast) var(--ease-out-quart),color var(--duration-fast) var(--ease-out-quart)}.PwaUpdateProvider_updateButton___1hjR{background:var(--accent);color:var(--bg)}.PwaUpdateProvider_updateButton___1hjR:hover:not(:disabled){background:var(--accent-dark)}.PwaUpdateProvider_laterButton__eVJuF{background:transparent;border-color:var(--border);color:var(--text)}.PwaUpdateProvider_laterButton__eVJuF:hover:not(:disabled){background:var(--surface-raised)}.PwaUpdateProvider_laterButton__eVJuF:disabled,.PwaUpdateProvider_updateButton___1hjR:disabled{opacity:.6;cursor:not-allowed}@media (max-width:480px){.PwaUpdateProvider_banner__VlEec{flex-direction:column;gap:var(--spacing-sm);text-align:center}.PwaUpdateProvider_actions__38HpZ{width:100%;justify-content:center}}